2014-01-30 60 views
1

我需要模擬鼠標點擊/觸摸屏壓力機和按鍵在視窗8.1.NET 4.5WPF)。這是針對某些流程/應用程序(全部是我正在開發的應用程序的外部)的粗略無人值守自動化,因此沒有任何公開允許我以任何其他方式進行操作。模擬鼠標器/觸摸式鍵盤和

幾年前在.NET 2.0和WinForms中,我使用SendInput API做了類似的事情。

這仍然是在.NET 4.5和WPF中實現這一點的事實上的方法,或者是否有更新的東西出現,或者甚至可能是用於SendInput的WPF包裝?

+0

看看[C#模擬按鍵](http://stackoverflow.com/questions/7307868/c-sharp-simulate-key-press)後。如果這沒有幫助,請查看CodePlex上的[Windows輸入模擬器(C#SendInput Wrapper - 模擬鍵盤和鼠標)](http://inputsimulator.codeplex.com/)項目。我的最終產品是MSDN中的[如何在代碼中模擬鼠標和鍵盤事件](http://msdn.microsoft.com/zh-cn/library/vstudio/ms171548(v = vs.100).aspx)頁面,它使用'SendKeys'類來做你想做的事。 – Sheridan

回答

1

這種自動化可以完成微軟的UI自動化框架。爲了更好地理解看看http://msdn.microsoft.com/en-us/library/ms747327(v=vs.110).aspx

A也很好的介紹可以在http://blog.functionalfun.net/2009/06/introduction-to-ui-automation-with.html

+0

這將完全適用於任何應用程序?舉個例子。這將工作模擬鼠標點擊在瀏覽器中運行的Flash應用程序? – Cheetah

+0

我不認爲這會起作用。對於這樣的情況,我會給Selenium提供閃光硒擴展接近的外觀。 – fschaeffler

+0

Selenium是爲Web瀏覽器IIRC。我正在尋找一種適合所有人的解決方案。目前這是'SendInput'。感謝迄今的迴應! – Cheetah

1

找到我不得不這樣做只是那天自動從休眠模式喚醒機器的過程中,mouse_event似乎在Win8中仍然可以正常工作。還沒有嘗試過關鍵事件,但我不明白他們爲什麼也不行。有some functional interop code here