Re: [out] не возвращается значение
От: George_Seryakov Россия  
Дата: 06.08.02 03:54
Оценка:
Здравствуйте DmitryM, Вы писали:

DM>
DM>HRESULT m2([in] BSTR sIn,[out] BSTR* sOut,[out] short* iOut, [out,retval] BSTR* sRet);
DM>...
DM>STDMETHODIMP Ctest2::m2(BSTR sIn, BSTR *sOut, short *iOut, BSTR *sRet){
DM>    *sRet = L"sRet";
DM>    *sOut = L"sOut";
DM>    *iOut = 10;
DM>



DM><script language="javascript">
DM>function Bn()
DM>{    var i=3;
DM>    var s="dddd";
DM>    txt2.value = test2.m2(txt1.value, s, i);
...
DM></script>


DM>Почему не возвращаются значения [out] sOut и iOut ?


Возвращаемый BSTR должен быть размещен SysAllocString или аналогичной функцией, а короткое целое — несовместимо со скриптом, где все — вариант. long, может, и вернет правильно. VARIANT — точно.

DM>если [out,retval], то все нормально.


Это случайно.
GS
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.