3

是否有可能打开 Internet 属性窗口..
代码:

System.Diagnostics.Process p;
p = System.Diagnostics.Process.Start("InetCpl.Cpl", ",4");

..并等到用户关闭它?(然后检查互联网连接并继续)

此代码不起作用:

p.WaitForExit();

我认为这个问题与打开资源管理器窗口并等待它关闭有关,但解决方案仅包含特定于 Windows 资源管理器浏览器窗口的提示。

我可以在 C# 中执行此操作吗?

解决方案
有人在这里(仅一小段时间)放了这个完整的命令如何打开 Internet 属性窗口:

C:\Windows\system32\rundll32.exe C:\Windows\system32\shell32.dll,Control_RunDLL C:\Windows\system32\inetcpl.cpl,,4

我试过了..真的..它有效!

System.Diagnostics.Process p;
p = System.Diagnostics.Process.Start("rundll32.exe",
    @"C:\Windows\system32\shell32.dll,Control_RunDLL"
    + " C:\Windows\system32\inetcpl.cpl,,4");
p.WaitForExit();
MessageBox.Show("Properties closed");

只有在关闭“属性”窗口后,我才会收到“属性已关闭”消息。
无需 PID .. 简单且完美优雅的解决方案。
如果使用此命令编写原始响应的用户再次编写它,我接受他的解决方案。

4

1 回答 1

3

使用以下代码在单独的过程中打开控制面板:

System.Diagnostics.Process.Start(@"C:\Windows\system32\rundll32.exe"
    , @"C:\Windows\system32\shell32.dll,Control_RunDLL"
    + " C:\Windows\system32\inetcpl.cpl,,4");

然后你可以WaitForExit();

于 2013-07-09T16:20:23.277 回答