Visual Studio - 通过 VS 6.0 执行 CL.EXE C++会导致"驱动器中没有磁盘"。<损坏的驱动器名称>



VS 6.0 C++执行CL.EXE会导致"驱动器中没有磁盘。请将磁盘插入驱动器xxxx",其中XXX是一系列垃圾字符。这意味着一些损坏的注册表var或env var,但我找不到。我尝试过完全卸载/重新安装VS 6.0,但没有成功。

附言:多年来,我一直在使用VS 6.0,没有任何问题。我的VS 2008安装很好,但我也需要我的VS 6.0

在安装过程中,由于某些原因,这些条目引用的是安装磁盘,而不是硬盘。

工具-选项-目录-在下拉框中选择库文件删除这两个条目。应该有一个C:\Program Files\DevStudio\VC\LIB和\MFC\LIB的条目,而不是

D: \DevStudio\VC\LIBD: \DevStudio\VC\MFC\lib

如果在C++6.0中创建一个新的Win32控制台应用程序,是否会出现同样的问题?如果不是这样,则表明您的问题可能是特定于您的项目,而不是适用于C++6.0。在这种情况下,你可以用记事本打开你的dsw或dsp文件,然后寻找奇怪的驱动器名称。

如果转到"工具"|"选项"|"生成"选项卡,并确保选中"编写生成日志(.plg)"框,则Visual Studio将把它所做的一切记录到名为.plg的文件中。该文件可以用记事本(或您最喜欢的文本编辑器)打开。您应该能够看到传递给CL.EXE的命令行——类似于以下内容。。。

正在创建命令行"cl.exe@C: \DOCUME~1\XPMUser\LOCALS~1\Temp\RSP2EF.tmp"

在此之前,您应该看到响应文件的内容。。。

正在创建临时文件"C:\DOCUME~1\XPMUser\LOCALS~1\Temp\RSP2EF.tmp"包含内容[/nologo/MLd/W3/Gm/GX/ZI/Od/D"WIN32"/D"_DEBUG"/D"_CONSOLE"/D"_MBCS"/Fp"调试/STOFLO1.pch"/Yu"stdafx.h"/Fo"调试/"/Fd"调试/"/Fd/GZ/c"C:\TestPrograms\VC++\STOFLO1\STOFLO1.cpp"]

这可能会帮助你找出你的奇数驱动器名称被使用在哪里,这反过来可能会告诉你它来自哪里。

如果这没有帮助,您可能需要使用SysInternal中的Process Monitor之类的工具。在启动VC++6.0并构建项目的同时运行Process Monitor,然后使用Find在监视器输出中搜索奇数驱动器名称。PM很有可能会捕获检索到该名称的任何访问(从注册表或任何地方)。如果真的发生了,这可能会再次给你一个需要改变的线索。

相关内容

最新更新