我正在使用AutoIt腳本來啓動和自動化GUI應用程序。我需要每小時激活腳本。AutoIt腳本是否作爲服務執行,用於GUI操作?
將AutoIt腳本(在GUI上執行操作)作爲服務使用時是否可以工作?該腳本將作爲服務運行(不是計劃任務)。
我正在使用AutoIt腳本來啓動和自動化GUI應用程序。我需要每小時激活腳本。AutoIt腳本是否作爲服務執行,用於GUI操作?
將AutoIt腳本(在GUI上執行操作)作爲服務使用時是否可以工作?該腳本將作爲服務運行(不是計劃任務)。
這聽起來像你想要使用計劃的任務,而不是服務。計劃任務可以在您登錄時每隔一小時執行一次,並且還應該能夠與您的桌面進行交互。請記住,如果您在啓用了用戶帳戶控制的情況下使用Vista/Windows Server 2008,那麼以普通用戶身份運行的任務無法與高級程序交互(發送輸入)。
如上所述,計劃任務就是您要查找的內容。要運行腳本作爲服務讀取此:
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)
您可以輕鬆地將自動腳本作爲自動論壇的服務using service.au3 written by archer運行。不幸的是,幸運的是,這是一項安全措施。服務需要獨立於當前用戶會話開始(登錄前)。它無法從那裏訪問發送API來輸入當前用戶會話的操作。聽起來更像是你需要一個計劃任務而不是一項服務。