• 締切済み

プロセスのファイルディスクリプタ(Windows)

#include<stdio.h>と記述すると実行時に標準入出力が オープンされますが、標準出力がcommand.exe上に出力される仕組みが いまいちよくわかりません。どなたか詳しく教えてもらえないでしょうか

みんなの回答

  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.2

★アドバイス ・コンソール API には詳しくありませんが、参考になりそうなリンクを貼っておきます。 ・http://www.winapi-database.com/Console/index.html→『コンソール関数』 ・http://support.microsoft.com/default.aspx/kb/190351/ja→『コンソール プロセスを生成して標準ハンドルをリダイレクトする方法』 ・http://www.microsoft.com/japan/msdn/accessibility/general/atg_consoleaccessibility.aspx→『コンソール アクセシビリティ』 ・以上。

すると、全ての回答が全文表示されます。
  • aris-wiz
  • ベストアンサー率38% (96/252)
回答No.1

>標準出力がcommand.exe上に出力される仕組み 標準入出力と言うのは、そのハードウェアの デフォルトの入出力先のことを言います。 UNIX系OSでは、それらがオープンされた時、 コンソールへの割り当てが行われます。 つまり、何故コンソールに出力されるかというと、 「標準出力のデフォルトがコンソールに割り当てられているから」 と言うことになります。 #が、何故デフォルトがコンソールなのかは #作った人しか判らない気します。。。

shred
質問者

お礼

回答ありがとうございますm(_ _)m mycommand.exe(自作シェル)を作成してcommand.exeと同様な機能をつけることはできるでしょうか??このとき、標準出力はmycommand.exeのクライアント領域に出力されるとします。 それともcommand.exeはWindowsにとってただのプログラムではない特別なプログラムなのでしょうか??

すると、全ての回答が全文表示されます。

関連するQ&A