4

コンソール プログラムを非表示にしてバックグラウンドで動作させるにはどうすればよいですか? つまり、プログラムを見たいわけではありませんが、タスク マネージャーで実行されているのを見たいのです。

ありがとう。

4

6 に答える 6

3

Windows と .NET の場合:

出力タイプを「Windows アプリケーション」に設定すると、コンソール ウィンドウが開きません。

または、Windows サービスを作成することもできます...

于 2009-01-14T19:00:18.427 に答える
2

または、システム トレイに移動するものを作成することもできます。これにより、タスク マネージャーに移動する代わりに、システム トレイから直接 Kill Process を追加することもできます。.NET では、次を使用しました: http://www.developer.com/net/csharp/article.php/3336751

これにはいくつかの利点があります。

于 2009-01-14T19:08:59.983 に答える
0

Windows ではShowWindow(FindWindowA("ConsoleWindowClass", NULL), false)、コンソール ウィンドウを非表示にするために使用します。バックグラウンドで引き続き実行され、タスクバーには表示されません。

Taskmgr.exeただし、それを見つけてシャットダウンするには、タスク マネージャーなどを実行する必要があります。

#include <windows.h>  
#include <iostream>     
using namespace std;


int main () {   
    ShowWindow(FindWindowA("ConsoleWindowClass", NULL), false);
    while(true) {
                 // Do your hidden stuff here
    }   
return 0;
}
于 2016-09-05T12:36:24.800 に答える
0

MS Windows XP 環境の場合:

私の提案は、あなたが求めていることを実行するためにWindowsサービスを作成することを検討することですが、別の可能性は、msconfig内で何かを設定して、起動時にプログラムを実行するか、「スタート->すべてのプログラム->スタートアップ」内のスタートアップグループでプログラムを実行することです. " セクション。

Mac、Linux、またはその他の O/S を使用している場合、バックグラウンドでプログラムを実行する場所として機能する同様の機能が存在する場合があります。

于 2009-01-14T19:00:11.470 に答える
0

Windowsを使用している場合は、試してください

start command.exe

*nix を使用している場合

nohup command
于 2009-01-14T19:00:39.550 に答える
0

コンソール アプリケーションを変更してウィンドウレス アプリケーションにすることができないと仮定すると、コンソール プログラムを起動し、すべての標準入出力ストリームを「ダミー」ストリームにリダイレクトするウィンドウレス アプリケーションを作成できます。

于 2009-01-14T19:04:05.207 に答える