如何直接调用从DLL导出的本机函数?有人能给我一个小例子吗?如何直接调用从DLL导出的本机函数?
-1
A
回答
1
这里是在行动DllImport
属性的一个简单的例子:
using System.Runtime.InteropServices;
class C
{
[DllImport("user32.dll")]
public static extern int MessageBoxA(int h, string m, string c, int type);
public static int Main()
{
return MessageBoxA(0, "Hello World!", "Caption", 0);
}
}
此示例显示声明在本机中实现的C#方法的最低要求e DLL。方法C.MessageBoxA()
使用静态和外部修饰符声明,并具有DllImport
属性,该属性告知编译器该实现来自user32.dll,使用默认名称MessageBoxA。
2
class PlatformInvokeTest
{
[DllImport("msvcrt.dll")]
public static extern int puts(string c);
[DllImport("msvcrt.dll")]
internal static extern int _flushall();
public static void Main()
{
puts("Test");
_flushall();
}
}
如果您需要从本地DLL生成C#的DllImport声明,看这个帖子:Generate C# DLLImport declarations from a native dll
2
取决于你想要什么......我在我的代码是这样的,但这使用Win32 API的DLL
[DllImport("user32.dll")]
static extern IntPtr GetForegroundWindow();
然后就叫
GetForegroundWindow()
好像在类里定义的一样
相关问题
- 1. 如何直接从CodeSmith生成服务DLL调用SQL函数
- 2. 如何导出dll函数?
- 3. 从.net DLL导出本地C函数?
- 4. 如何从vb6调用本机C DLL
- 5. 从C++ dll导出函数返回字符串从c#调用
- 6. 是否有任何本机DLL导出函数查看器?
- 7. 如何从本身调用导出的函数?
- 8. 如何使用从C++中的DLL导出的函数?
- 9. 如何从VB调用C++ DLL函数?
- 10. 如何从VBScript调用C#DLL函数
- 11. 如何从Ruby调用Windows DLL函数?
- 12. 如何直接调用NdrClientCall2()函数?
- 13. 从DLL调用函数?
- 14. 从VB6调用DLL函数
- 15. 从matlab调用dll函数
- 16. 从dll导出函数唯一序号
- 17. C++函数导出在DLL和从C#
- 18. 如何直接从Android中的活动调用JavaScript函数?
- 19. 如何从C++中的DLL导出纯虚函数?
- 20. 如何从.dll(系统)获取导出的函数名称?
- 21. 列出一个DLL的导出函数
- 22. 调用导出的函数
- 23. 从本机C++调用.NET dll
- 24. 如何从DLL中导出重载函数? Delphi Xe。
- 25. DLL导出VB6调用的C/C++ 6.00函数
- 26. System.EntryPointNotFoundException从DLL导入函数
- 27. C++导出和使用dll函数
- 28. 如何从我的dll调用函数从jquery
- 29. 导出从DLL
- 30. 调用DLL函数
你试过谷歌吗? – 2012-04-12 11:09:58