Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 以编程方式更改IE设置_C#_Registry - Fatal编程技术网

C# 以编程方式更改IE设置

C# 以编程方式更改IE设置,c#,registry,C#,Registry,我正在尝试使一个添加URL的windows应用程序也成为IE的“可信站点”。这部分很有效。 溶液- 但我也需要更改相同的设置。我需要这个: “跨域访问数据源”需要为“启用” “下载未签名的ActiveX控件”需要是“提示” “初始化和编写未标记为安全的ActiveX控件”需要为“启用” 这就是我所拥有的,但它不起作用 private void UpdateDataSource() { RegistryKey ChangeSettings = Registry.U

我正在尝试使一个添加URL的windows应用程序也成为IE的“可信站点”。这部分很有效。 溶液-

但我也需要更改相同的设置。我需要这个: “跨域访问数据源”需要为“启用” “下载未签名的ActiveX控件”需要是“提示” “初始化和编写未标记为安全的ActiveX控件”需要为“启用”

这就是我所拥有的,但它不起作用

    private void UpdateDataSource() 
    {
        RegistryKey ChangeSettings = Registry.Users;
        ChangeSettings = ChangeSettings.OpenSubKey(".DEFAULT\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\2", true);

        // "Access data sources across domains" - "Enable" 
        ChangeSettings.SetValue("1406", "0", RegistryValueKind.DWord);

        // "Download unsigned ActiveX controls" - "Prompt" 
        ChangeSettings.SetValue("1004", "1", RegistryValueKind.DWord);

        // "Initialize and script ActiveX controls not marked as safe for scripting" - "Enable" 
        ChangeSettings.SetValue("1201", "0", RegistryValueKind.DWord);

        ChangeSettings.Close();
    }

source

您可以尝试在IE中手动更改它,然后检查注册表中更改的内容,并找到一种方法来更改它(通过直接更改注册表),或者找到一种更好的方法来更改特定标记。

尝试一下,它可以工作:

private void UpdateDataSource()      
{         
    RegistryKey ChangeSettings = Registry.CurrentUser.OpenSubKey(@"Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\3", true);          
    // "Access data sources across domains" - "Enable"          
    ChangeSettings.SetValue("1406", "0", RegistryValueKind.DWord);          
    // "Download unsigned ActiveX controls" - "Prompt"          
    ChangeSettings.SetValue("1004", "1", RegistryValueKind.DWord);          
    // "Initialize and script ActiveX controls not marked as safe for scripting" - "Enable"          
    ChangeSettings.SetValue("1201", "0", RegistryValueKind.DWord);          
    ChangeSettings.Close();    
}

您可以访问以下网站:关于internet explorer 9注册表项。您可以找到所有配置键。

太棒了,它可以工作。。这是关键:


RegistryKey ChangeSettings=Registry.CurrentUser.OpenSubKey(@“Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3”,true)

这应该是一个注释,而不是答案。我也尝试过在注册表中查看更改。但是我看不到一个it@slugster:好的,谢谢。。。我想这说明了所有(部分)答案或答案的说明?这是这样写的:“如何降低IE中用户帐户的每个安全设置?”。更不用说,如果安全性是通过组策略设置的,您将无法做到这一点。Slugster-您是否有“如何降低IE中用户帐户的所有安全设置”的链接?也许它可以帮助Melo。在你发布了@slugster链接之后,也许你可以找到“我如何绕过操作系统中的所有安全功能?”这个链接一定存在,对吗@Simon?@Simon:有没有任何答案提供了解决方案?这对我来说确实有效。。谢谢创建了一个控制台程序并运行了代码。设置立即反映出来,@Rohit,谢谢你的回答。我在更改Microsoft office设置(将数字设置更改为上下文模式)时遇到同样的问题。你知道吗?我试过这个,它可以在本地主机上完美工作。但在Web服务器IIS中,它并没有起作用