2013-04-20 40 views
0

其實我想運行exe文件(My Job.exe)通過C#窗口服務,但是窗口服務應該在我啓動計算機時自動啓動?如何在C#中添加窗口服務/安裝它並通過此窗口服務運行exe(My Job.exe)?

我已經手動添加了Window Service(MyService)。我也安裝了我的應用程序項目,我也添加了這項服務,以便在安裝我的應用程序時也可以進行安裝。 我serviceInstaller1財產

StartType=Automatic;ServiceName=MyService. 

我也有serviceProcessInstaller1與物業

Account=LocalSystem; 

當我運行此我Applicationo被安裝,但爲MyService還是沒有得到安裝,我也看不出它的服務計算機管理。

可以在任何的身體,請幫助我,我已經花費上有兩個天,但沒有找到合適的理念爲指導。提前致謝。

+0

您使用的是哪個版本的.NET Framework?你使用什麼VisualStudio?什麼操作系統將被安裝服務?也許你需要使用InstallUtil.exe註冊服務。 – TRMI 2013-04-20 05:20:24

+0

我正在使用.Net 4.0 with visual Studio 2010.service將安裝在Window XP上,但稍後也將安裝在Window 7和8上。 – 2013-04-20 05:23:46

+1

http://cherupally.blogspot.in/2009/09/how-to -create-setup-project-to-install.html可能有幫助 – Mogli 2013-04-20 05:25:29

回答

0

你的應用程序是如何安裝的?你爲它創建了一個安裝程序(.msi文件)嗎?這聽起來像你試圖實現你自己的安裝程序,而不是使用現有的工具來做到這一點。

我建議Advanced Installer。它是一個非常強大的安裝程序生成器,並具有您在免費版本中所需的所有功能,更重要的是,它非常易於使用。使用此工具,您可以創建安裝嚮導,以便修補和卸載軟件(包括服務,註冊表值,文件等)。

+0

我已經在VS2010中爲此創建了新的安裝項目,通過以下步驟添加 - >新建項目 - >設置和部署 - > Visual Studio安裝程序 - >安裝項目。當我運行它時,運行我的應用程序,但不包括我也包括在內的服務。 – 2013-04-20 05:47:58

0

我最近有一個項目在VS2010和.Net 4.5中使用windows服務,用戶操作系統將是Windows Server 2008.我無法長時間創建完全功能的安裝,但我仍然沒有,但請求發生了改變不需要安裝文件。但我可以給你建議「如何做」。 如果您沒有購買InstallShield版本,則需要找到其他一些用於創建安裝文件的程序。 對於安裝你只需要複製你的服務和一個批處理文件女巫的.exe文件輸出將旁邊內容:

@ECHO off 

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe" "%~dp0%<filename>.exe" 

pause 

,然後你需要管理權限運行該批處理文件。 這兩個文件(.exe和.bat)必須位於同一個文件夾中。 您可以刪除pause命令,但您不會看到服務註冊是否成功。 確保您已在PC上安裝了目標.NET Framework。

我希望這會幫助你。

0

如果你只需要在系統啓動時,你可以你的EXE添加到Windows Task Scheduler運行您的exe文件(我Job.exe)。

是否有使用Windows服務的任何特定的目的是什麼?

,我說這樣做的原因是,你有各種各樣的選擇基於共同的重複事件,即在計算機啓動時或當用戶登錄到EXE調用你如下

  • 時間表上。
  • 基於日曆進行計劃,即每日,每週,每月或一次。
  • 高級選項,如基於事件執行等。