Присвоение целого числа варианту

Я хочу установить флаг как navOpenInBackgroundTab из BrowserNavConstants enum который скоро будет передан в качестве параметра IWebBrowser2::Navigate2 метод.

Подпись IWebBrowser2::Navigate2: —

HRESULT Navigate2(
VARIANT *URL,
VARIANT *Flags,
VARIANT *TargetFrameName,
VARIANT *PostData,
VARIANT *Headers
);

Вот где у меня проблема: —

VARIANT SITE={0}, vFlags = {0},vTargetFrameName = {0},vPostData = {0},vHeaders = {0};
...
...
vFlags.intVal=navOpenInBackgroundTab;//<--Here,Don't know how to do it.Not Working..

m_spWebBrowser->Navigate2(&SITE, &vFlags,&vTargetFrameName, &vPostData, &vHeaders);

Спасибо большое за вашу поддержку.

3

Решение

использование InitVariantFromInt32: —

HRESULT hr = InitVariantFromInt32(navOpenInBackgroundTab, &vFlags);

Вы также можете использовать (Из моей старой базы кода :)): —

V_VT(&vFlags) = VT_I4;
V_I4(&vFlags) = navOpenInBackgroundTab;
0

Другие решения

Других решений пока нет …