コンソールアプリでDOSウインドウを閉じないようにするには?

解決


ryo  2005-02-01 11:54:12  No: 56237  IP: 192.*.*.*

コーディングに関してではないので場違いかもしれませんが
他によい掲示板がなかったので質問させてください
コンソールアプリケーションの方なのですが、
通常の設定だと、ダブルクリックで実行すると
実行終了後にコンソールが閉じてしまいますよね
あれを閉じないようにしたいのですが
方法はないのでしょうか
(16ビットコンパイラで作るとプロパティで設定できるのですが)

編集 削除
KING・王  2005-02-01 12:32:26  No: 56238  IP: 192.*.*.*

はずしていたら、ごめんなさい。

mainのreturnの前に関数等で、キー入力待ち状態にしては?

私はよく、次のような関数を用意して、main()のreturnの前などに、
このHitAnyKey()を入れるようにしています。

#include <conio.h>

void HitAnyKey( void )
{
    printf( "\nPlease Hit Any Key\n" );//キー入力を促すメッセージを表示

    while( !_kbhit( ) ){ // キー入力を待つ
        Sleep( 100L );// 100msec程度のウェイトをおいておく
    }//while()

    return;
}

編集 削除
YuO  2005-02-01 14:04:50  No: 56239  IP: 192.*.*.*

プログラムが終了したら閉じる,という動作自体を変更することは出来ません。
コマンドプロンプトから実行したり,cmd /kを使って実行すれば,
とりあえず終了してもコマンドプロンプトは残ります。

編集 削除
ryo  2005-02-01 14:39:13  No: 56240  IP: 192.*.*.*

回答ありがとうございます。
mainのreturnの前に関数等で、キー入力待ち状態にしては?

>    #include <conio.h>
>    while( !_kbhit( ) ){ // キー入力を待つ
>        Sleep( 100L );// 100msec程度のウェイトをおいておく
>    }//while()

上記の内容を追加して実行して見たのですが
やはり、直ぐに閉じてしまいます。
私も上記と同様な処理(getsやscanf等)を入れて見たのですが
それでも駄目でした。
他に何か特別な指定がいるのでしょうか?

>  プログラムが終了したら閉じる,という動作自体を変更することは出来ません。
>  コマンドプロンプトから実行したり,cmd /kを使って実行すれば,
>  とりあえず終了してもコマンドプロンプトは残ります。
やはりそうですか
基本的にexeファイルに処理対象ファイルをドラッグして処理したいので
ダブルクリックでできるとうれしいです。

編集 削除
ryo  2005-02-01 15:15:38  No: 56241  IP: 192.*.*.*

すいません。うまくいきました。
(原因不明:色々変更してみた後に戻したらうまくいった)
ありがとうございます。

編集 削除