我認爲可以以某種方式掛鉤Windows環境(特別是explorer.exe)並觸發特定的事情,例如啓動控制面板並使用它,就好像我一樣有鼠標(這意味着我點擊代碼界面)。需要幫助,找到我想要做的具體事情的名稱
基本上我想要做的是自動執行一些多餘的任務,我經常做,只是我不知道它是如何完成的,甚至是如何調用。任何人都可以指引我正確的方向?
謝謝!
我認爲可以以某種方式掛鉤Windows環境(特別是explorer.exe)並觸發特定的事情,例如啓動控制面板並使用它,就好像我一樣有鼠標(這意味着我點擊代碼界面)。需要幫助,找到我想要做的具體事情的名稱
基本上我想要做的是自動執行一些多餘的任務,我經常做,只是我不知道它是如何完成的,甚至是如何調用。任何人都可以指引我正確的方向?
謝謝!
忘掉「自動點擊」。 GUI工具只是控制系統的前端。你可以像控制系統一樣控制系統,這會容易得多。
巨大的可能性可以給你Microsoft Management Console。每個「管理單元」都可以通過COM模型訪問。其中一些有GUI前端,查找並激發「* .msc」文件(Windows目錄中的某處)以嘗試它們。
有many command line tools即「網絡」命令有巨大的網絡能力。
PowerShell可能是一個更好的選擇,而不是C#或C++,它是爲任務自動化設計的。如果你想主要是爲了發射控制面板,您可以使用現有的大多數控制面板小程序Rundll32的接口你可以很容易地使用COM,.NET,MMC ...
我只是在尋找想法如何與系統做一些互動,這個答案是最全面的。儘管我會補充一點,對於接近這個問題的任何人來說,從下面的SendMessage()答案都可以派上用場。 – Johnny 2010-08-01 18:14:40
Windows資源管理器有一個COM object model,您可以從C#和C++調用。 (MSDN上的大多數示例都使用Javascript或VBScript,我猜這不是您選擇的語言,但它們證明了API可以直接調用。)
AutoHotKey是專門爲此類設計的腳本環境的任務
。例如,參見http://www.osattack.com/windows-7/huge-list-of-windows-7-shell-commands/,http://support.microsoft.com/kb/167012或http://www.winvistaclub.com/t57.html。相應的API請參閱http://support.microsoft.com/kb/164787。
另一種選擇是使用control.exe(請參閱http://msdn.microsoft.com/en-us/library/cc144191.aspx和http://vlaurie.com/computers2/Articles/control.htm)。
如果谷歌更多,你會發現更多的例子,你可以自動化很多東西沒有使用一些常規的方式來自動化GUI。
或多或少是Win32中的最低級別,您可以使用SendMessage() API將原始點擊消息發送到感興趣的窗口。這將取決於您打算推動的應用的許多侵入性知識。但是,您可以輕鬆實現一個「點擊錄音機」,該錄音機可以重播用戶交互中捕獲的點擊序列。
是否需要Windows來控制光標?您可以繞過GUI並運行由控制面板訪問的應用程序。 – 2010-08-01 10:19:51
不,我只是想盡一切辦法,如果使用鼠標(例如,如果我記錄鼠標序列或什麼 - 至少它是點擊) 。 編輯:對不起,你說得對,但控制面板只是一個簡單的啞巴例子。該應用程序可能是瀏覽器本身,就像進入它的視圖菜單或類似的東西。) – Johnny 2010-08-01 10:21:00
我想你正在尋找鼠標/鍵盤宏。雖然我同意你可以通過調用應用程序來做你需要的一切。雖然也許不是 - 如果你需要鉤入DLL等等。 – 2010-08-01 10:37:47