目前我在我的c#应用程序中使用wininet来检查互联网连接是否正常
[DllImport("wininet.dll", SetLastError = true)]
public extern static bool InternetGetConnectedState(out int lpdwFlags, int dwReserved);
[Flags]
public enum ConnectionStates
{
Modem = 0x1,
LAN = 0x2,
Proxy = 0x4,
RasInstalled = 0x10,
Offline = 0x20,
Configured = 0x40,
}
但问题是我想阻止互联网但是如何使用wininet实现这一目标并不成功?
提前致谢
答案 0 :(得分:0)
一种方法是在程序中使用命令提示符:
如果您使用此命令:rasdial /disconnect
它将断开您当前的互联网连接与互联网
在c#中执行此命令,您可以使用以下代码:
string command = "rasdial /disconnect";
System.Diagnostics.ProcessStartInfo procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd", "/c " + command);
procStartInfo.RedirectStandardOutput = true;
procStartInfo.UseShellExecute = false;
procStartInfo.CreateNoWindow = true;
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo = procStartInfo;
proc.Start();
Windows API的另一个解决方案:RasHangUp function