Bạn có thể làm điều này cho mỗi quá trình sử dụng InternetSetOption
Win32 chức năng:
[DllImport("wininet.dll", CharSet = System.Runtime.InteropServices.CharSet.Auto, SetLastError = true)]
public static extern bool InternetSetOption(int hInternet, int dwOption, IntPtr lpBuffer, int dwBufferLength);
và sau đó lúc khởi động ứng dụng của bạn gọi hàm sau:
private unsafe void SuppressWininetBehavior()
{
/* SOURCE: http://msdn.microsoft.com/en-us/library/windows/desktop/aa385328%28v=vs.85%29.aspx
* INTERNET_OPTION_SUPPRESS_BEHAVIOR (81):
* A general purpose option that is used to suppress behaviors on a process-wide basis.
* The lpBuffer parameter of the function must be a pointer to a DWORD containing the specific behavior to suppress.
* This option cannot be queried with InternetQueryOption.
*
* INTERNET_SUPPRESS_COOKIE_PERSIST (3):
* Suppresses the persistence of cookies, even if the server has specified them as persistent.
* Version: Requires Internet Explorer 8.0 or later.
*/
int option = (int)3/* INTERNET_SUPPRESS_COOKIE_PERSIST*/;
int* optionPtr = &option;
bool success = InternetSetOption(0, 81/*INTERNET_OPTION_SUPPRESS_BEHAVIOR*/, new IntPtr(optionPtr), sizeof(int));
if (!success)
{
MessageBox.Show("Something went wrong !>?");
}
}
Nguồn
2013-08-12 20:20:06
Có thể làm điều này cho mỗi thread? – EBAG
Tôi không nghĩ vậy. Sau khi tất cả không quên rằng điều khiển WebBrowser mà bạn đang sử dụng chỉ là một wrapper trên đối tượng COM gốc đại diện cho Internet Explorer. –
Về việc chia sẻ cookie, tôi không nghĩ rằng nó có thể thậm chí trên cơ sở từng luồng. Phiên được chia sẻ cho mỗi quá trình cho các cá thể WebBrowser. Đây là một [câu hỏi] tương tự (http://stackoverflow.com/questions/18055734/net-webbrowser-control-and-dispose/18057266#18057266). – Noseratio