我正在使用该[DllImport]
属性将本机 DLL 导入我的应用程序,但它正在加载的 DLL 不在本地 bin 文件夹中。它是从系统上的其他地方加载的,但我不知道在哪里。
它适用于我的开发机器,但不适用于干净的机器。
我启用了 Fusion 日志记录,并且只显示了托管程序集。
我已经使用 Sysinternals Process Explorer 转储了该进程,这告诉我它在其中,C:\Windows\System32
但我在 Windows Explorer 中看不到该文件。
值得注意的是,我运行的是 64 位 Windows 7,但 DLL 仅支持 x86,所以我不得不强制我的应用程序是 x86。是否有某种重定向会改变 x86 文件的加载位置?
DllImport 是一个定制的 Silicon Labs USB 驱动程序。[DllImport("SiUSBXp.dll")]
我还使用命令提示符dir si*
在 System32 文件夹中进行了操作,但该文件不存在。