1

7 zip の自己解凍型 exe があり、以下のようにアーカイブされています。

[mainfolder]
         start.exe (a C++ bootstrapper)
         [subfolder] (contains all my applications assemblies and executable

これで、config.txt が start.exe を実行し (「RunProgram」を介して)、実際に [サブフォルダー] で実行可能ファイルを実行します。「start.exe」が開始されるまでに[サブフォルダー]内のすべてのファイルの抽出がまだ完了していないため(抽出場所にすべてのファイルが見つかりました)、これは失敗しています。

もう1つの奇妙なことは、構成ファイルのサブフォルダー内のexeを実行するように指定した場合、つまり「RunProgram」に指定した場合、または少なくとも「RunProgram」にランダムなテキストを指定した場合、[サブフォルダー]内のすべてのファイルの抽出が完了することです。抽出が完了しました。

[メインフォルダー] でファイルを実行することを好む場合、[サブフォルダー] が不完全に抽出される原因となるのは何でしょうか? 助けてください。

4

1 に答える 1

1

それは間違った分析でした。問題は抽出にありませんでした..常に適切に抽出していました。しかし、ブートストラップを呼び出そうとすると、別のexeを呼び出して終了していたため、SFXはプロセスの実行が終了し、ファイルを削除していると考えていました。

そのため、diff アプリケーションからの一連の呼び出しがある場合は、少なくとも (「RunProgram」、「ExecuteFile」または任意のものから) 開始したアプリケーションが、必要なすべてのアプリケーションが終了するまで存続するように注意する必要があります。

于 2014-09-15T12:02:45.390 に答える