プロが教えるわが家の防犯対策術!

<質問内容>
プログラム実行時に自動で起動するコマンドプロンプトを表示させたくないのですが方法をご存知でしょうか?
最小化ではなく非表示にしたいと考えています。
このアプリケーション終了するには、タスクマネージャのプロセスからしか消せないようにする目的です。
(不意にアプリを落としてしまうことを避けるため)

<環境>
Windows 2000
Microsoft Visual C++ 6.0

A 回答 (1件)

★なぜ?


・ウインドウを出したくないなら WinMain() から始めれば良い。
 なぜコマンド・プロンプトで動くアプリを作成しているのですか?
 コンソール・アプリケーションで作るとコンソール・ウインドウが
 自動的に作成されます。起動後に非表示にするには何らかの方法で
 ウインドウのハンドルを取得します。
 取得方法は
 (1)SetConsoleTitle()関数で一意の『タイトル文字列』を設定
 (2)Sleep()関数で100msほどウェイトを入れる
 (3)FindWIndow()関数で(1)で設定した『タイトル文字列』を取得
 (4)(3)で得たウインドウ・ハンドルを使って非表示(ShowWindow使用)
 これでコンソール・アプリケーションを起動時に非表示に出来ます。
 でも、あまりスマートではないです。起動時に一瞬表示されたり…。
 このため最初から WinMain() の GUI アプリケーションで作成することを
 お勧めします。常駐ソフトならこの方法が一般ですから。
 ※設計を見直すべし。
    • good
    • 0
この回答へのお礼

Oh-Orangeさんありがとうございます。
単純にWinMain()関数を知りませんでした。
調べて見ます。

お礼日時:2008/02/19 09:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています