Лена |
Отправлено: 16.10.2006, 14:50 |
|
Мастер участка
Группа: Участник
Сообщений: 501
|
Как правильно инициализировать тип BSTR в коде ниже:
CODE |
Variant par1;
BSTR newpar1 = WideString(Edit1->Text); //наверное так не правильно?
Variant varS;
varS.vt = VT_BSTR;
varS.bstrVal = newpar1;
par1 = varS;
TAutoArgs<1> args;
args[1] = par1;
Form1->OleContainer1->OleObject.OleFunction(NFunck,static_cast<TAutoArgsBase*>(&args)); //ошибка
|
Есть пример на VC++, но не знаю как точно переделать:
CODE |
//Create a BSTR and assign it to a Variant
BSTR x = SysAllocString(L"Hello");
VARIANT myVariant;
myVariant.vt = VT_BSTR;
myVariant.bstrVal = x;
SysFreeString(x);
| |
|
Лена |
Отправлено: 17.10.2006, 17:10 |
|
Мастер участка
Группа: Участник
Сообщений: 501
|
Получилось:
CODE |
BSTR x = SysAllocString(WideString(Edit1->Text).c_bstr());
Variant varS;
varS.vt = VT_BSTR;
varS.bstrVal = x;
par1 = varS;
SysFreeString(x);
|
|
|