问题标签 [vc90]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
2043 浏览

c++ - vc90上的jsoncpp?

有人有jsoncpp在 vc90 上工作吗?

他们使用我从未听说过的构建系统 Scons。我安装了最新的 Scons,找到了一个未记录的 scons.bat,在我的 jsoncpp 目录中启动了 vc90 提示,修改了 SConstruct 文件以支持 msvc90 目标(我从已经支持的 msvc80 平台复制了样板)运行scons.bat platform=msvc90并出现错误:

我已经付出了太多努力来构建它,而 jsoncpp 显然没有维护,所以我现在放弃了。

0 投票
1 回答
3108 浏览

.net - 找不到依赖程序集 Microsoft.VC90.CRT 错误

我有一个引用一些 C++ 程序集的 .NET 应用程序。我的应用程序需要在机器上安装 Visual C++ 9 运行时才能运行。如果我下载并安装运行时设置 vcredist_x86.exe 一切正常。但是我想知道是否可以只包含我需要的 dll 以及我的应用程序而不是运行设置。如果我将 msvcr90.dll、msvcr90.dll、msvcp90.dll 与我的可执行文件放在同一个文件夹中,我仍然会收到 SideBySide 错误 Dependent Assembly Microsoft.VC90.CRT could not be found 错误..我还缺少什么?谢谢

0 投票
0 回答
364 浏览

visual-studio-2008 - VS2008 生成的 dll 依赖于两个不同版本的 CRT 程序集

我的 VS2008 项目生成一个 dll 并链接到另外两个静态库。这是生成的清单:

所以我的 dll 依赖于 2 个不同版本的 CRT 程序集。我怎么知道是什么导致了这种双重依赖并纠正它?我希望我的 dll 绑定到程序集的原始版本,因为它是 vc9.0 的默认行为。

我的代码不包含任何将绑定到特定程序集版本的定义声明

或者

正如msdn网站上所描述的那样

0 投票
1 回答
128 浏览

vc90 - CString 写为无符号字符

我正在构建一个应用程序来读取和写入微芯片的内存。

我需要传递一个无符号字符数组,它有 4 个固定字节和 2 个可变字节,所以假设我想读取内存库 0004 我会通过

我想放置 2 个 CEdit 框供用户输入该变量内存库,因此它将在第一个 CEdit 上写入 0x00,在第二个 CEdit 上写入 0x04。

所以我的问题是,如何在无符号字符上翻译这些输入中的每一个,以便我可以在我的 sRequest 变量上设置它?

在此先感谢(感谢戴夫,将字节错误输入位,现已修复)

0 投票
1 回答
70 浏览

c++ - 安装 msi 后无法显示 png 并在我的应用程序的某些部分代码中发出警告

我想知道完整的方法,msi installation因为安装时创建的msi文件没有显示.png类型的图片为什么会发生这种情况以及如何解决这个问题?

vc++2008在创建 msi 之前,当我在它显示图片时执行程序。为什么我无法查看 png 图片,当我创建相同的程序时 msi 和其他图片bitmap type可以查看。

我已将 png 图片放在 res 文件夹中,并按照以下步骤操作
solution explorer->ResourceFiles->right click mouse->add existing item->(added png files of res folder)

安装 msi 后,我还应该怎么做才能让我的 png 图片出现。
我用过picture ctrl to display png

0 投票
1 回答
656 浏览

windows - FindBoost.cmake:使用不同的编译器版本(vc90 而不是 vc100)

我正在使用带有MSVC90编译器的 Visual Studio 2010。因此,我只安装了 Boost VC90

现在我有一个第三方组件,它依赖于 Boost 并且我想使用它。这个组件构建系统是 CMake。

当我尝试从给定的 CMake 脚本生成 Visual Studio 解决方案时,我遇到了 FindBoost.cmake 的问题。似乎 CMake 猜测我的编译器是VC100因为我安装了 Visual Studio 2010。我找不到 CMake-Variable 或类似的东西来手动将编译器设置为VC90.

我已经尝试过使用变量CMAKE_CXX_COMPILERBOOST_COMPILER但没有成功。

有没有一种我没有找到让 FindBoost.cmake 搜索VC90库而不是VC100库的方法?

0 投票
1 回答
135 浏览

merge-module - VC 合并模块未更新

不久前我发布了一个问题:

https://stackoverflow.com/questions/16123872/visual-c-runtime-8-0-50727-6910-merge-module

我有一个问题,我可以找到合并模块的特定版本。

我已经尝试重新安装 Visual Studio 2005 和 2008 的 SP1,并且两个运行时(8 和 9)的合并模块在 (C:\Program Files (x86)\Common Files\Merge Modules) 中没有正确更新。唯一的 VC 合并模块是原来的 8 和 9 模块。

我正在运行 Windows 8 Enterprise x64。有谁知道 VC8/9 合并模块没有通过 Windows 8 上的 Visual Studio 更新过程正确更新的任何问题?

0 投票
2 回答
5215 浏览

c++ - C 链接函数无法返回 C++ 类 - 我的方法内容导致的错误

我正在导出一个可以从非托管代码调用的方法,但该函数本身位于托管 c++ 项目中。以下代码导致编译器错误:

稍微研究一下这个错误,这个问题通常与标记为“extern“C”'的方法的定义有关。那么为什么它完全关心方法内部发生的事情呢?

如果我注释掉 Dictionary 初始化,或者将其切换到 HashTable,一切都会编译得很漂亮。

以下方法也有效 - 如果不是在本地定义字典,而是通过在方法中初始化它来避免局部变量。

其中 ConvertToDictionary 被声明为

这告诉我这是一个看似任意的错误。我仍然想了解为什么编译器认为这是一个问题。

0 投票
2 回答
2692 浏览

build - 如何使用正确分发的发行版 pdb 文件构建 Qt5

我想在调试发布模式下从带有 PDB 文件的源代码构建 Qt5,但我遇到了两个问题:

  1. 没有生成发布 PDB 文件(这里是解决方案),

  2. qt 构建系统没有将发布 PDB 文件部署到给定的prefix构建文件夹,因为它在nmake.exe install.

这是示例:

构建完成后,我有一个包含DLLLIBqtbase\bin\x86\x86\bin的文件夹,并且只调试 PDB文件,但发布 PDB文件除外。Qt 构建脚本不会像调试 PDB 文件那样复制发行版 PDB 文件。发布创建并位于模块中的 PDB 文件。

有谁知道如何解决这个问题?

PS:作为我自己的解决方案,我想从每个模块文件夹中复制所有 *.pdb 文件,但我认为这种情况是最糟糕的,首先我会尝试找到更人性化的解决方案。

PSS:Qt4 没有这样的行为,我们也没有问题。

P3S:这是 Qt类似的错误

谢谢,最好的问候!


环境:

版本:Qt 5.4.1

系统:赢8.1

工具集:MSVS2008 (vc9)


有用的链接:

  1. qmake 变量参考
  2. 如何为 Qt 库的发布版本创建 .pdb 文件
  3. 所以
0 投票
1 回答
641 浏览

visual-studio - Visual Studio 2012 Debug .exe 需要 Microsoft.VC90.DebugCRT

当我构建调试配置时,.exe 无法启动。

它报告

应用程序无法启动,因为它的并排配置不正确。请查看应用程序事件日志或使用命令行 sxstrace.exe 工具了解更多详细信息。

我使用了 sxstrace.exe 工具。它报告以下错误:

错误:无法解析引用 Microsoft.VC90.DebugCRT、processorArchitecture="amd64"、publicKeyToken="1fc8b3b9a1e18e3b"、type="win32"、version="9.0.21022.8"。

我已经阅读了很多与这些并排错误相关的帖子。我尝试安装 Visual Studio 2008 可再发行包,希望将丢失的调试 .dll 安装在 C:\Windows\winsxs 中。然而,我看到

应用程序的调试版本和各种 Visual C++ DLL 不可再分发。

https://msdn.microsoft.com/en-us/library/8kche8ah%28v=vs.110%29.aspx

我该如何解决这个问题?