実行ファイル(コンパイラ)の戻り値を取得するには?

解決


DBOX  2003-08-10 08:42:13  No: 4383

コマンドプロンプト上でdcc32.exeを使い、
ソースをコンパイルしたときに返されるエラーのログなどを
取得するにはどうしたら良いでしょうか?

https://www.petitmonte.com/bbs/answers?question_id=221  より
CreateProcessとFormatMessageを使って
「この操作を正しく終了しました。」や
「ファンクションが間違っています。」
を得ることができました。

GetLastError関数のような気がするのですが
どう使うのかよくわかりません。よろしくお願いします。


Halbow  URL  2003-08-10 09:35:01  No: 4384

Halbow です。

こういう機能をリダイレクトといいます。子プロセスとして、コンパイラなどの
コンソールアプリを起動し、その出力を取得することができます。
CreateProcess() と CreatePipe() を使います。

http://www.lmc-mediaagentur.de/dpool/tips/1034.htm

わたしは、ここのユニットファイルをそのままつかって、GUI アプリから
Perl を起動したり、C# のコンパイラを起動したりしたことがあります。
Delphi の IDE もコンパイラを起動するときはほぼ同じ機構をつかって
いるようです。


DBOX  2003-08-11 10:08:12  No: 4385

「リダイレクト」ですね。とても面白い機能なので
私もいろいろやってみたいと思います。
分かり易い回答ありがとうございました。


DBOX  2003-08-11 10:08:51  No: 4386

すみません「解決」忘れました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加