【发布时间】:2011-05-15 13:41:17
【问题描述】:
在一个 STATIC 类(我的助手类名为 AutoItX3Delcarations.cs)中,我已经封装了一个 dll,如下所示:
//AU3_API void WINAPI AU3_Send(LPCWSTR szSendText, /*[in,defaultvalue("")]*/long nMode);
[DllImport("AutoItX3.dll", SetLastError = true, CharSet = CharSet.Auto)]
static public extern void AU3_Send([MarshalAs(UnmanagedType.LPWStr)] string SendText, int Mode);
基本上,在静态类中创建静态方法。
现在,在我的主程序执行中,我尝试像这样执行此方法:
AutoItX3Declarations.AU3_Send("Test Text", 1);
哪个,由 MSDN 应该工作......?但事实并非如此!我试图在这里和谷歌上搜索大约一个小时,但看不出为什么这不起作用..我通过使用它的类作为位置调用该方法,然后使用 DLL 导入引入的函数。
我得到的错误是"....AU3_Send(string,int)' is a 'method' but is used like a 'type' " ...
但是我如何将它用作类型?我以为这就是您正确调用静态方法的方式?
请帮忙:(
【问题讨论】:
-
请张贴代码环绕您的方法调用。