1
在我的C#代碼,我想使用InternetQueryOption這是在MSDN定義,如:如何在C#interop中使用InternetQueryOption?
BOOL InternetQueryOption(
__in HINTERNET hInternet,
__in DWORD dwOption,
__out LPVOID lpBuffer,
__inout LPDWORD lpdwBufferLength
);
在我的C#代碼,我寫道:
[DllImport("wininet.dll", SetLastError = true)]
static extern bool InternetQueryOption(
IntPtr hInternet,
uint dwOption,
IntPtr lpBuffer,
ref int lpdwBufferLength);
我的C++代碼:
...
HINTERNET hRequest = HttpOpenRequest(hConnect, "POST","/BM-Login/auth-cup", NULL, NULL, accept, secureFlags, 0);
DWORD dwFlags;
DWORD dwBuffLen = sizeof(dwFlags);
InternetQueryOption (hRequest, INTERNET_OPTION_SECURITY_FLAGS,
(LPVOID)&dwFlags, &dwBuffLen);
dwFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA;
dwFlags |= SECURITY_FLAG_IGNORE_REVOCATION;
dwFlags |= SECURITY_FLAG_IGNORE_CERT_DATE_INVALID;
dwFlags |= SECURITY_FLAG_IGNORE_CERT_CN_INVALID | SECURITY_FLAG_IGNORE_WRONG_USAGE;
InternetSetOption (hRequest, INTERNET_OPTION_SECURITY_FLAGS,
&dwFlags, sizeof (dwFlags));
...
如何在C#中編寫相同的代碼?謝謝。 (對不起,我的英語很糟糕)
正在使用WebRequest,http://msdn.microsoft.com/en-us/library/system.net.webrequest.aspx,由於某種原因,不是一個選項? – JamieSee 2012-04-10 14:56:58
傑米看到轉發您的評論作爲答案,我得到它 – amaranth 2012-04-11 10:53:19
發表回答。很高興我能幫上忙。 – JamieSee 2012-04-12 15:22:22