2016-08-16 92 views
0

我想从我的代码运行应用程序,该应用程序只能使用管理权限运行。我能够使用以下代码成功运行应用程序。WPF:生成自定义MessageBox而不是Windows消息框

start = new ProcessStartInfo(); 
start.Arguments = drive; 
start.Verb = "runas"; 
start.FileName = filepath; 
start.WindowStyle = ProcessWindowStyle.Normal; 
start.CreateNoWindow = false; 
using (exeProcess = Process.Start(start)) 
{ 
    exeProcess.WaitForExit(); 
} 

以下MessageBox出现;

Screenshot of MessageBox

我想要做的就是我希望抑制上述的Windows消息框,并显示我自己设计的消息框。请引导我如何做到这一点。

+0

我知道你可以做到这一点的唯一方法是以管理权限启动你的程序。然后,所有启动的程序都将具有管理权限,而不需要获得许可。但我想这不是你要找的。 –

+0

@ R.Rusev不是我正在寻找的解决方案 – user3069453

+0

有关UAC和流程的一些有用信息:http://stackoverflow.com/a/20872219/856777 – Lucian

回答

1

基本上你想要做的是Disabling UAC programmatically这是不可能的根据链接。

+0

否我只是想在消息框中显示自己的消息 – user3069453

+1

@ user3069453以及你不能。这是一个安全问题。如果您可以更改对话框,则可以更改文本/按钮,以便他们说出不同的内容,这与将窗口一起移除几乎相同。 –