1

I find increasingly now when I am building a large project, I get the following error.

fatal error C1083: Cannot open compiler intermediate file: 'C:\Temp\SYS\a03132ex': Permission denied

It occurs in Visual Studio 2003 and VC6, and I have investigated the potential MSDN reasons and drawn a blank. There is plenty of space on the hard disk, and not that many other programs open that I should be running out of handles. Any ideas, or is it time to re-install windows again. I'm running XP SP3 by the way, and have two large NTFS hard disks with very many files.

Edit: the name of the temp file changes, and I have cleared out the entire c:\temp folder.

4

6 回答 6

1

我似乎从记忆深处的某个地方记得,删除由 Visual Studio 为项目创建的临时文件可以解决这个问题(直到它再次弹出)。

临时文件与您的项目同名。(如果没有帮助,您的主目录中可能还有一些与 VC/VS 相关的内容。)

于 2008-12-31T12:54:54.010 回答
1

如果这没有帮助,请检查您的 TMP 环境设置是否不以分号结尾。它也应该是完全合格的路径,而不是相对的。

编辑:我在互联网上找到了一个关于它的主题,据说如果您尝试包含目录而不是文件,您可能会触发同样的错误。

我假设您已经验证了这一点,但实际的 C:\Temp\SYS 文件夹是否具有正确的权限(即允许所有用户在其中读/写文件)?

于 2008-12-31T13:01:08.147 回答
1

c:\temp您还可以检查与和相关的权限c:\temp\sys(如果 sys 确实存在于编译会话之外)

cacls c:\temp

此外,(如此处所建议),尝试在高级选项下设置编译器标志 -Bd 并检查编译器中的参数。也许您打算指定一个路径并最终编译一个不存在的文件?

于 2008-12-31T13:12:49.637 回答
1

保持您的临时文件位置简单,例如,当我将项目从笔记本电脑复制到办公室 PC 时,VS2003 项目没有编译。“tmp”系统变量指向 %USERPROFILE%/TEMP。Visual Studio 2003 给出了一些“致命错误 C1083:无法打开编译器中间文件:”错误

我在 C 盘上新建了一个临时文件夹,并将系统变量 TMP 更改为“C:/TEMP”。重新编译程序,瞧,没有错误!

于 2012-02-08T15:46:04.050 回答
0

不要单击编译器中的Rebuild按钮,仅单击Build按钮 - 这解决了我的问题

于 2016-01-26T09:08:16.503 回答
0

我有完全相同的问题。在构建项目时禁用防病毒软件解决了这个问题。一个可能的永久解决方案是将 VS 的临时目录设置在其他地方,并告诉防病毒软件排除该目录。

于 2016-03-17T13:28:16.700 回答