CheckBox
オプション付きの小さなアプリケーションを持っていますが、Windowsで起動するように設定することができます。起動時にプログラムを起動するように設定するには
私の質問は、実際に起動時に実行するようにアプリを設定する方法です。
ps:私は.NET 2.0でC#を使用しています。
CheckBox
オプション付きの小さなアプリケーションを持っていますが、Windowsで起動するように設定することができます。起動時にプログラムを起動するように設定するには
私の質問は、実際に起動時に実行するようにアプリを設定する方法です。
ps:私は.NET 2.0でC#を使用しています。
の3つのオプション、:
HKey_Current_User\Software\Microsoft\Windows\CurrentVersion\Run
レジストリキーに追加します。ここでの唯一の問題は、レジストリへの書き込みアクセスが必要であることです。これは必ずしも利用可能ではありません。通常、インストーラーでレジストリキーを設定する必要があります。ウォークスルーの詳細については、http://www.windowsdevcenter.com/pub/a/oreilly/windows/ron/startup_0401.htmlを参照してください。一般設定の順に
"HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Run"にレジストリエントリを作成できますが、これはVistaでは別の方法で動作する可能性があることに注意してください。あなたの設定はUACのために「仮想化」されるかもしれません。
アプリケーションがWindowsの起動時(ユーザーのログイン時とは異なります)から起動するように設計されている場合は、Windowsサービスが必要です。アプリケーションをサービスとして記述するか、アプリケーションを起動するためだけに存在する単純なサービスを作成します。
サービスを書くことは厄介なことがあり、特定のケースでは受け入れられない制限が課される可能性があります。 1つの一般的な設計パターンは、フロントエンド/バックエンドのペアであり、作業を行うサービスと、サービスと通信して情報をユーザーに表示するアプリケーションフロントエンドです。
一方、ユーザーのログイン時にアプリケーションを開始したい場合は、Joel Coehoornがリストした方法1または2を使用できます。
非常に速く応答してくれた皆様、ありがとうございます。 Joel、私はあなたのオプション2を使用し、現在のユーザーの "実行"フォルダにレジストリキーを追加しました。 ここに私が興味を持っている人のために使ったコードがあります。
using Microsoft.Win32;
private void SetStartup()
{
RegistryKey rk = Registry.CurrentUser.OpenSubKey
("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
if (chkStartUp.Checked)
rk.SetValue(AppName, Application.ExecutablePath);
else
rk.DeleteValue(AppName,false);
}
chkStartUp変数とは何ですか? –
私は、@fernado Santiagoが遅いことを知っていますが、ユーザーがスタートアップからプログラムを追加または削除できるようにするのは彼のチェックボックスです。 –
これは私には役に立たない、それは私に許可エラーを与える。手動で権限を取得してから解放する方法はありますか? – CodeIt
アプリケーションがかかる何かの時間をしたり、インターネット上で更新をチェックするように、起動時にリソースを集中した場合、あなたはあなたのプログラムが起動した後、ビットを実行されるようにタイマーの実装を検討することをお勧めします。私のペットのかわいそうの1つは、起動時にすべてのアップデートをチェックするので、すべてのものをクロールにドラッグする、コンピュータ上のダースというプログラムです(特に私はあなた、iTunes、Javaを見ています)。 –