2009-03-06 155 views

回答

1

這聽起來像你想要使用計劃的任務,而不是服務。計劃任務可以在您登錄時每隔一小時執行一次,並且還應該能夠與您的桌面進行交互。請記住,如果您在啓用了用戶帳戶控制的情況下使用Vista/Windows Server 2008,那麼以普通用戶身份運行的任務無法與高級程序交互(發送輸入)。

2

如上所述,計劃任務就是您要查找的內容。要運行腳本作爲服務讀取此:

Q4。我如何將腳本作爲服務運行? 這也是一個帶有多個答案的問題,它們都不是唯一的方法。問自己的第一個問題是您是否希望將服務安裝在除您自己之外的其他計算機上。

A1. If you only wish to install the service on your own computer, The easiest way to do this is to use Pirmasoft RunAsSvc. This program makes services easy to install and easy to remove when necessary. 
A2. If you wish to make the service available to anyone running your script, you can use SRVANY.EXE and ServiceControl.au3. You can then use this code to install your script as a service: 
    #include "ServiceControl.au3" 
    $servicename = "MyServiceName" 
    _CreateService("", $servicename, "My AutoIt Script", "C:\Path_to_srvany.exe", "LocalSystem", "", 0x110) 
    RegWrite("HKLM\SYSTEM\CurrentControlSet\Services\" & $servicename & "\Parameters", "Application", "REG_SZ", @ScriptFullPath) 

or use the following code to delete this service: 
    #include "ServiceControl.au3" 
    $servicename = "MyServiceName" 
    _DeleteService("", $servicename) 

有一個警告設立的AutoIt作爲一種服務。如果服務未使用上述代碼安裝,則必須具有「允許服務與桌面交互」設置,否則自動化功能(如Control *或Win *)將不起作用。爲了保證服務確實有此設置,使用下面的代碼: 的RegWrite( 「HKLM \系統\ CurrentControlSet \服務[服務名稱]」, 「類型」, 「REG_DWORD」,量0x110)

摘自關於AutoIt論壇的常見問題。 www.autoitscript.com/forum/index.php?showtopic=37289)

4

您可以輕鬆地將自動腳本作爲自動論壇的服務using service.au3 written by archer運行。不幸的是,幸運的是,這是一項安全措施。服務需要獨立於當前用戶會話開始(登錄前)。它無法從那裏訪問發送API來輸入當前用戶會話的操作。聽起來更像是你需要一個計劃任務而不是一項服務。

相關問題