Вниз
Скачать: CL | DM;

Не могу перевести C++ код на Delphi   Найти похожие ветки 

← →
vic_vm   (2003-10-25 20:29) [0]

Добрый день. Есть код на C++
-----------------------------------------------------------------
HRESULT hr;
CComVariant var1, var2;
DWORD dwID
HMENU hMenu;
...
V_VT(&var1) = VT_INT_PTR;
V_BYREF(&var1) = hMenu;

V_VT(&var2) = VT_I4;
V_I4(&var2) = dwID;

hr = CommandTarg->Exec(&CGID_ShellDocView, SHDVID_ADDMENUEXTENSIONS, 0, &var1, &var2);
-----------------------------------------------------------------
Перевожу его на делфи так
var
var1, var2: OleVariant;
MyMenu : HMENU;
dwID : DWORD;
...
TVariantArg(var1).vt := VT_INT_PTR;
TVariantArg(var1).byref := @MyMenu;

TVariantArg(var2).vt := VT_I4;
TVariantArg(var2).lVal := dwID;

CommandTarg.Exec(@CGID_ShellDocView, SHDVID_ADDMENUEXTENSIONS, 0, var1, var2);
Но почему-то не работает.
Может я что-то неправильно делаю с вариантами?


← →
vic_vm   (2003-10-26 11:48) [1]

UP


← →
крот   (2003-10-26 16:04) [2]

А что значит "не работает"? То есть что ты получаешь и что ожидаешь получить?


← →
Nikolay M. ©   (2003-10-26 16:54) [3]

Чисто по аналогии:
почему &CGID_ShellDocView и @CGID_ShellDocView
, но
&var1 и var1
?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
1-41657
Rimas
2003-10-25 14:32
2003.11.13
русский help


1-41451
WondeRu
2003-10-23 09:43
2003.11.13
Плагины и СОМ


4-42221
Pank
2003-09-01 12:46
2003.11.13
действительно поверх всех окон


6-41783
pupsik
2003-09-18 11:51
2003.11.13
Отладка Web приложения


7-42172
AndreySoft
2003-08-29 21:53
2003.11.13
Как выключить компьютер по IP-адресу




   Наверх