1

大規模なプロジェクトを構築しているときに、次のエラーが発生することがますます増えています。

致命的なエラー C1083: コンパイラ中間ファイルを開けません: 'C:\Temp\SYS\a03132ex': 権限が拒否されました

これは Visual Studio 2003 および VC6 で発生します。MSDN の潜在的な理由を調査し、空白にしました。ハードディスクには十分な空き容量があり、ハンドルが不足しているはずの他の多くのプログラムが開いていません。任意のアイデア、または Windows を再インストールする時が来ましたか。ところで、私は XP SP3 を実行しており、非常に多くのファイルを含む 2 つの大きな NTFS ハードディスクを使用しています。

編集:一時ファイルの名前が変更され、c:\temp フォルダー全体がクリアされました。

4

6 に答える 6

1

プロジェクト用にビジュアルスタジオによって作成された一時ファイルを削除すると、この問題が修正されることをメモリレーンのどこかから覚えているようです(再びポップアップするまで)。

一時ファイルの名前はプロジェクトと同じです。(問題が解決しない場合は、ホーム ディレクトリに VC/VS に関連するものがある可能性もあります。)

于 2008-12-31T12:54:54.010 に答える
1

それでも問題が解決しない場合は、たとえば、TMP 環境設定がセミコロンで終わっていないかどうかを確認してください。相対パスではなく、完全修飾パスでもある必要があります。

編集:インターネットでトピックを見つけましたが、ファイルの代わりにディレクトリを含めようとすると、まったく同じエラーが発生する可能性があると言われています。

これは既に確認されていると思いますが、実際の C:\Temp\SYS フォルダーには適切なアクセス許可がありますか (つまり、すべてのユーザーがその中のファイルを読み書きできるようになっていますか)。

于 2008-12-31T13:01:08.147 に答える
1

たとえば、ラップトップからオフィスの PC にプロジェクトをコピーすると、VS2003 プロジェクトがコンパイルされませんでした。「tmp」システム変数は %USERPROFILE%/TEMP を指していました。Visual Studio 2003 では、「致命的なエラー C1083: コンパイラの中間ファイルを開けません:」というエラーがほとんど発生しませんでした。

C ドライブに新しい Temp フォルダを作成し、システム変数 TMP を「C:/TEMP」に変更しました。プログラムを再コンパイルしたところ、エラーは発生しませんでした!

于 2012-02-08T15:46:04.050 に答える
1

c:\tempand に関連付けられている権利を確認することもできますc:\temp\sys(sys がコンパイル セッションの外に存在する場合)。

cacls c:\temp

また、(ここで提案されているように)、高度なオプションでコンパイラ フラグ -Bd を設定し、引数をコンパイラに調べてみてください。パスを指定して、存在しないファイルをコンパイルするつもりだったのでしょうか?

于 2008-12-31T13:12:49.637 に答える
0

コンパイラの [再構築] ボタンをクリックしないでください。[構築] ボタンのみをクリックしてください。これで問題が解決します

于 2016-01-26T09:08:16.503 に答える
0

まったく同じ問題がありました。プロジェクトのビルド中にウイルス対策を無効にすると、その問題は解決しました。考えられる永続的な解決策は、VS の一時ディレクトリを別の場所に設定し、アンチウイルスにそのディレクトリを除外するように指示することです。

于 2016-03-17T13:28:16.700 に答える