2011-06-30 102 views
0

在C++中使用WinAPI;我嘗試使用CreateProcessWithLogonW()從另一個沒有管理權限的應用程序中啓動具有管理權限的進程,但是新進程可以由非管理員用戶在任務管理器中停止。限制非管理員用戶停止任務管理器中的進程C++

任何幫助將不勝感激。

傑曼

+0

啓動的進程是否有窗口?它是被「終止過程」還是「終止過程」阻止? –

+0

它的窗口進程,並被EndProcess阻止 –

+0

這就是你的問題 - 任何有權訪問桌面的進程都可以向其上的任何窗口發送消息,因此任何事情都可以將WM_CLOSE發送到應用的頂級窗口。 –

回答

-1

我能記得,創建一個從非管理進程管理進程是很辛苦的窗口。啓動管理進程最簡單的選項是使用管理員權限構建該進程exe,並使用:: ShellExecute。

在vista和win7中,不允許將消息從非管理進程發佈到admin進程。您可能需要創建自己的消息隊列以將消息發送到管理進程以殺死它。 (增強消息隊列可以是一個選項)。或者你可以使用其他一些同步技術來殺死它。

+0

他不想殺了它,但阻止非管理員用戶這樣做。 – RedX

+0

 but the new process can be stopped from within task manager by the non-admin user.
他的意思是讓非管理員用戶從任務管理器中殺死它? –

+0

謝謝xijing ..我會盡力去做的。 –

相關問題