簡単なC#WINDOWSサービスプログラム
10884 ワード
今日プログラムをして、1つの通信プラットフォームを书いて、机能は1つのTCPの通信プラットフォームで、アプリケーションゲートウェイと通信して、一方でSQLSERVERの拡张のストレージの过程で、それはSQLライブラリの中から相応のフィールドを提出して、UDPを通じて通信プラットフォームにパケットをなくして、プラットフォームはパケットを受け取ってからアプリケーションゲートウェイにつながって、パケットを送ってそしてアプリケーションゲートウェイの領収書を受け取ります.実装にはwindowsサービスプログラムを書く準備ができており、機械が再起動してもログインしなくても実行でき、業務の正常な運行に影響を与えない.
C#WINDOWSサービスをする前に、C#WINDOWSサービスプログラムのC#での書き方を熟知しておきましょう.
1.VS.NET 2003でWINDOWSサービスプログラムを新規作成したプロジェクトWinSrv_A.
2.SERVICE 1を変更します.CSプロパティSERVICENAMEは、サービスマネージャ->名にサービス名が表示されます.
3.F 7を押してコードウィンドウに入り、中には2つのリロード関数があります.
ここでは、サービスの開始と終了の時間を記録する機能を簡単にします.ログドキュメントのように書きます.
4.設計ウィンドウに戻って右クリックし、「インストーラの追加」を選択してserviceInstaller 1とserviceProcessInstaller 1の2つのコンポーネントを生成します.
ServiceInstaller 1のプロパティServiceNameをサービス名に書き換え、起動モードをAUTOMATICに設定します.
ServiceProcessInstaller 1の属性accountをLocalSystemに書き換える
5.リンク生成サービスプログラムをコンパイルします.
6.使用するNetframeworkツールINSTALLUTILサービスプログラムをインストールすればよい.
これで、C#で簡単なC#WINDOWSサービスプログラムを書きました.
Windowsサービス
文章の分類:.Netプログラミング
1>Windowsサービスプロジェクトの新規作成
2>サービス1を選択し、ビューインタフェースで右クリック-->[インストーラの追加]
3>
ProjectInstallerが表示されます.csファイル、ProjectInstallerビューインタフェースには、2つのコントロールITPUBパーソナルスペース+ROb(@O[)G serviceInstaller 1:DescirptionとServiceNameの2つのプロパティを変更できます.それぞれ、サービスの説明とサービス名ITPUBパーソナルスペースi 4 E)}qu#iz/I(Rl serviceProcessInstaller 1:Accountプロパティを変更する必要があります.このサービスを実行するアカウントのタイプを表します.一般的にはLocalSystemに変更する必要があります.
今まで私たちの前期の仕事はすべて完成して、それからあなたはサービス1.csにはあなたのサービスコードが書かれています.それぞれ
OnStart(string[]arg)とOnStop()メソッドは、ここで実行するプログラムを書くことができます.
そして私たちは実行します.Netの配布ツールinstallutil.exeはwindowsサービスに追加します(このツールのデフォルトはC:/WINDOWS/Microsoft.NET/framework/v 2.0.50727ディレクトリ)
次のコードをtxtファイルに保存し、batファイルとして保存し、exeファイルと一緒に置くと、ダブルクリックして直接サービスをインストールできます.
インストール:
C#コード @echo off echo wjboy 49サービスインストール cd C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727 C: installutil D:/Debug/WindowsServiceZol.Exce--注D:/Debug/はあなたのwindowsサービスのパス です. echo成功 echo. & pause
アンインストール:
installutil D:/Debug/WindowsServiceZolに変更するだけです.exe/uでいいですよ.
インストール後に自動的に起動し、ProjectInstallerに次の文を追加します.
C#コード private void serviceInstaller1_AfterInstall(object sender, InstallEventArgs e) { Process p = new Process(); p.StartInfo.FileName = "cmd.exe"; p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardInput = true; p.StartInfo.RedirectStandardOutput = true; p.StartInfo.RedirectStandardError = true; p.StartInfo.CreateNoWindow = true; p.Start(); string Cmdstring = "sc start wjboy49";//CMDコマンド p.StandardInput.WriteLine(Cmdstring); p.StandardInput.WriteLine("exit"); }
C#WINDOWSサービスをする前に、C#WINDOWSサービスプログラムのC#での書き方を熟知しておきましょう.
1.VS.NET 2003でWINDOWSサービスプログラムを新規作成したプロジェクトWinSrv_A.
2.SERVICE 1を変更します.CSプロパティSERVICENAMEは、サービスマネージャ->名にサービス名が表示されます.
3.F 7を押してコードウィンドウに入り、中には2つのリロード関数があります.
- //protected override void OnStart(string[] args)
- //{...} //
- //protected override void OnStop()
- //{...}//
ここでは、サービスの開始と終了の時間を記録する機能を簡単にします.ログドキュメントのように書きます.
- protected override void OnStart(string[] args)
- {
- // TODO: 。
- String s = System.DateTime.Now.ToString();
- if(!File.Exists("c://srvlog.txt"))
- {
- StreamWriter sr = File.CreateText("c://bbbirdlog.txt");
- sr.WriteLine("-------------------------START SRV---------------------");
- sr.WriteLine (" {0} ",s);
- sr.WriteLine (" {0} or {1}, .",1, 4.2);
- sr.Close();
- }
- else
- {
- StreamWriter sr = File.AppendText("c://bbbirdlog.txt");
- sr.WriteLine("-------------------------START SRV---------------------");
- sr.WriteLine (" {0} ",s);
- sr.WriteLine (" {0} or {1}, .",1, 4.2);
- sr.Close();
- }
- }
-
- ///
- /// 。
- ///
- protected override void OnStop()
- {
- // TODO: 。
- String s1 = System.DateTime.Now.ToString();
- if(!File.Exists("c://srvlog.txt"))
- {
- StreamWriter sr = File.CreateText("c://bbbirdlog.txt");
- sr.WriteLine("-------------------------STOP SRV---------------------");
- sr.WriteLine (" {0} ",s1);
- sr.Close();
- }
- else
- {
- StreamWriter sr = File.AppendText("c://bbbirdlog.txt");
- sr.WriteLine("-------------------------STOP SRV---------------------");
- sr.WriteLine (" {0} ",s1);
- sr.Close();
- }
- }
4.設計ウィンドウに戻って右クリックし、「インストーラの追加」を選択してserviceInstaller 1とserviceProcessInstaller 1の2つのコンポーネントを生成します.
ServiceInstaller 1のプロパティServiceNameをサービス名に書き換え、起動モードをAUTOMATICに設定します.
ServiceProcessInstaller 1の属性accountをLocalSystemに書き換える
5.リンク生成サービスプログラムをコンパイルします.
6.使用するNetframeworkツールINSTALLUTILサービスプログラムをインストールすればよい.
これで、C#で簡単なC#WINDOWSサービスプログラムを書きました.
Windowsサービス
文章の分類:.Netプログラミング
1>Windowsサービスプロジェクトの新規作成
2>サービス1を選択し、ビューインタフェースで右クリック-->[インストーラの追加]
3>
ProjectInstallerが表示されます.csファイル、ProjectInstallerビューインタフェースには、2つのコントロールITPUBパーソナルスペース+ROb(@O[)G serviceInstaller 1:DescirptionとServiceNameの2つのプロパティを変更できます.それぞれ、サービスの説明とサービス名ITPUBパーソナルスペースi 4 E)}qu#iz/I(Rl serviceProcessInstaller 1:Accountプロパティを変更する必要があります.このサービスを実行するアカウントのタイプを表します.一般的にはLocalSystemに変更する必要があります.
今まで私たちの前期の仕事はすべて完成して、それからあなたはサービス1.csにはあなたのサービスコードが書かれています.それぞれ
OnStart(string[]arg)とOnStop()メソッドは、ここで実行するプログラムを書くことができます.
そして私たちは実行します.Netの配布ツールinstallutil.exeはwindowsサービスに追加します(このツールのデフォルトはC:/WINDOWS/Microsoft.NET/framework/v 2.0.50727ディレクトリ)
次のコードをtxtファイルに保存し、batファイルとして保存し、exeファイルと一緒に置くと、ダブルクリックして直接サービスをインストールできます.
インストール:
C#コード
@echo off
echo wjboy49
cd C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727
C:
installutil D:/Debug/WindowsServiceZol.exe -- D:/Debug/ windows
echo
echo. & pause
アンインストール:
installutil D:/Debug/WindowsServiceZolに変更するだけです.exe/uでいいですよ.
インストール後に自動的に起動し、ProjectInstallerに次の文を追加します.
C#コード