wal*_*wal 5 c++ c++-cli visual-studio
我有一个在VS2005中创建的C++/CLI项目.我希望在VS2010(或2012)中运行它,因为那是我的主要IDE ,我还需要在C++/CLI项目中修改一些内容,并且必须来回切换到vs2005才能重新编译,复制另一个重要原因是我在VS2010/2012中运行的项目是在.NET4中,所以没有选项可以将所有内容都移到VS2005上.
该项目依赖于非托管第三方库,这些库本身依赖于c ++可再发行库的调试版本(msvcr80.dll,msvcm80.dll,msvcp80.dll)
当我第一次运行升级后的项目时,我收到"找不到指定的模块" -
那时我注意到cli项目是针对msvc的更高版本编译的(msvcr90.dll)
cli程序集依赖性取决于; vs2005左侧vs 2008右侧
有没有办法使用2005库创建更高版本的VS编译?
更新它编写的哪一个并不重要(并且可能无论如何都可能)但是是否可以并行运行和调试?当我尝试运行已编译的项目时,我收到以下错误消息:
我已经尝试将清单文件从vs2005项目复制到vs2010项目,但这不起作用(相同的错误消息).我还禁用了嵌入式清单,并将生成的.manifest文件替换为vs2005中的文件,这也不起作用.
update2我通过在清单中指定msvcr库来解决此错误:
<dependentAssembly>
<assemblyIdentity type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50727.762' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
</dependentAssembly>
Run Code Online (Sandbox Code Playgroud)
但是现在当我运行我的应用程序时,其中一个第三方库会AccessViolationException - Attempted to read or write protected memory在我尝试使用其中一种方法时抛出.否则此代码在vs2005中正常工作.
此后,我发现了Daffodil for Visual Studio,它完全满足了我的需要,即在 Visual Studio 2010 中针对 vc80 进行编译。安装后,平台工具集下拉列表会显示更多选项:
注意,您仍然需要安装相关版本的 Visual Studio,例如,如果针对 vc80,则需要 vs2005。nb2,Intellisense 在 vs2010 中的 cli/c++ 中被破坏,在花费大量时间研究让项目在 vs2010 上运行之后,这是一个重大的失望

| 归档时间: |
|
| 查看次数: |
1003 次 |
| 最近记录: |