こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VC++で作成したプログラムが2重に実行される

 バージョンはVC++ 2010 Express SP1、OSはWin Vista 32bitです。例えばWin32コンソールアプリケーションのプロジェクトを作成し、以下のようなソースコードをビルドしたとします。

#include <iostream>
#include <cstdlib>
using namespace std;

int main() {
cout << "Hello, world!" << endl;
system("PAUSE");
}

 作成されたexeファイル(添付画像の1.exe)をダブルクリックで起動すると、画像のように2つのプロセスが開始され、1つのウィンドウが開きます。何かキーを押すとこのウィンドウが閉じるわけですが、その時、メモリ使用サイズの大きい方のプロセスが消え、小さい方のプロセスだけ残ります。そして、閉じたウィンドウと同じ"Hello, world!"と表示されたウィンドウがまた開きます。これを閉じるとプロセスも完全に終了します。
 どうやら、同じプログラムが意図せず2重に実行されてしまうみたいなのです。Debugモードでも、Releaseモードでも、上記の例と全く異なるソースコードでも、Win32プロジェクトでも同様の現象が生じてしまいます。以前は1つのプロセスとしてプログラムが実行されていたのではなかったかと思うのですが、どの設定項目が影響してこの現象を生じてると考えられますか?あるいは、コンパイラが壊れてるのでしょうか(以前、VC++ 2008 Expressと共生させていたことがあります)?どうか皆様のお知恵をお貸しください。

投稿日時 - 2014-04-07 23:00:16

QNo.8545887

困ってます

質問者が選んだベストアンサー

確認だけど
「実はシングルクリックで実行するようになっている」
とかいうオチはないよね?

投稿日時 - 2014-04-07 23:29:32

補足

exeファイルを右クリックメニューの「開く」を選択して実行しても同様の現象が起きますし、VC++の「デバッグ開始」や「デバッグなしで開始」で実行しても同様の現象が起きますので、そのオチはありません。ご心配ありがとうございます^^;

投稿日時 - 2014-04-08 00:15:10

お礼

結局、原因はavastというアンチウイルスソフトのディープスクリーンという機能だったみたいです。大騒ぎしてすいません。アドバイスをくださり、ありがとうございました。

投稿日時 - 2014-04-10 21:20:34

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)