VB6から拡張保護モードで動作しているIEのCookieを取得・設定したいのですがエラーが発生し困っています。
IESetProtectedModeCookie,IEGetProtectedModeCookieを使う必要があることはわかったのですが、
実行すると「E_INVALIDARG:パラメータが間違っています。」のエラーが発生します。
引数として与えている変数が悪いのか、そもそも定義は問題ないのかご教授お願い致します。
==========定義============
'Cookieを取得する(IE保護モード用)
'HRESULT IEGetProtectedModeCookie(
' _In_ LPCWSTR lpszURL,
' _In_ LPCWSTR lpszCookieName,
' _Inout_ LPWSTR pszCookieData,
' _Inout_ DWORD *pcchCookieData,
' _In_ DWORD dwFlags
');
Private Declare Function IEGetProtectedModeCookie Lib "ieframe.dll" _
(ByVal lpszURL As Long, _
ByVal lpszCookieName As Long, _
ByVal pszCookieData As Long, _
pcchCookieData As Long, _
ByVal dwFlags As Long) As Long
Private Const INTERNET_COOKIE_THIRD_PARTY As Long = &HA
==========呼び出し==========
Dim m_URL As String
Dim wkStr1 As String * 255
Dim wkStr2 As String
Dim wkIdx1, result As Long
m_URL = https://XXX
wkStr2 = "YYY"
wkIdx1 = 256
result = IEGetProtectedModeCookie(StrPtr(m_URL), StrPtr(wkStr2), StrPtr(wkStr1), wkIdx1, INTERNET_COOKIE_THIRD_PARTY)
追記
環境を書き忘れたので追記します。
OS:Windows8.1 Pro
VB:Visual Basic 6.0(SP6)
IE:Internet Explorer 11
以上、宜しくお願いします。
ツイート | ![]() |