16

だからしばらくの間、私はこの問題を抱え続けています:

Delphi 7 および Delphi XE2 を使用する Windows 7 (64 ビット) で、IDE 内からプログラムをコンパイルし、実行し、停止し、変更して再実行すると、次のエラー メッセージが表示されます。

[致命的なエラー] 出力ファイル「project1.exe」を作成できません

何が原因なのか、私にはわかりません。詳細をグーグルで検索しましたが、解決策が見つかりませんでした。

2 つの回避策があります。1 ~ 2 分待つか、project1.exe を手動で削除します。言うまでもなく、これは実行不可能です。

私はウイルススキャナーを持っておらず、ウイルスもありません。関連するフォルダへのフル アクセスを持っています。すべてを管理者として実行します。

では、これは何が原因なのでしょうか? そして、それを修正するにはどうすればよいですか?

4

15 に答える 15

16

解決策を見つけました。サービス「Application Experience」を無効にしたことが原因のようです。無効にすると、タスク「システム」は「任意の」実行可能ファイルをしばらくの間ロックします。

「アプリケーション エクスペリエンス」を再度有効にすることが解決策です。

経由で見つかりました:

https://superuser.com/questions/260375/why-would-system-continue-locking-executable-file-handles-after-the-app-has-exit

于 2012-08-08T07:34:59.147 に答える
5

アプリケーションを再構築しようとしても、project1.exeはまだ実行されているように感じます。たぶん、閉じるのに必要以上に時間がかかります。タスクマネージャを開いて、アプリケーションを閉じた後もプロセスproject1.exeがまだアクティブであるかどうかを簡単に確認できます。

于 2012-08-07T18:01:09.420 に答える
4

私は XE7 を使用していますが、「出力ファイルを作成できませんでした」という問題が時々発生します。sysinternals の Process Explorer を使用して、Android のデバッグ プロセス (adb.exe) がコンパイルされたバイナリにリーエンを持っていることを発見しました。理由はわかりません。私が構築しているこの特定の win32 プロジェクトには Android 構成はありません。とにかく、adb.exeを強制終了し、その後はすべて順調でした。

いくつかのポイント。ターゲットの出力ディレクトリがインデックス化されていませんでした。このスレッドの他の場所で言及されている「アプリケーション エクスペリエンス」は、ずっと実行されていました。ほとんどの場合、XE7 の不満にもかかわらず、出力バイナリを手動で削除できました。ある時点で気付きましたが、プロセス エクスプローラーで問題のある adb.exe を見つける機会を提供するシェル経由でバイナリを削除できませんでした。

于 2015-02-17T10:45:37.913 に答える
3

私は同じ問題に直面し、それを解決しました。一部の不明なケースでは、exe アプリケーションが実行されたままになっているようです。
解決策は簡単です。次の手順に従う必要があります。

  1. Windows タスク マネージャーを開く
  2. 「プロセス」タブに移動します
  3. 「すべてのユーザーからのプロセスを表示」をクリックすると、exeが表示されます
  4. それを選択し、「プロセスの終了」ボタンを押します

そして、すべてがうまくいくでしょう。

于 2015-01-29T08:00:27.820 に答える
1

(プロジェクト グループ ウィンドウで) アプリケーションを右クリックし、CLEAN を選択しました。

その後、アプリケーションをコンパイルできました。

于 2014-05-07T16:17:54.643 に答える
1

このリンクを見てください:
エラーを修正する方法: [dcc32 Fatal Error] F2039 Could not create output file X

このコマンドをすべてのプロジェクトに配置するのは、あなただけです。

于 2018-11-30T15:42:32.480 に答える
1

私の場合、ウイルス対策リアルタイム保護からプロジェクトフォルダーを除外することで問題は解決しました。

EXE ファイルを手動で削除できますか? いいえの場合、プロセスは memroy にあります。タスク マネージャーを開き、プロジェクトを選択し、タスクを終了します。アプリケーションの終了を妨げるコードにバグがあります。

プロセスリストにない場合は、次を試してください:

1-Windows のインデックス作成またはファイルのインデックス作成を行うサード パーティのファイル検索アプリケーションからフォルダーを除外します。

2-Windows 7 で、アプリケーション エクスペリエンス サービスを有効にします。

3-ウイルス対策リアルタイム保護からプロジェクトフォルダーを除外する

アップデート

上記のことをすべて実行しても、Windows 7でランダムにこのエラーが発生することがあります。特に、プロジェクトを何度もコンパイルすると、最初のコンパイルは問題ありませんが、10 回以上実行すると、この問題が発生します。発生する

于 2017-12-08T07:21:04.727 に答える
0

私の場合、存在しなかった出力フォルダーが原因でした。

したがって、[プロジェクト] -> [オプション] に移動し、[ディレクトリ] タブで、出力ディレクトリを既存のフォルダーに変更して、もう一度試してください。

于 2016-02-23T13:50:17.247 に答える
0

私のために働いた解決策は、プロジェクトオプションを変更します->リンクして、そのままにしてから、実行可能ファイルを手動で削除して解決しました。プロジェクト オプション -> リンク

于 2020-04-22T07:04:56.863 に答える
-1

互換モードをXP SP3にすることで直ったようです。これにより、Alt-P を開いてプロジェクト メニューが表示されないという別の問題も修正されました。

編集:アプリケーション エクスペリエンスを再度有効にする必要はありませんでした。あるべき場所でまだ死んでいます:)

Delphi ショートカットの [プロパティ] を右クリックし、[互換性] タブを選択します。[互換モードでプログラムを実行する: Windows XP (Service Pack 3)] を選択します。

(管理者としてこのプログラムを実行するボックスもチェックしましたが、そうしないことを選択することもできます。)

(これは、OPの質問によると、Delphi 7用であり、XE7用ではありませんが、それでも機能する可能性があります。)

互換性設定

于 2015-11-04T09:53:03.757 に答える