如何通过WebBrowser控件C#逃避下载json文件

时间:2015-05-06 10:45:43

标签: c# json webbrowser-control

WebBrowser控件自动从服务器下载响应(当我只使用传统的WebBrowser.Navgiate()时),如何忽略该文件,或拒绝下载(因为它似乎暂停了我的程序) )?

编辑: 这是代码:

webBrowser1.Navigate("url/phpFile.php?parameters");

这就是我运行时得到的结果:

enter image description here

2 个答案:

答案 0 :(得分:1)

1.打开记事本并粘贴以下内容:

Windows Registry Editor Version 5.00;
; Tell IE 7,8,9,10 to open JSON documents in the browser on Windows XP and later.
; 25336920-03F9-11cf-8FD0-00AA00686F13 is the CLSID for the "Browse in place" .
;
[HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/json]
"CLSID"="{25336920-03F9-11cf-8FD0-00AA00686F13}"
"Encoding"=hex:08,00,00,00

2.将文档保存为IE-Json.reg,然后运行它。

在Windows 10&amp ;;上测试赢7

答案 1 :(得分:0)

作为NishantVerma.Me的遮篷的扩展,可以通过编程方式完成。 只有一个缺点,这必须使用管理员权限来完成。 我的示例是在64位设备上的32位应用程序。

   private bool SetRegistery()
    {
        try
        {
            using (var hklm = RegistryKey.OpenBaseKey(RegistryHive.ClassesRoot, RegistryView.Registry64))
            {
                using (RegistryKey key = hklm.OpenSubKey(@"MIME\Database\Content Type\application/json", true))
                {
                    if (key != null)
                    {
                        key.SetValue("CLSID", "{25336920-03F9-11cf-8FD0-00AA00686F13}");
                        key.SetValue("Encoding", new byte[] { 0x80, 0x00, 0x00, 0x00 });
                    }
                }
            }
            return true;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
        return false;
    }