この問題をどこからどのように始めればよいのかわかりません。C#を使用してアプリを作成しましたが、コンピューターの起動時にアプリを起動して実行を続けたいのですが、アプリケーションを閉じる唯一の方法は、コンピューターをシャットダウンすることです。
それを行うための最良の方法は何ですか?アプリケーションを非表示にして、ユーザーにポップアウトせずにバックグラウンドで実行し続けることはできますか?
常に真であるループを使用してそれを行うことはできますか?
この問題をどこからどのように始めればよいのかわかりません。C#を使用してアプリを作成しましたが、コンピューターの起動時にアプリを起動して実行を続けたいのですが、アプリケーションを閉じる唯一の方法は、コンピューターをシャットダウンすることです。
それを行うための最良の方法は何ですか?アプリケーションを非表示にして、ユーザーにポップアウトせずにバックグラウンドで実行し続けることはできますか?
常に真であるループを使用してそれを行うことはできますか?
説明している内容は通常、起動時に開始するように設定されたWindowsサービスを使用して処理されます。マシンの管理者がサービスを停止/再開する方法があるため、サービスはそのタイプの対話を適切に処理できる必要があることに注意してください。同様に、十分な特権を持つ人は、実行中のアプリケーションをいつでも強制終了できます。
Windowsサービスとして作成できます。
スタートメニューの検索バーに「task」と入力するか、[すべてのプログラム]-[アクセサリ]-[システムツール]を開いて、タスクスケジューラを開きます。
右側のペインから[基本タスクの作成]を選択すると、[基本タスクの作成ウィザード]が開きます。
新しいタスクの「名前」と「説明」を入力し、「次へ」をクリックします
イベント/タスクを実行するタイミングを選択し、[次へ]をクリックします。私は毎日選択しています。
アプリケーションを実行する正確な時刻を選択し、[次へ]をクリックします。
アクションを選択し、[次へ]をクリックします。ここで選択していますプログラムを開始します。
[参照]をクリックし、フォルダからexeファイルを選択して、[次へ]をクリックします。[完了]をクリックします。
en.wikipedia.org/wiki/Windows_serviceユーザーがプログラムを操作する必要がない限り、サービスとして作成してみることができます
すでに述べたWindowsサービスに加えて、コンピューターの起動ルーチンからバックグラウンドで実行できるシステムトレイアプリにすることができます。アプリが任意の時点でユーザーの操作を必要とする場合の利点は、システムトレイアプリでは実行できますが、Windowsサービスでは実行できません。
詳細については、この質問と受け入れられた回答を確認してください-起動時にシステムトレイにプログラムを配置します
Windowsスケジューラを使用して、少なくとも最新バージョンのWindowsでは、起動時またはログイン時にアプリを起動できます。導入されたWindowsのバージョンが頭から離れてわかりません。
他の回答が示唆するようにサービスを使用することもオプションです。Visual Studioには、作成されたWindowsサービス用のプロジェクトテンプレートがあります。Windowssc create
のコマンドプロンプトからサービスを作成するか、必要に応じてインストーラープロジェクトを作成できます。