我有通过 COM 访问 c++ 项目的 ac# 解决方案。该项目必须针对特定的处理器,在本例中为 x64。我正在使用 Windows 安装程序来安装应用程序。
我遇到的第一个问题是安装时没有正确注册c++ dll,程序无法访问它。我通过将 c++ 项目添加到解决方案中解决了这个问题。
有一段时间这有效,并且一切都正确安装,但是当我尝试构建时开始收到以下警告:
项目中 .NET Framework 的目标版本与 .NET Framework 启动条件版本“.NET Framework 3.5”不匹配。在高级编译选项对话框 (VB) 或应用程序页面(C#、F#)中更新 .NET Framework 启动条件的版本以匹配 .NET Framework 的目标版本。
如果我尝试忽略警告,安装程序将无法安装。经过一番搜索,我发现 c++ 项目是在 .NET 4.0 中构建的,而我的解决方案使用的是 .NET 3.5。我尝试将我的解决方案更改为 4.0,但由于某种原因它停止工作,所以我将 c++ 更改为 3.5。
这适用于几个构建,但后来我开始收到以下错误:
Error: LNK1104 cannot open file 'mfc90.dll'.
我将文件添加到附加依赖项部分,但随后出现另一个链接错误(mfcs90.dll),添加该文件时,我遇到了 x86 x64 冲突。
我不确定为什么这些解决方案工作了一段时间然后停止了,而且我似乎无法在任何可行的步骤中找到解决方案。如果有人看到过类似的东西,将不胜感激。