我是C ++的新手,我正在使用具有第三方dll的SDK在Visual Studio 2010中创建应用程序。我希望能够在其他计算机上运行此程序,因此我查看this问题,以确保我将它们包括在内(特别是Laserallan的回答)。然后我在发布模式下构建程序,它编译得很好。问题是,当我尝试在示例发布文件夹中运行.exe时,程序不会运行。不确定这些版本是否相关,但我的项目在静态库和多线程(MT)运行时库中使用MFC。未启用增量链接。
我怀疑这与dll与.exe位于同一个地方有关,因为如果我将其中一个移出示例版本文件夹,我会收到此错误:
我在SDK的API中也注意到了这一点。我不确定它是否相关:
" eBUS SDK作为DLL提供。此时不提供静态库。即使提供了DLL,仍然需要将您的应用程序链接到DLL的链接库。"
之前的.exe工作正常,当我试图将dll与exe放在同一个地方时,它才开始乱码,试图让它在其他计算机上工作,当我重新安装SDK时。有没有人对它可能是什么有任何想法?它过去两天一直在努力。任何帮助将不胜感激。
答案 0 :(得分:0)
我解决了它,结果新计算机有2个版本的PvBuffer,一个有GetAcquiredSize方法而另一个没有。该程序正在执行没有的版本,并试图找到一个不存在的方法。谢谢你的帮助!