【发布时间】:2011-12-01 02:41:50
【问题描述】:
我最近在 Windows 7 Ultimate 32bit 上安装了带有 mingw32 的 CodeBlocks,以便清理我的 c 技能,但这个问题让我有些难过。
我决定启动一个短斐波那契发生器以确保我的设置正常工作,但我遇到了障碍。
程序编译、链接和诸如此类的魅力,我得到了一个按预期运行的相应可执行文件。
如果我再次尝试编译会出现问题,然后我得到以下信息:
c:/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../mingw32/bin/ld.exe: cannot open output file bin\Debug\Fibonacci.exe: Permission denied
我什至无法编辑生成的可执行文件的权限。
我检查了通常的嫌疑人:
- 可执行文件确实没有运行。
- 可执行文件的路径对 mingw32 是可读写的(否则一开始就无法构建)
- 我没有以任何形式运行 cygwin。
现在有趣的是:通常几分钟后,由 mingw32 生成的任何显示此访问被拒绝行为的可执行文件都会自动消失,而无需我的任何干预。
我在谷歌上搜索过,但大多数其他结果要么含糊不清,要么不适用。
我想知道是否有一些 Windows 7 安全设置对我的 .exe 造成严重破坏,但我对 Win 7 的了解并不多,不知道从哪里开始搜索。
有人有什么想法吗?
【问题讨论】:
-
这是一个总的猜测......如果你正在构建 bin\Debug 目录,那么 code::blocks 可能正在使用它的集成调试器做一些事情,保持可执行文件上的文件句柄打开。尝试构建它以发布,看看你是否有同样的问题
-
我认为@BrianGordon 的猜测不错。如果程序正在运行,请在尝试重建之前将其终止。
-
可执行文件消失了?因为它们会被自动删除?听起来像是病毒扫描程序的问题。
-
Victor T. : 我只是得到 Permission denied tinman: 没有安装防病毒软件,我只是偶尔运行 mcafee 毒刺。我今晚要去看看UAC。
-
不应在 C、C://users//yourname 或 C://ProgramFiles 或 C://ProgramFiles/Code::Blocks 等目录中创建您的 Code::Blocks 项目。
标签: c windows windows-7 codeblocks mingw32