我在使用基于Windows Mobile 5.0模拟器的基本方案时遇到了很多麻烦.我有一个winforms应用程序,最终
调用本机
代码.部署工作正常,所有本机DLL都复制到winforms .exe相同的
文件夹中.我还验证了远程
文件查看器工具的情况.
但是,当我启动我的应用程序时,它始终失败并显示“无法找到PInvoke dll – System.MissingMethodException”错误(当调用本机代码时,DllImport属性将变为无用).我知道本机dll与可执行文件位于同一文件夹中.我还应该怎么做?
我正在使用VS 2008.
为了扩展Jared的答案,在P / Invoking CF时获得MissingMethodException的四个更常见的原因:
>您缺少要调用的本机库的依赖项.
>原生的assmebly是为错误的子系统编译的(即桌面,而不是CE)
>本机程序集是为错误的处理器编译的(即x86而不是ARM)
>您没有足够的虚拟内存来加载DLL.
你有没有用dumpbin这样的东西验证DLL入口点是不修饰的?