cannot convert parameter 1 from 'QVariant' to 'VARIANT' |
Здравствуйте, гость ( Вход | Регистрация )
cannot convert parameter 1 from 'QVariant' to 'VARIANT' |
Гость_Гость_loh_*_* |
15.7.2008, 16:06
Сообщение
#1
|
Гости |
почему мне выдаёт ошибку при работе с методом ком интерфейса cannot convert parameter 1 from 'QVariant' to 'VARIANT'? в документации qt написано что этот типа поддерживается =\
|
|
|
Гость_Гость_loh_*_* |
15.7.2008, 23:29
Сообщение
#2
|
Гости |
в документации вот так можно
CODE parameters << QVariant(varlist); int n = object.dynamicCall("fillList(QList<QVariant>&)", parameters).toInt(); но так нельзя передать неподдерживаемый тип (в моем случае IGeometry**): If you need to access properties or pass parameters of unsupported datatypes you must access the COM object directly through its IDispatch implementation or other interfaces. тоесть CODE IUnknown *iface = 0; activeX->queryInterface(IID_IUnknown, (void**)&iface); if (iface) { // use the interface iface->Release(); } но тогда мой QVariant надо как-то преобразовать в VARIANT как это можно сделать? QVariant у меня типа QByteArray, а VARIANT нужен dataTypeEnum == adVarBinary (тоесть Indicates a binary value.) а VARIANT вот тут вариант нужен: [C++] CODE HRESULT CreateGeometryFromWkbVariant(
VARIANT wkb, IGeometry** outGeometry, long* numBytesRead ); |
|
|
Текстовая версия | Сейчас: 19.1.2025, 7:01 |