之前从网上找到的代码,想修改webbrowser的user-agent
代码如下
[DllImport("urlmon.dll", CharSet = CharSet.Ansi)]
private static extern int UrlMkSetSessionOption(int dwOption, string pBuffer,
int dwBufferLength, int dwReserved);
private const int UrlmonOptionUseragent = 0x10000001;
public void ChangeUserAgent(string agent)
{
UrlMkSetSessionOption(UrlmonOptionUseragent, agent, agent.Length, 0);
}
但是通过该方法user-agent是修改成功了.
但是在用SHDocVw.WebBrowser 做新窗口 newwindows2 或者newwindwows3 打开的时候新窗口的时候,会造成referer的丢失,
不知道该怎么解决,但是我若是去掉修改uesr-agent的情况下,打开新窗口通过数据抓取发现加载新窗口的时候,referer引用是存在的,
一旦修改user-agent,referer就会丢失,没有了来源页面的信息,对于"urlmod.dll" 这个也不太了解,
请问如何在修改user-agent的情况下,保持原有的浏览器其他信息不改变?