




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、C# VS 2010 創(chuàng)建、安裝、調(diào)試 windows 服務(wù)(windows service)在一個應(yīng)用程序中創(chuàng)建多個 windows服務(wù)的方法和1083錯誤的解決方法法添加服務(wù)安裝成功 后自啟動功能1. 創(chuàng)建windows服務(wù)項目文件- 新建項目- 已安裝的模板- Visual C# - windows ,在右側(cè)窗口選擇windows服務(wù)2. 系統(tǒng)已經(jīng)為我們建立了一個Service1.cs組件,測試時我們就用它了如果要新件的話,右鍵項目- 添加- 新建項- windows服務(wù)。3. 在Service1.cs上,按F7 (右鍵查看代碼),打開代碼頁。加入我們測試 用的代碼。注意:下面的幾個方法
2、中的 str變量,為了我們一會兒調(diào)試時設(shè)置斷點用的!using System;using System.Diag no stics;using System.ServiceProcess;n amespace Win dowsService1public partial class Service1 : ServiceBasepublic Service1()In itializeComp onen t();In itService();/ III初始化服務(wù)參數(shù)/ private void In itService()base.AutoLog = false;base.Ca nShutdow
3、n = true;base.Ca nStop = true;base.Ca nPauseA ndCo ntinue = true;base.ServiceName = Service1;這個名字很重要,設(shè)置不一致會產(chǎn)生1083錯誤哦!protected override void OnStart(string args)string str =服務(wù)開啟;protected override void On Stop()string str =服務(wù)停止;protected override void OnContinu e()string str =服務(wù)繼續(xù)運(yùn)行;base. OnCon ti n
4、u e();protected override void On Pause()string str =服務(wù)暫停;base. On Pause();4. 建立服務(wù)的 安裝程序”4.1雙擊” Service1.cs,打開Service1.cs的視圖設(shè)計器4.2在視圖設(shè)計器中任意位置右鍵,選擇”添加安裝程序“4.3這時項目跟目下將出現(xiàn)一個 Project In staller.cs 的組件(如果是第一次添加”安裝程序的話)4.4 雙擊 ProjectInstaller.cs 打開 ProjectInstaller的視圖設(shè)計器4.5找到service In stallerl 組件,選中后按 F4鍵,
5、設(shè)置組件屬性。Descriptio n=測試服務(wù) 1 ”;DisplayName= “ Service1ServiceName= “Service1 ;”/這個值必須和 Win dowsService1.l nitService()方 法下設(shè)置的base.ServiceName 屬性一至。StartType為服務(wù)運(yùn)行類型,根據(jù)你的需要設(shè)置即可。(Manual :手動啟動,AutoMatic為自動啟動)4.6找到serviceProcessInstaller1組件,選中后按 F4鍵,設(shè)置組件屬性。Account= “LocalSystem;” /設(shè)置為其他的屬性在開啟服務(wù)時,會提示輸入用 戶名和
6、密碼4.7這樣就完成了一個服務(wù)的所有準(zhǔn)備,下面就是安裝和測試工作。5. 生成組件右鍵項目,選擇生成6. 安裝組件6.1使用InstallUtil.exe工具注冊組件服務(wù),文件位置在不同版本的framework中。我用的是4.0所以在一下位置C:Wi ndowsMicrosoft.NETFrameworkv4.0.30319l nstallUtil.exe6.2打開生成目錄,如果生成成功會有一個WindowsService1.exe 文件6.3在生成目錄根目錄下新加兩個bat (批處理文件),用于安裝和卸載服務(wù)新建一個文本文件,打開文件加入以下兩行命令C:Wi ndowsMicrosoft.NE
7、TFrameworkv4.0.30319l nstallUtil.exeWin dowsService1.exepause保存后關(guān)閉文本文件,之后將其重命名為 安裝服務(wù).bat文件,注意要修改后綴 名為.bat!再新建一個文本文件,打開文件加入以下兩行命令C:Wi ndowsMicrosoft.NETFrameworkv4.0.30319l nstallUtil.exe /uWin dowsService1.exepause保存后關(guān)閉文本文件,之后將其重命名為 卸載服務(wù).bat文件,注意要修改后綴 名為.bat!6.4安裝服務(wù).bat文件,安裝windows服務(wù)7. 安裝成功后需要手動開啟服務(wù)
8、,因為我們剛設(shè)置 serviceI nstaller1.StartType 為 Manual打開windows服務(wù)管理器,找到名為 Service1的服務(wù),右鍵屬性。點擊【啟 動】按鈕8. windows 調(diào)試8.1回到開發(fā)環(huán)境,選擇調(diào)試-附加到進(jìn)程,勾選”顯示所有用戶進(jìn)程“8.2找到 WindowsService1.exe 進(jìn)程(如果沒有點擊下刷新按鈕),選中后點擊附加到進(jìn)程”按鈕。8.3選中Service1.cs文件,后按F7打開代碼視圖8.4在所有str變量上添加調(diào)試斷點8.5回到windows服務(wù)管理器,找 Service1服務(wù)并選中它,在左側(cè)有一個 暫 ?!卑粹o。點擊一下這時,On
9、Pause方法下的斷點命中! 0K達(dá)到了調(diào)試的目的了9. 如果想一次安裝多個服務(wù),需要按照25的步驟多添加幾個服務(wù)就好了!問題及解決方案注冊成功后,啟動 Windows服務(wù) 時遇到錯誤:1083的解決辦法1. 查看Main()方法中是否啟動了指定的服務(wù)ServiceBase ServicesToR un;ServicesToR un = new ServiceBasenew Service1(),new Service2() /如果建立多個服務(wù)需要添加這段代碼;ServiceBase.R un (ServicesToRu n);2. 確保 ProjectInstaller.es 視圖設(shè)計器中的 serviceInstaller1 組件的 ServiceName 屬性與 Service1.cs 組件的 ServiceName 屬性一致添加服務(wù)安裝成功后自啟動功能1. 打開 ProjectInstaller.es 視圖設(shè)計器,選中serviceInstallerl 組件2. 打開serviceInstallerl組件的事件窗口,雙擊 Afterlnstall事件3. 在serviceInstaller1_Afterlnstall事件方法下添加如下代碼System.ServiceProcess.ServiceController sc = new System.Ser
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 氫氣購買合同范本
- 吉林省長春市汽開區(qū)2025年三下數(shù)學(xué)期末復(fù)習(xí)檢測試題含解析
- 陜西省西安市豐慶路小學(xué)2025年小升初總復(fù)習(xí)數(shù)學(xué)測試卷含解析
- 香港中文大學(xué)(深圳)《實驗設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 武漢城市學(xué)院《精度設(shè)計與測量技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 云南經(jīng)貿(mào)外事職業(yè)學(xué)院《中國現(xiàn)代文學(xué)作家解讀》2023-2024學(xué)年第二學(xué)期期末試卷
- 溫州醫(yī)科大學(xué)《角色動畫綜合實踐》2023-2024學(xué)年第二學(xué)期期末試卷
- 四川現(xiàn)代職業(yè)學(xué)院《公共建筑設(shè)計Ⅲ》2023-2024學(xué)年第二學(xué)期期末試卷
- 云南工貿(mào)職業(yè)技術(shù)學(xué)院《多媒體平面設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇安全技術(shù)職業(yè)學(xué)院《FPGA技術(shù)及應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 國自科項目申報協(xié)議書模板
- 行政或后勤崗位招聘筆試題及解答(某大型國企)2025年
- 2024年北京中考地理試卷
- 四川蜀道集團(tuán)筆試題
- 零食門市轉(zhuǎn)讓協(xié)議書范本
- 電氣自動化工程師考試題庫
- 小學(xué)利潤問題應(yīng)用題100道附答案(完整版)
- 醫(yī)院智能化系統(tǒng)內(nèi)網(wǎng)、外網(wǎng)及設(shè)備網(wǎng)系統(tǒng)拓?fù)鋱D-可編輯課件
- 小學(xué)生心理健康主題家長會
- 社交禮儀-儀態(tài)禮儀
- 安徽省2024年中考語文真題試卷【附答案】
評論
0/150
提交評論