WinformsアプリケーションでWebBrowserコントロールのUserAgentを変更しようとしています。 WebBrowserコントロールのユーザーエージェントを変更する
は、私は成功し、次のコードを使用することによって、これを達成した:[DllImport("urlmon.dll", CharSet = CharSet.Ansi)]
private static extern int UrlMkSetSessionOption(
int dwOption, string pBuffer, int dwBufferLength, int dwReserved);
const int URLMON_OPTION_USERAGENT = 0x10000001;
public void ChangeUserAgent()
{
List<string> userAgent = new List<string>();
string ua = "Googlebot/2.1 (+http://www.google.com/bot.html)";
UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, ua, ua.Length, 0);
}
唯一の問題は、これが一度だけ動作することです。 ChangeUserAgent()メソッドを2回目に実行しようとすると機能しません。最初に変更された値に設定されたままです。これはかなり迷惑で、私はすべてを試しましたが、それは何度も変わることはありません。
誰かが違う、より柔軟なアプローチを知っていますか?
おかげ
私は上記の方法を試しましたが、WPF(System.Windows.Controls.WebBrowser)で動作しませんでした –