2012-05-10 62 views
0

我想在我的手機中發送一個任務,它應該發送密鑰。 實際上,我將模擬遠程鍵盤到我的設備。那麼,有什麼辦法可以在設備上使用發送鍵? 謝謝在windows phone 7上有什麼樣的「sendKeys」命令?

編輯。

從XDA開發者ultrashot告訴我使用這個:

keybd_event(<key code>, 0, KEYEVENTF_SILENT, 0); 
keybd_event(<key code>, 0, KEYEVENTF_SILENT | KEYEVENTF_KEYUP, 0); 

,但我不知道如何使用這個..它可能用的DllImport使用它?

回答

1

除了直接向控件發送輸入 - 。您無法訪問股票SDK中的SendKeys等API。

1

「sendkeys」通過向控件發送窗口消息在桌面上工作;該操作級別在Windows Phone的受管級別上不可用。您必須通過聯繫Microsoft才能獲得更低級別的手機供應商,並獲得原生級別的SDK。但是,我懷疑你可以在任何層面上做這樣的事情。

2

有2個問題,你scenarion:

  1. 沒有辦法programaticaly模擬用戶交互。可能會有一些低級別的API,但是除了MS和合作夥伴之外,這個API已經被所有開發者鎖定。
  2. 當一些其他應用程序正在運行時,無法運行您的代碼。所以你只能控制你自己的應用程序。如果你控制自己的應用程序,那麼添加顯式邏輯來遠程向文本框添加文本應該不難。
2

爲什麼不直接按下發送你的鑰匙的字節流,你可以從使用Encoding.Ascii.GetBytes(串),然後用解碼您Encoding.Ascii.GetString鍵盤的每個鍵的字節(字節)

芒果配套插口,您可以使用一個簡單的socket客戶端,使用套接字接收和發送方法來檢索字節流,然後您可以用它來填充文本框或東西

它不是一樣簡單SendKeys,但這是一個替代

+0

ye,但我會發送我的電腦鍵盤到wp。 –

+0

你可以做到這一點,只要Windows手機建立到你的計算機的連接,你可以使用套接字將信息從計算機發送到Windows手機。在基本聊天客戶端上查看本教程,您可以輕鬆修改代碼,以便將您的電腦寫入手機上的文本框。 http://www.developerfusion.com/article/3918/socket-programming-in-c-part-1/ –

+0

我試圖做的是控制所有的應用程序。就像藍牙鍵盤一樣。不幸的是,鍵盤配置文件不支持WP ..所以這就是我想要的。不幸的是,似乎沒有辦法發送任何應用程序可以捕獲的關鍵事件,就像我夢寐以求的。謝謝大家 –