【发布时间】:2013-09-18 11:24:28
【问题描述】:
所有,我试图调用在 c# 项目的 DLL 中定义的 API。代码如下所示。
[DllImport("twain_32.dll", EntryPoint="#1")]
<Function declaration>
我知道在这个 twain_32.dll 中定义了很多公共类型,
我知道 dll 中定义了如下函数。
TW_UINT16 FAR PASCAL DSM_Entry( pTW_IDENTITY pOrigin,
pTW_IDENTITY pDest,
TW_UINT32 DG,
TW_UINT16 DAT,
TW_UINT16 MSG,
TW_MEMREF pData);
我不知道我应该在c#中定义什么类来表示pTW_IDENTITY?是否有任何工具可以将所有这些类型定义导出到 c# 类代码。像c++中的头文件.h?谢谢。
【问题讨论】:
-
找到该库的文档和头文件,并进行翻译。你在哪里找到了那个函数原型?
-
@DavidHeffernan 我在 twain 的头文件 (c++) 中找到了它。但是我很困惑如何将引用的类型转换为 c# 代码。我原以为会有一些工具使它更容易工作。谢谢。
-
没有工具。自己翻译,或者看看你是否找不到现有的。例如 TwainDotNet。没有必要重新发明轮子。你的可能会出现方形! ;-)
-
:D 这正是我担心的!我认为重新发明汽车没有意义! :P