我有一個基本要求 - 通過在出現提示時創建防火牆規則並在Windows防火牆打開的情況下在Windows上平穩地運行我的應用程序。爲在非管理員用戶帳戶中運行的進程創建防火牆規則
當我第一次運行我的應用程序時,以具有Admin權限的用戶身份登錄到我的系統時,防火牆出現提示,我通知它允許我的應用程序並創建一個規則,很好。
但是,當我打開我的電腦時,以非管理員用戶身份登錄,然後運行我的應用程序,防火牆就會按照預期顯示提示;但是當我點擊與Admin用戶相同的選項時,即使每次出現提示時單擊Allow/ok,防火牆提示仍會不斷彈出。當我點擊「取消/阻止」應用程序運行時,提示只會消失,這顯然不是我想要做的。
因此,在第一次點擊防火牆提示符以允許我的應用程序時,通過成功創建防火牆規則,我應該更改我的應用程序代碼以便順利運行,從而帶來百萬美元的問題;當我以具有管理員權限的用戶身份運行我的應用程序時,它的工作方式與此方式完全相同
我已經完成了我在網上搜索的一些內容,並瞭解到非管理員用戶無法修改防火牆規則(甚至不能創建它們)。順便說一下,我已經測試了這種情況在Windows XP,Vista 7的x86和x64上都有相同的結果。
如果有人遇到和/或解決類似問題,請分享您的知識。如果我錯過了一些東西,請讓我明白我缺少的東西。
感謝
謝謝。我實際上正在調用CreateProcessAsUser,但仍然存在此問題。我會玩旗幟/參數,看看它的行爲。我不認爲我可以在我的場景中使用LogOnUser。 – aeon 2011-04-18 03:12:30