我想在VB.Net中使用visual studio express 2012創建一個Windows服務。基本上我想要的是服務發送一個HTTP GET每N分鐘請求一個預定義的URL。有點像心跳,所以我們知道服務器正在運行並聯機。Visual Studio Express 2012 - Windows服務VB.net - 訪問計時器上的URL
我已經儘可能創建Windows服務器,將項目構建爲.EXE,然後使用InstallUtil將其安裝爲服務。這似乎工作,我按照教程在這裏:http://www.dotheweb.net/2009/11/creating-services-with-vb-express/
我刪除了一些代碼從教程寫入Windows系統日誌(或者更確切地說,我認爲它創建一個新的日誌),因爲這是行不通的與我的版本的Visual Studio出於某種原因。
我使用下面的代碼來發送HTTP請求:
Dim url As String = "http://someURL.com/test.php"
Dim request As WebRequest = WebRequest.Create(url)
request.Method = "GET"
Dim response As WebResponse = request.GetResponse()
的PHP文件只是向我發送一封電子郵件,當它被訪問。
當我從Visual Studio中運行項目時(如果我忽略通知我一個Windows服務項目不應該像這樣運行並讓它繼續運行,我開始收到電子郵件),代碼就可以正常工作。
但是,當我啓動Windows服務本身時,我沒有收到任何電子郵件,但是我沒有在任何地方出現任何錯誤。