2015-03-19 112 views
0

我有一個驅動程序(內核模式)(KMDF),我有一個用戶喜好形式。我需要從驅動程序代碼開始活動並獲取首選項。 那麼我如何從Windows操作系統的內核啓動該用戶模式程序?如何從Windows內核模式啓動用戶模式程序

+0

這看起來有點奇怪。爲什麼你需要從驅動程序啓動偏好表單?用戶模式程序應該以標準方式啓動,當用戶執行它時。 – 2015-03-19 09:20:38

+0

@AlexFarber我想在驅動程序條目中顯示一個彈出窗口並將結果返回。 – 2015-03-19 10:00:02

+0

DriverEntry可以在引導時執行,也可以在用戶登錄之前執行。無論如何,我從來沒有見過這樣的實施。我認爲你需要編寫用戶模式程序來偵聽驅動程序事件,並在必要時顯示一些UI。 – 2015-03-19 10:23:23

回答

3

獲得驅動程序在用戶模式下執行某些操作的最佳方式是讓它與可以完成工作的用戶模式組件通信。所以,你需要做一些類似於用戶模式的服務,爲驅動程序打開一個通道,然後當驅動程序需要執行某些操作(例如啓動進程)時,它可以向服務發送消息。

如需瞭解更多信息,請搜索osronline獲取更多信息,或查看FltSendMessage API文檔,瞭解構建微型過濾器的信息。

正如其他海報已經指出,在DriverEntry中執行此操作可能無法正常工作,因爲甚至可能連用戶會話都無法與之通信。

1

只要你不能使用怪異的無證技巧,如APC,可能會導致許多許多不兼容問題; 只需將您的應用程序作爲自動啓動(例如CurrentVersion \ Run)並將IRP發送給驅動程序並提供需要發送的數據。

相關問題