我試圖編寫一個Utility Manager應用程序,我試圖在WinXP SP3上測試它。 我把它添加到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Accessibility\Utility Manager
,並加載程序管理器時,當我在我登錄它工作得很好。如何安裝可在安全桌面上運行的公用程序管理器應用程序?
然而,當我嘗試從工具管理器在啓動時登錄(通過窗口+ U)之前加載它,或鎖定屏幕上出現錯誤消息,說(大約,因爲它是德語版的WinXP)「此應用程序無法在安全桌面上執行,請聯繫您的系統管理員以獲取所需的權限」。
爲了在安全桌面上完成這項工作,我需要做些什麼不同?
[B]編輯:[/ B] 我跟大衛教皇的建議,並試圖調試utilman.exe(使用OllyDebug因爲我比使用新的調試器...更多習慣了,並問它打破過程創造)。看起來好像我的應用程序根本就沒有開始。由於OllyDebug似乎有一些功能(如API調用中斷)被禁用(可能是因爲該進程作爲不同的用戶運行),所以我使用Sysinternals Process Monitor對其進行了雙重檢查。啓動屏幕鍵盤時,會出現「創建過程」事件;當啓動我的工具時,不會顯示任何事件。
另一方面的注意事項:當我將osk.exe(屏幕鍵盤)放入我的新註冊表項時,它工作正常(我在菜單中基本上有兩個屏幕鍵盤輸入),但是如果我複製osk。 exe到osk2.exe並將osk2.exe作爲可執行文件,則屏幕鍵盤onls的副本將在非安全桌面上啓動。所以在調用可執行文件之前,它必須是某種驗證(針對文件名+內容)?用我的工具(或osk.exe)替換magnify.exe將使下一次重新啓動後(當utilman重新啓動時)失效。
換句話說:它只有在文件名爲osk.exe並且在屏幕鍵盤上或該文件被命名爲magnify.exe並且是magnifyer時才起作用。
這不會在事件日誌中創建任何信息。
似乎Vista的密鑰已更改。這些密鑰在我的XP版本中不存在。 – mihi 2009-04-20 18:24:17
感謝您的建議。我相應地更新了我的問題。 – mihi 2009-04-24 16:43:42