我寫了一個C#Winform應用程序,該應用程序在沒有用戶輸入的情況下執行任務,我想按計劃運行此程序(例如,每天凌晨1點)。我想在Azure上設置該程序,以便在雲上運行。如何按計劃在Azure中運行C#Winform?
到目前爲止,我已經成功地運行在Azure中Webjobs(下Azure的Web應用程序服務)C#控制檯應用程序和那些做工精細,但如果我嘗試上載和運行一個WinForm我得到的錯誤:
[03/03/2016 17:27:12 > 252553: ERR ] Unhandled Exception: System.Runtime.InteropServices.COMException: Error HRESULT E_FAIL has been returned from a call to a COM component.
[03/03/2016 17:27:12 > 252553: ERR ] at System.Windows.Forms.UnsafeNativeMethods.IWebBrowser2.Navigate2(Object& URL, Object& flags, Object& targetFrameName, Object& postData, Object& headers)
[03/03/2016 17:27:12 > 252553: ERR ] at System.Windows.Forms.WebBrowser.PerformNavigate2(Object& URL, Object& flags, Object& targetFrameName, Object& postData, Object& headers)
[03/03/2016 17:27:12 > 252553: ERR ] at System.Windows.Forms.WebBrowser.set_Url(Uri value)
[03/03/2016 17:27:12 > 252553: ERR ] at WebBrowserTest.Form1.InitializeComponent()
[03/03/2016 17:27:12 > 252553: ERR ] at WebBrowserTest.Form1..ctor()
[03/03/2016 17:27:12 > 252553: ERR ] at WebBrowserTest.MainStartup.Main()
[03/03/2016 17:27:12 > 252553: SYS INFO] Status changed to Failed
在日誌中。在代碼中,錯誤是特定於像我嘗試調用webBrowser.Navigate函數的行。
Uri uri = new Uri("https://www.website.com");
webBrowser1.Navigate(uri);
URL本身是絕對正確的,當我在我的桌面上運行它,它的工作原理,但我想講講在C#中的Webbrowser不起作用改變網址。
所以我的問題是,什麼Azure服務會讓我按計劃運行一個winform?如果不是Azure,我會帶亞馬遜或其他服務。 (我不希望有自己的專用物理計算機必須運行這個程序,感謝
標記你用'[STAThread主要方法]'屬性可能有幫助 –
只是好奇你爲什麼試圖從Web打開瀏覽器工作 - 沒有用戶界面可以訪問。 –
您可以將您的應用程序轉換爲控制檯應用程序嗎?我不認爲Winform會工作 –