C#-在.Net中使用kernel32

针对SO社区的问题.我有一个带有完整源代码的C库,并且能够在32位和64位模式下对其进行编译.但是,要从.NET调用代码,我必须选择32位或64位,因此强制我的应用程序为32位或64位.我决定可能不得不忍受这个问题…但是我偶然发现了一些给我希望的东西.我注意到我可以在外部函数中引用“ kernel32.dll”,并且该程序在32位和64位上都可以正常运行.有谁知道这是怎么做的?

谢谢!

解决方法:

这是WindowsWindows 64(WOW64)上的功能:File System Redirector

您不能真正将其用于自己的库,因为它仅用于System32文件夹. (甚至不要考虑将DLL放入System32.)

使用SetDllDirectory可能会有所帮助,但我不确定.

上一篇:正确的互操作清理


下一篇:MFC应用程序中的C#控件