Windowsサービスの作成、インストール、デバッグ方法
3059 ワード
Windowsサービスアプリケーションシーン:
(1)定時操作データベース、例えば定時メール送信等
(2).net Remotingでwindowsサービスを利用してHost(未テスト)作成手順:1. 新規プロジェクト2. 利用可能なプロジェクトテンプレートのリストからWindowsサービス3を選択する. バックグラウンドコードを開き、OnStartメソッドに次のコードセグメントを追加します.
public System.Timers.Timer time2;
4. このサービスプログラムをデザインビューに切り替えます 5. デザインビューを右クリック[インストーラを追加]を選択 6. 追加したばかりのProjectInstallerのデザインビューに切り替えます 7. ServiceInstaller 1コンポーネントのプロパティを設定します. 1) ServiceName = MyService 2) StartType = Automatic(起動自動運転) 8. ServiceProcessInstaller 1コンポーネントのプロパティの設定 Account = LocalSystem 9. インストールサービス:コマンド「InstallUtil.exe」の実行 MyWindowsService.exeは、このサービスを登録し、適切な登録項目を確立します.
10. デスクトップの「マイコンピュータ」を右クリックし、「管理」を選択すると、コンピュータ管理コンソール11に電話することができる. 「サービスとアプリケーション」の「サービス」セクションでは、Windowsサービスがサービスリストに含まれていることがわかります. サービスを右クリックして起動するとサービスを起動できます13.アンインストールサービス:InstallUtil.exe/u MyWindowsService.exe
14:サービスをデバッグし、OnStartメソッドに次のコードセグメントを追加します.
OnStart起動サービスコードの下にブレークポイントを挿入し、vsメニューから「デバッグ」-「プロセスに添付」を選択し、「すべてのユーザーのプロセスを表示」をチェックし、新しくインストールするデバッグするサービスを選択し、「追加」をクリックすればよい.
(1)定時操作データベース、例えば定時メール送信等
(2).net Remotingでwindowsサービスを利用してHost(未テスト)作成手順:1. 新規プロジェクト2. 利用可能なプロジェクトテンプレートのリストからWindowsサービス3を選択する. バックグラウンドコードを開き、OnStartメソッドに次のコードセグメントを追加します.
public System.Timers.Timer time2;
protected override void OnStart(string[] args)
{
// TODO: 。
time2 = new System.Timers.Timer();
time2.Interval = 1000 * 5;
time2.Elapsed += new System.Timers.ElapsedEventHandler(AddUser);
time2.Enabled = true;
}
private void AddUser(object sender, System.Timers.ElapsedEventArgs e)
{
using (SqlConnection conn = new SqlConnection(@"Data Source=PC-201108111018\SQLEXPRESS;initial catalog=test;uid=sa;pwd=sa"))
{
try
{
SqlCommand comm = new SqlCommand("insert into [user] values(' ',100,getdate())", conn);
conn.Open();
if (comm.ExecuteNonQuery() > 0)
{
SqlCommand comm2 = new SqlCommand("insert into [log] values(' ',getdate())", conn);
comm2.ExecuteNonQuery();
}
else {
SqlCommand comm2 = new SqlCommand("insert into [log] values('"+e.+"',getdate())", conn);
comm2.ExecuteNonQuery();
}
}
catch (Exception)
{
SqlCommand comm2 = new SqlCommand("insert into [log] values(' ',getdate())", conn);
comm2.ExecuteNonQuery();
}
}
}
4. このサービスプログラムをデザインビューに切り替えます 5. デザインビューを右クリック[インストーラを追加]を選択 6. 追加したばかりのProjectInstallerのデザインビューに切り替えます 7. ServiceInstaller 1コンポーネントのプロパティを設定します. 1) ServiceName = MyService 2) StartType = Automatic(起動自動運転) 8. ServiceProcessInstaller 1コンポーネントのプロパティの設定 Account = LocalSystem 9. インストールサービス:コマンド「InstallUtil.exe」の実行 MyWindowsService.exeは、このサービスを登録し、適切な登録項目を確立します.
10. デスクトップの「マイコンピュータ」を右クリックし、「管理」を選択すると、コンピュータ管理コンソール11に電話することができる. 「サービスとアプリケーション」の「サービス」セクションでは、Windowsサービスがサービスリストに含まれていることがわかります. サービスを右クリックして起動するとサービスを起動できます13.アンインストールサービス:InstallUtil.exe/u MyWindowsService.exe
14:サービスをデバッグし、OnStartメソッドに次のコードセグメントを追加します.
protected override void OnStart(string[] args)
{
#if DEBUG
Debugger.Launch(); //Launches and attaches a debugger to the process.
#endif
// TODO: 。
}
OnStart起動サービスコードの下にブレークポイントを挿入し、vsメニューから「デバッグ」-「プロセスに添付」を選択し、「すべてのユーザーのプロセスを表示」をチェックし、新しくインストールするデバッグするサービスを選択し、「追加」をクリックすればよい.