Re[6]: Как задать тип для out-параметра?
От: Аноним  
Дата: 11.11.02 14:08
Оценка:
Здравствуйте Максим Алексейкин, Вы писали:

МА>Здравствуйте Аноним, Вы писали:


А>>>>Это не выход... Зачем мне [in,out] параметры, если он у меня по логике должен быть out, это помоему еще


МА>Всё конечно должно быть [out], с этим у тебя всё верно.


А>> VBScript будет передавать VARIANT*.


МА>Вот именно VARIANT. Даже в VB требуется жесткое совпадение типов для параметров ByRef. Нельзя передать для ByRef String переменную типа Variant. Всё дальнейшее обсуждение не имеет смысла. Причина ясна и надо лишь решить как это обойти. Боюсь без изменения типов параметров (только ByRef) не обойтись.


А>>Это мне не нравится, потому что в Visual Basic можно все по нормальному сделать, а в скрипте нет!!!


МА>В VB подобное могло срабатывать из за не явного приведения типов, VBScript естественно так не умеет.


А>>Должен же быть какой то выход, не может же быть все так тупо...


МА>


А>>Нахрена тогда вообще эта вся возня с типами, все бы сделали через Variant и все!!!!


МА>Так и придется делать.

МА>Удачи.


Придется все оставить, как было... Истина, где-то там!!!

P.S. Тестил я тут один COM обьект написанный на Visual Basic, все работает и в Visual Basic и у VBScript, тама метод обьекта был обьявлен так:

Sub Method( ByRef outVal as string);

И все работает!!!
Но мои COM+ обьекты написаны на Visual C++, на базе ATL, и ясно что уже никто ничего переделывать не будет, тем более тама support-ы MTS, pooling objects, которые неизвестно как делаются на Visual Basic, да и в принципе все можно все сделать по уму и на Visual C++,
но есть что-то, которое мы не знаем...

Вот так вот!!!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.