使用wininet阻止互联网

时间:2013-05-14 16:16:02

标签: c# wininet

目前我在我的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实现这一目标并不成功?

提前致谢

1 个答案:

答案 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