每次我尝试用 C++ 语言编译任何类型的代码时,都会出现此消息,我对此感到很困扰。我真的很累,不知道该如何寻找解决方案,而且它非常烦人,因为每次我想测试我的代码时,都会弹出此消息(驱动器中没有磁盘。请将磁盘插入驱动器 E:。),需要连续单击 10 次“取消/重试”才能将其删除。
我发现我的问题和这个帖子有一些关联:我如何删除空的驱动器号?
但问题是,我尝试按照每个步骤操作,但从一开始我甚至无法执行第一步(在启动计算机之前将可移动磁盘插入可移动驱动器)。我这样做了,但我的电脑没有将可移动驱动器放在 E: 位置。我单击首选项来检查有关此 E: 驱动器的信息,但没有空间。它就像一个虚拟驱动器(什么也不做)。
我不明白发生了什么。以下图片可提供帮助:
您知道如何去除这个 E: 点吗?
答案1
再次确认 Doktoro Reichard 的帖子,您很可能遇到了这个已知问题,在 MinGW 中对 e: 和 i: 进行了硬编码引用:
https://sourceforge.net/p/mingw/bugs/2108/
例如:
$ strings /c/mingw/bin/gcc.exe | grep '[a-z]:/[a-z]'
e:/p
e:/p/giaw/mingw/lib/gcc/
e:/p/giaw/mingw/libexec/gcc/
e:/p/giaw/mingw/bin/
e:/p/giaw/mingw
e:/p/giaw/mingw/share/locale
i:/p/giaw/mingw/share/locale
i:/p/giaw/mingw/share/locale
我解决这个问题的方法是删除系统上的所有 E: 或 I: 驱动器。通过使用磁盘管理,我能够将读卡器从 E: 重命名为非 E:,错误就消失了。
–戴夫
答案2
我也突然遇到这个问题。昨天我顺利编译和执行代码,今天突然收到一条错误消息,提示“驱动器中没有磁盘。请将磁盘插入驱动器 E:”。...
从现在到昨天,唯一发生的变化就是我使用 DVD 驱动器(即驱动器 E)来安装程序。因此,它以某种方式影响了 GCC。我所做的就是打开 DVD 驱动器并再次关闭它,现在一切似乎都很好。
我意识到我的答案并不像其他人那样技术性强,但有时解决方案不需要技术性或复杂。有时一个简单的“打开,关闭”就能产生奇迹!;) 我只是想分享我如何解决这个问题。
答案3
看来您的 C++ 编译器/构建环境在某处引用了驱动器 E:,即使您没有驱动器 E:。
您必须删除这个不起作用的引用才能停止这种情况。
也许您在某处提到了 E: 作为 LIB 路径的 INCLUDE ?
您是否使用了其他人制作的 makefile 或解决方案文件,其中在某处提到了 E: ?
检查编译/构建日志文件中是否有类似“无法打开文件 E:\xxxxxxx”的注释。这可能为问题确切位置提供线索。