2010-09-02 162 views
0

我想創建一個彈出式應用程序,它將運行在我的sql數據庫上,並在用戶機器上每隔一個時間觸發一個彈出窗口來提出問題。該響應將被髮送回數據庫。使用Windows服務輕鬆實現Prety,但不使用POpup或Interface。 我該如何做到這一點? 感謝您的任何建議窗口應用程序或Windows服務?

回答

1

在用戶會話上進行服務顯示窗口需要相當多的工作。最簡單的做法是設置安裝程序以使程序在登錄時運行。

一個簡單的方法做,這是把一個鍵指向您的應用程序的可執行文件在註冊表中HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

+0

嗯,我唐噸必然需要一個Windows service..Basically我需要的方式,只是有一個彈出式的時間表,打開每天早上在C#創建任務的例子,當用戶登錄在他的電腦 – FasoService 2010-09-02 01:44:15

1

搭配會話0隔離在Vista和更高版本,它是不再可能創造一個彈出/接口從服務。如果您的程序必須作爲服務運行,那麼您需要同時運行用戶會話中運行的服務和客戶端應用程序。然後,您可以使用多種不同的方式在兩者之間進行通信。我最近使用.NET的遠程處理來解決這個問題。

+0

#操作系統上的好處可能是一個問題。 Ity不必作爲服務運行。但一個簡單的提醒。問題是我需要有一個用戶界面來與用戶溝通 – FasoService 2010-09-02 01:46:07

+0

如果它不需要作爲服務運行,那麼爲自己節省大量的工作(併爲用戶提供一些系統資源),並且不要運行它是這樣的。 – Brad 2010-09-02 01:49:39

1

如果您每天早上只需顯示彈出窗口,則不需要運行服務。 只需製作一個正常的Windows應用程序,然後使用Windows任務計劃程序(http://en.wikipedia.org/wiki/Task_Scheduler)將其安排爲每天早上運行。

創建任務時,您可以指定時間,可執行文件路徑,頻率&時間(每小時,每天,每月等)。您甚至可以指定是否在用戶登錄時運行任務(例如,在您希望任務運行時用戶未登錄)。

當您的程序安裝時,您可以自動創建任務。

編輯:這是http://community.bartdesmet.net/blogs/bart/archive/2008/02/23/calling-the-task-scheduler-in-windows-vista-and-windows-server-2008-from-managed-code.aspx

相關問題