Гость
Форумы / Delphi [игнор отключен] [закрыт для гостей] / LoadFromStream(VARIANT) / 9 сообщений из 9, страница 1 из 1
05.10.2021, 02:22
    #40101962
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
Имею код:

Код: sql
1.
2.
_di_IStream streamAdapter(*(new TStreamAdapter(stream, soReference))); // или DelphiInterface<IStream> ... // или ComInterface<IStream> ... // или CComPtr<IStream> ...
ViewX1->LoadFromStream(VARIANT(streamAdapter));



под компилятором х32 всё проходит нормально. а компилятор х64 ругается:

[bcc64 Error] ExtrJurnal.cpp(500): no matching conversion for functional-style cast from '_di_IStream' (aka 'DelphiInterface< ::IStream>') to 'VARIANT' (aka 'tagVARIANT')
oaidl.h(469): candidate constructor (the implicit copy constructor) not viable: no known conversion from '_di_IStream' (aka 'DelphiInterface< ::IStream>') to 'const tagVARIANT' for 1st argument
oaidl.h(469): candidate constructor (the implicit move constructor) not viable: no known conversion from '_di_IStream' (aka 'DelphiInterface< ::IStream>') to 'tagVARIANT' for 1st argument
oaidl.h(469): candidate constructor (the implicit default constructor) not viable: requires 0 arguments, but 1 was provided
как победить - не знаю.
помогите
...
Рейтинг: 0 / 0
05.10.2021, 11:34
    #40102029
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
Как там в Билдере не знаю. Пробовать так
Код: plaintext
1.
2.
_di_IStream streamAdapter(*(new TStreamAdapter(stream, soReference)));
ViewX1->LoadFromStream(streamAdapter);

или
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
_di_IStream streamAdapter(*(new TStreamAdapter(stream, soReference)));
VARIANT var;
VariantInit(&var);
var.vt = VT_UNKNOWN;
_di_IStream.AddRef();
var.punkVal = &streamAdapter;
ViewX1->LoadFromStream(var);
VariantClear(&var)
...
Рейтинг: 0 / 0
05.10.2021, 14:04
    #40102094
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
_Vasilisk_
Код: plaintext
1.
2.
_di_IStream streamAdapter(*(new TStreamAdapter(stream, soReference)));
ViewX1->LoadFromStream(streamAdapter);



вариант 1 - не пошло

по второму - ругается на строку _di_IStream.AddRef();

[bcc64 Error] Extr_Profil.cpp(624): cannot use dot operator on a type
...
Рейтинг: 0 / 0
05.10.2021, 14:08
    #40102096
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
Значит пора начинать таки учить синтаксис C++, а не копипастить дельфийский код.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
05.10.2021, 19:17
    #40102169
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
Mizer73
[bcc64 Error] Extr_Profil.cpp(624): cannot use dot operator on a type
Заменить
Код: plaintext
1.
_di_IStream.AddRef();

на
Код: plaintext
1.
streamAdapter->AddRef();

не догадались?
...
Рейтинг: 0 / 0
05.10.2021, 22:32
    #40102202
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
_Vasilisk_
Код: plaintext
1.
streamAdapter->AddRef();



var.punkVal = &streamAdapter;

[bcc32 Error] Extr_Profil.cpp(625): E2034 Cannot convert 'IStream * *' to 'IUnknown *'
...
Рейтинг: 0 / 0
05.10.2021, 22:40
    #40102204
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
_Vasilisk_
Mizer73
[bcc64 Error] Extr_Profil.cpp(624): cannot use dot operator on a type
Заменить
Код: plaintext
1.
_di_IStream.AddRef();


на
Код: plaintext
1.
streamAdapter->AddRef();


не догадались?



еще...

Код: pascal
1.
var.punkVal = &streamAdapter;



переделал на

Код: pascal
1.
var.punkVal = streamAdapter;



и пошло компилироваться...
пока на практике не проверить, есть еще ошибки.
...
Рейтинг: 0 / 0
05.10.2021, 22:40
    #40102205
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
_Vasilisk_,

+10
...
Рейтинг: 0 / 0
05.10.2021, 22:40
    #40102206
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LoadFromStream(VARIANT)
Dimitry Sibiryakov
Значит пора начинать таки учить синтаксис C++, а не копипастить дельфийский код.


-10
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / LoadFromStream(VARIANT) / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]