设置/获得一个Twain能力

执行以下步骤获取或设置一个twain能力:

  1. 启动Microsoft Visual Studio。
  2. 选择文件- >新建菜单选项,然后单击项目菜单。
  3. 项目类型选择其他语言要展开它,然后选择Visual c++要展开它,然后选择MFC.从右边窗口选择MFC应用程序
  4. 项目名称对话框,输入TwainTutor3
  5. 位置对话框,使用“Examples\ClassLibrary\MSVC”目录的LEAD安装。例如,如果您在*中安装了LEADTOOLSC: \ LEADTOOLS21 *,输入C: \ LEADTOOLS21 \ \ ClassLibrary \ MSVC的例子,然后按好吧.然后单击下一个
  6. 选择基于对话框并点击完成
  7. 单击解决方案资源管理器选项卡,然后单击TwainTutor3项目来扩展它。单击文件,然后开放TwainTutor3.h。
  8. 在类之前添加下面的行CTwainTutor3App声明(请记住,您可能必须更改头文件所在的路径):

    # include"..\..\..\..\ 包括\ ClassLib \ ltwrappr.h”

  9. 单击类视图选项卡。

  10. 按此打开TwainTutor3类分支。
  11. 点击CTwainTutor3App,然后双击CTwainTutor3App(空白)构造函数。
  12. 在后面添加以下行//TODO:在这里添加构造代码

    LBase: LoadLibraries (LT_ALL_LEADLIB);L_TCHAR * pszLicenseFile = L"将此替换为LEADTOOLS许可文件的路径"L_TCHAR * pszDeveloperKey = L"将此替换为开发人员密钥"LSettings:: SetLicenseFile (pszLicenseFile pszDeveloperKey);

  13. 创建一个名为Imports.cpp把它放在你的项目文件旁边。

    1. 在项目工作区中,单击解决方案资源管理器选项卡。
    2. 双击TwainTutor3文件夹打开它。
    3. 右键单击源文件文件夹并选择添加新项目
    4. 展开Visual c++树(如果它还没有展开的话)。
    5. 选择代码从子树开始。
    6. 选择c++文件(.cpp)从右边的窗口。
    7. 在名称文本框中,指定Imports.cpp。
    8. 单击Add按钮。
    9. 文件中的imports.cpp解决方案资源管理器并添加以下几行:
      # include“StdAfx.h”如果定义(WIN64)其他的# pragma评论(自由,"..\\..\\..\\..\\ Lib \ \ CDLLVC10 \ \ Win32 \ \ Ltwvc_u.lib”# endif// #如果已定义(WIN64)
  14. 单击解决方案资源管理器选项卡。

  15. 双击TwainTutor3文件夹打开它。
  16. 双击头文件文件夹打开它。然后双击TwainTutor3Dlg.h文件打开它。
  17. 类之前添加以下类声明CTwainTutor3Dlg类。

    LMyTwain:公共LTwainLEAD_DECLAREOBJECT (LMyTwain);公共LMyTwain ();虚拟~ LMyTwain ();虚拟L_INT BitmapCallBack(pBITMAPHANDLE pBitmap);};

  18. 单击解决方案资源管理器选项卡。

  19. 双击TwainTutor3文件夹打开它。
  20. 双击源文件文件夹打开它。然后双击TwainTutor3Dlg.cpp文件打开它。
  21. 添加如下类:

    LEAD_IMPLEMENTOBJECT (LMyTwain);LMyTwain: LMyTwain ()EnableCallBack(真正的);LMyTwain:: ~ LMyTwain ()L_INT LMyTwain::BitmapCallBack(pBITMAPHANDLE pBitmap)//复制获取的位图返回成功;

  22. 单击类视图选项卡。

  23. 右键单击CTwainTutor3Dlg选择“添加”添加变量…
  24. 变量类型输入LMyTwain,以及变量声明m_MyTwain.离开访问作为公共并点击好吧
  25. 右键单击CTwainTutor3Dlg选择“添加”添加变量…
  26. 变量类型输入TW_CAPABILITY,以及变量声明m_twCap.离开访问作为公共并点击好吧
  27. 右键单击CTwainTutor3Dlg选择“添加”添加变量…
  28. 变量类型输入L_UINT,以及变量声明m_uItemValue.离开访问作为公共并点击好吧
  29. 单击打开CTwainTutor3Dlg分支。双击OnInitDialog ()函数并在该行后添加以下代码:

// TODO:添加额外的初始化

APPLICATIONDATA AppData;memset (appdata 0运算符(APPLICATIONDATA));AppData。hWnd = m_hWnd;AppData。uStructSize =运算符(AppData);lstrcpy (AppData。szManufacturerName _T (领德科技有限公司));lstrcpy (AppData。szAppProductFamily _T (“铅测试应用”));lstrcpy (AppData。szVersionInfo _T (“1.0版本”));lstrcpy (AppData。szAppName _T (“TWAIN测试申请”));m_MyTwain.InitSession (appdata);

  1. 右键单击CTwainTutor3Dlg分支,然后选择属性
  2. 属性窗口工具栏,单击消息图标。然后单击项目旁边的空白区域WM_DESTROY并选择OnDestroy
  3. 在开始括号后添加以下代码

    m_MyTwain.EndSession ();LBase: UnloadLibraries (LT_ALL_LEADLIB);

  4. 单击解决方案资源管理器选项卡。

  5. 双击TwainTutor3文件夹打开它。
  6. 双击资源文件文件夹打开它。然后双击“TwainTutor3”。rc”文件打开它,然后双击“对话框”,然后双击IDD_TWAINTUTOR3_DIALOG
  7. 现在拖放5个按钮,改变它们的属性如下:

    控制类型 ID 标题
    Button1 IDC_SELECT_SRC 选择源
    Button2 IDC_ACQUIRE 收购
    Button3 IDC_GET_CAPABILITY 获得能力
    Button4 IDC_SET_CAPABILITY 设置功能
    Button5 IDC_SET_BRIGHTNESS 设置亮度
  8. 视图菜单,选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR3_DIALOG

  9. 双击选择源按钮,并添加以下代码:

    m_MyTwain.SelectSource(空);

  10. 视图菜单,选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR3_DIALOG

  11. 双击收购按钮,并添加以下代码:

    BITMAPHANDLE Bitamp;m_MyTwain。收购(&Bitamp,运算符(bitmaphandle), ltwain_show_user_interface, null);

  12. 视图菜单,选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR3_DIALOG

  13. 双击获得能力按钮,并添加以下代码:

    L_INT nItemType;m_twCap。Cap = ICAP_XFERMECH;m_twCap。ConType = TWON_DONTCARE16;m_twCap。hContainer = NULL;m_MyTwain。GetCapability (&m_twCap LTWAIN_CAPABILITY_GETCURRENT);m_MyTwain。GetNumericContainerItemType (&m_twCap &nItemType);如果(nItemType == TWTY_UINT16)m_MyTwain。GetNumericContainerUINTValue(&m_twCap, 0, &m_uItemValue);其他的AfxMessageBox(文本(“返回的错误项目类型”));

  14. 视图菜单,选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR3_DIALOG

  15. 双击设置功能按钮,并添加以下代码:

    如果(m_uItemValue != TWSX_NATIVE)TW_CAPABILITY twSetCap;twSetCap。Cap = ICAP_XFERMECH;twSetCap。ConType = TWON_ONEVALUE;m_MyTwain。CreateNumericContainerOneValue(&twSetCap, TWAINNUMERICTYPE_TW_UINT16, TWSX_NATIVE);m_MyTwain。SetCapability (&twSetCap LTWAIN_CAPABILITY_SET);m_MyTwain.FreeContainer (&twSetCap);其他的AfxMessageBox(文本(“传输模式为本机”));

  16. 视图菜单,选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR3_DIALOG

  17. 双击设置亮度按钮,并添加以下代码:

    TW_CAPABILITY twBrightnessCap;TW_FIX32 twFix32;pTW_ONEVALUE ptwOneVal;twBrightnessCap。Cap = icap_亮度;twBrightnessCap。ConType = TWON_ONEVALUE;L_INT nRet = m_MyTwain。GetCapability (&twBrightnessCap LTWAIN_CAPABILITY_GETCURRENT);如果(nRet == SUCCESS)ptwOneVal = (pTW_ONEVALUE)GlobalLock(m_twCap.hContainer);memcpy (&twFix32, (无效*) &ptwOneVal - >项目,运算符(TW_FIX32));GlobalUnlock (twBrightnessCap.hContainer);GlobalFree (twBrightnessCap.hContainer);twBrightnessCap。hContainer = NULL;如果(twFix32。整个!= 128)twFix32。整体= 128;twFix32。Frac = 0;twBrightnessCap。Cap = icap_亮度;twBrightnessCap。ConType = TWON_ONEVALUE;twBrightnessCap。hContainer = GlobalAlloc(GHND,运算符(TW_ONEVALUE) +运算符(TW_FIX32));ptwOneVal = (pTW_ONEVALUE)GlobalLock(m_twCap.hContainer);ptwOneVal->ItemType = TWTY_FIX32;memcpy ((无效*) &ptwOneVal - >项目,&twFix32,运算符(TW_FIX32));GlobalUnlock (twBrightnessCap.hContainer);m_MyTwain。SetCapability (&twBrightnessCap LTWAIN_CAPABILITY_SET);

  18. 编译和测试程序。

LEADTOOLS TWAIN c++类库帮助
188金宝搏的网址客服|支持|联系我们|知识产权公告
©1991 - 2021领德科技有限公司版权所有。