问题标签 [visual-studio-6]
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.
c++ - 为旧版本对齐 VS2010 和 VS6 编译器和链接器开关
对于旧项目,我在 Visual Studio 2010 中有一个解决方案,它使用 Visual Studio 6 编译器使用 Visual Studio 2010 的Daffodil 扩展进行编译。
我试图让编译器(和链接器)输入与使用 Visual Studio 6 时的输入相等(尽可能)。所以我将 VS2010 项目的构建日志文件与构建日志进行比较VS6 中相同项目的文件。
我注意到在 VS2010 中构建时,在生成的命令行上传递的编译器开关是不同的。其中一些差异我可以在 VS2010 的项目文件设置中修复,但其他一些我似乎找不到:例如/FD
和/TP
开关在使用 VS6 构建时存在,但在使用 VS2010 构建时不存在,我似乎无法在任何地方找到这些开关在 IDE 的项目设置中。还有其他一些我似乎无法解决的差异,因为我找不到 VS6 的默认开关(是的,我试过 Google):例如,/EHsc
使用 VS2010 构建时存在该开关,但使用 VS6 构建时不存在,这是区别还是这是 VS6 编译器的默认设置?
所以我的问题是:
- 是否有 VS6 编译器的默认值列表?
- 对于故障排除:我如何查看 IDE 或 Daffodil 注入或拒绝了哪些开关?
PS:
*我注意到在 VS6 中存在但在 VS2010 中不存在的/FD
编译器开关:* 我注意到在 VS6 中不存在但在 VS2010 中存在的编译器开关:/EHsc
/Gd
/TP
/WX-
/O2
/Oy-
我知道其中大部分可能在项目设置中修复,但我决定添加无论如何,这个项目的完整列表,希望有人可以对特别麻烦的编译器开关进行对齐。
更新:好的,这是我发现并解决的问题:
- 该
/WX-
开关(将警告视为错误)可能是无害的,假设它是一个原本不存在的开关的否定,似乎没有任何效果,我怀疑它是由 Daffodil 注入的 - 该
/O2
开关(喜欢快速代码)暗示了其他几个优化开关,是一个严重的错误,通过清除项目设置中的优化设置 删除 - 开关(省略帧指针)也可能是无害的,假设它是一个原本不存在的
/Oy-
开关的否定,似乎没有任何效果,我怀疑它是由 Daffodil 注入的 - IDE 注入了一个
/D _VC80_UPGRADE=0x0600
开关,但它对 VS6 编译器没有意义,所以它是无害的 /EHsc
开关(同步异常处理)显然与最初已经存在的开关相同,所以/GX
这似乎没问题/Gd
开关(默认cdecl
调用约定)显然是 VS6 编译器的默认设置,因此它的存在是无害的,我怀疑它是由 Daffodil 或 IDE 注入 的- 开关(将
/TP
所有文件视为 C++ 源文件)我无法找到如何在任何地方配置它,但混合源可能很危险,我不知道如何摆脱这个开关,它是由 Daffodil 或 IDE 注入的
然后链接器切换......我设法对齐其中的大部分,除了:
- 开关(保留堆栈大小)在 VS6 中是十六进制的
/stack
,但在 VS2010 中是十进制并用引号括起来,所以我必须在命令行上指定它,但是...... /machine:I386
和/mapinfo:lines
开关在 VS2010 中是未知的,所以我不得不在命令行中指定它们。它们被附加到文件列表之后的链接器命令行的最后,这很容易被忽略,我不能 100% 确定链接器实际上在文件列表之后选择了额外的开关。
c++ - 与 Visual Studio 6.0 相关
我正在使用 Microsoft Visual Studio 6.0
有2个dsp文件,即1)。A.dsp 2)。dsp
我将 A.dsp 设置为我的 ACTIVE PROJECT 并将配置选择为“Debug_mode2”[有两种可用的调试模式:Debug_mode1、Debug_mode2 在配置下]...并且 B.dsp 是依赖的[类似于 A.dsp,我的 B.dsp也有 2 种调试模式:Debug_mode1、Debug_mode2 under configuration]。
现在,问题是......当我试图重建 A.dsp 文件时,它正在选择 B.dsp 的“Debug_mode1”并尝试构建 B.dsp......但我想要 B 的 Debug_mode2。应选择 dsp,然后构建 B.dsp。
谢谢。
我不知道如何更改此默认行为。
vb6 - 使用 64 位操作系统的 VB6 应用程序开发
我公司期待安装 64 位开发 PC。许多当前的项目/应用程序都是用 VB6 编写的,并且没有任何将它们升级到 .NET 的计划。
当前的 VB6 应用程序是在 32 位架构上编写的,当将这些应用程序安装到 64 位 PC 上时,它们都运行良好,经过一些调整以确保应用程序写入/读取正确的注册表位置(例如 SysWOW64)和“程序文件的目录(ee Program Files (x86))。
我的理解是 Visual Studio 6 是 32 位软件并在 64 位操作系统上运行(使用 Windows 上的 32 位层 - WOW)。Visual Studio 6 将始终作为 32 位软件运行。
我可以编译 VB6 应用程序以作为/目标 32 位和 64 位架构运行吗?
请有人提供几个有用的链接,我可以从我的问题中获得参考。提前致谢。
JFB
c++ - 从 CHtmlView (visual studio 6) 中检索 HTML 源代码
我正在开发一个使用 CHtmlView 的应用程序。新要求意味着我希望能够从类中获取 HTML 源以解析特定标签(或者如果可能的话,只需获取标签中的信息)。如果我们使用较新的系统,这会很好,我可以使用 CHtmlView::GetSource 但它不存在。
我在网上进行了相当广泛的搜索,但对大多数 Windows 编程来说还是很陌生,还没有实现任何有用的东西。
因此,如果有人有一个如何在不使用 GetSource 的情况下从 CHtmlView 中提取 HTML 的示例,我将不胜感激。我试过了
但它主要只是在 realString 中给了我“[object]”。就像我说的,Windows 新手。
任何帮助表示赞赏。
teamcity - Visual Studio 6 和 Teamcity - 如何设置构建配置?
这是我在stackoverflow上提出的第一个问题。我已经研究了一天,以找到解决我问题的任何方法,但无法提供任何帮助。
我必须为一些旧的 Visual Studio 6 C 项目设置构建配置(Teamcity 7.1)。我不熟悉 C/C++ 程序及其环境,并且完全不知道如何为此类项目配置构建步骤。我在 Teamcity 服务器和代理上安装了 cmake 插件,并尝试通过将“制作程序路径”指向 Visual Studion 6 安装中的 nmake.exe 来设置 GNUMake 配置。构建实际上开始了,但由于以下错误而崩溃:
我没有传入任何命令行参数。据我所知,这似乎是 nmake/make 组合的问题,可以通过在 nmake 调用前加上env -u MAKE -u MAKEFLAGS nmake.exe /a /l
. 不幸的是,这也不起作用——或者我做错了。
有人有使用 Visual Studio 6 和 Teamcity 的经验吗?有什么建议我可以设置正确的构建步骤吗?
亲切的问候,丹妮拉
c++ - 在静态/动态库混合中链接 Debug-CRT 时崩溃?
我有一个奇怪的问题,我在删除代码中的对象时遇到崩溃。对象是有效的,没有可能覆盖它们的内存泄漏,并且仅在调试模式下发生。使用 Linux 编译的相同代码在调试和发布版本中都可以正常工作。所以我猜这是 Visual Studio 调试 CRT 的一些奇怪问题。
我的软件结构如下:
两个静态库在“多线程(调试)DLL”模式下编译并链接到: 在“多线程(调试)”模式下编译的共享库(DLL)。从逻辑上我会说它应该是相反的,但后来我得到了大量未解析的符号。
最后有一个在“多线程(调试)DLL”模式下编译的可执行文件,它调用上面提到的DLL。当我切换到“多线程(调试)”时,这并没有什么不同。
对象删除崩溃发生在 dbgheap.c / _heap_alloc_dbg_impl() -> mlock.c / _unlock() - 一个函数
那么:可能是什么问题?调试模式下真的是 CRT 不兼容还是其他原因?我很确定这不是典型的内存泄漏,因为它可以在 Linux 和发布版本中顺利运行。
visual-studio-2010 - 如何向 MFC-ActiveX 添加方法
这个问题似乎很愚蠢,因为互联网上有很多解释,描述了如何添加一个新方法,以后生成的 OCX 的用户可以调用该方法。不幸的是,它对我不起作用。
我有一个使用 Visual Studio 6 创建并导入到 VS2010 的基于 MFC 的 ActiveX 控件项目。在那里我没有可以使用向导添加方法的类视图(类视图选项卡窗格在那里,但它是空的)。到现在为止,现有代码还没有提供任何可调用的方法,因此我可以简单地复制它们。
那么:如何启用/调用 VS2010 中的类视图生成以使用向导?
一旦它起作用:这种方法应该是什么类型的外部可见?据我所知,向导要求某种类型...
c++ - 如何使用 VS C++ 6.0 在 C++ 应用程序中嵌入 Python 2.4?
我收到此链接错误,使用 Python 2.4 和 MS VC++ 6:
将此添加到我的源文件没有帮助:
我修改了 pyconfig.h 以禁用调试模式并强制使用 python24.lib 而不是 python24_d.lib,如下所示:http://tutorial.debashis.net/?p=57&cpage = 1 仍然是同样的错误。
我可能做错了什么?
visual-studio-2010 - VisualStudio 6 到 VS2010 的迁移:奇怪的链接器错误
我有一个 DLL 项目,它可以编译、链接并与 Visual Studio 6 一起正常工作。
现在我已将它加载到 Visual Studio 2010。在导入旧的 .dsp 文件期间,VS2010 要求我转换为 .vcxproj 文件。之后,我尝试编译新转换的项目,但在调试构建中偶然发现了这个奇怪的链接器错误:
_DEBUG 编译开关在调试模式下定义,NDEBUG 在发布模式下定义。令人惊讶的是,在发布模式下,错误完全不同:
任何想法在项目文件转换过程中丢失了什么?
谢谢!
c++ - 致命错误 C1001:内部编译器错误(编译器文件“msc1.cpp”,第 1794 行)
我尝试使用 Visual Studio 6 SP6 编译一个项目并得到以下结果:
usbcore.h 的第 18 行包含 include 指令:
空的或不存在的 usbiface.h 会产生相同的错误。我评论了这一行并得到了同样的错误,但对于下一个包含文件。
总结一下:#include
每个引用公共项目头的指令都会发生编译器错误。