如何将URL添加到受信任的站点?似乎存储在注册表中,但究竟在哪里?
到目前为止我用谷歌搜索的提示都没有帮助。
.net程序将在每个客户端本地运行。
编辑说明:我想以编程方式运行C#代码。
答案 0 :(得分:4)
答案 1 :(得分:3)
以下内容应该为您提供在代码中执行此操作的方法...
答案 2 :(得分:1)
在CodeGuru论坛上查看solution。
总之,这段代码使用的是COM库,你说的是你想要避免使用的库。但是,这种情况没有解决方法。另外需要提一下的是,这段代码是用C ++编写的,就像编写它的人CorithMartin一样,从C#移植它。
#include "windows.h"
#include "stdafx.h"
#include "urlmon.h"
#using <mscorlib.dll>
#include <atldef.h>
#include <atlconv.h>
using namespace System;
using namespace System::Runtime::InteropServices;
#define MAX_LOADSTRING 100
int _tmain(int argc, _TCHAR* argv[])
{
// constants from urlmon.h
const int URLZONE_LOCAL_MACHINE = 0;
const int URLZONE_INTRANET = URLZONE_LOCAL_MACHINE + 1;
const int URLZONE_TRUSTED = URLZONE_INTRANET + 1;
const int URLZONE_INTERNET = URLZONE_TRUSTED + 1;
const int URLZONE_UNTRUSTED = URLZONE_INTERNET + 1;
const int URLZONE_ESC_FLAG = 0x100;
const int SZM_CREATE = 0;
const int SZM_DELETE = 0x1;
HRESULT hr;
IInternetSecurityManager *pSecurityMgr;
LPCWSTR sites = SysAllocString(L"http://*.mydomain.com");
CoInitialize(NULL);
hr = CoCreateInstance(CLSID_InternetSecurityManager, NULL, CLSCTX_INPROC_SERVER, IID_IInternetSecurityManager, (void**)&pSecurityMgr);
pSecurityMgr->SetZoneMapping(URLZONE_TRUSTED, sites, SZM_CREATE);
pSecurityMgr->Release();
return 0;
}
答案 3 :(得分:1)
确实存在于注册表中,并在那里进行了描述:
http://msdn.microsoft.com/en-us/library/ms537181%28VS.85%29.aspx
谨防Vista中的UAC。处理真的很痛苦。
答案 4 :(得分:1)
Powershell的
#Setting IExplorer settings
Write-Verbose "Now configuring IE"
#Add http://website.com as a trusted Site/Domain
#Navigate to the domains folder in the registry
set-location "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
set-location ZoneMap\Domains
#Create a new folder with the website name
new-item website/ -Force
set-location website/
new-itemproperty . -Name * -Value 2 -Type DWORD -Force
new-itemproperty . -Name http -Value 2 -Type DWORD -Force
new-itemproperty . -Name https -Value 2 -Type DWORD -Force
答案 5 :(得分:0)
要添加新的受信任区域,它会在路径上创建区域注册表项和文件夹 HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet Settings \ ZoneMap \ Domains 对于每个域,它创建一个新的 域名密钥(sample.com) 这个子域下的新密钥(www) 在这个下面有一个新的REG_DWORD,带有该方案的名称(http或https) 在十六进制上的值为2,就是这样,你完成了它
答案 6 :(得分:0)
这是一种简化流程的方法。
设置regFile =“C:\ TempTS \ AddTrustedSiteTS.reg”
ECHO Windows注册表编辑器版本5.00&gt; %REGFILE%
ECHO [HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet 设置\ ZoneMap \ Domains \ MySecureDomain.com \ www]&gt;&gt; %REGFILE
ECHO“https”= dword:00000002&gt;&gt; %REGFILE%
regedit / s%regFile%
DEL%regFile%
对于检查的每个提供商,可以重复 ECHO [HKEY_CURRENT_USER ... 和 ECHO“https”... 行。对于“ALL”提供程序,请使用星号代替“https”,如下所示:
ECHO [HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet 设置\ ZoneMap \ Domains \ MySecureDomain.com \ www]&gt;&gt; %REGFILE% ECHO“*”= dword:00000002&gt;&gt; %REGFILE%
使用此调用运行.bat文件:
<强> System.Diagnostics.Process.Start( “C:\ TEMPTS \ AddTrustedSites.bat”)强>
运行.bat文件后(仅需几微秒),删除bat文件和tempTS目录。
MacSpudster
(a.k.a.GNoter,TechStuffBC)
=========================
信用到期的信用:
regedit / s AddTrustedSite.reg
“/ s”将禁止确认对话框
也:
请参阅http://www.computing.net/answers/windows-xp/bat-file-to-add-trusted-site-in-ie/139995.html