|
Com меня не слушается (C++ Builder 5)
|
|||
---|---|---|---|
#18+
Здравствуйте! Делаю раз: File->New->ActiveX->ComObject (TTest). Делаю два: в редакторе библиотеки типов создаю метод Metod1, возвращающий VARIANT. Делаю три: Строитель генерит код - Код: ///////////////////////////////////////////////////////////////////////////// // TTTestImpl TVariant STDMETHODCALLTYPE TTTestImpl::Method1() { return "test"; } Делаю четыре: компилирую, регистрирую - OK! Делаю пять: в Excel ставлю ссылку и пишу код - Код: Dim obj as TTest 'OK Set obj = new TTest 'OK var = obj.Method1() 'OK, но var почему-то empty Set obj = Nothing 'ERROR - Excel допустил ошибку "Нет данных" и будет закрыт... Что это и куда рыть??? Снова спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2003, 09:20 |
|
Com меня не слушается (C++ Builder 5)
|
|||
---|---|---|---|
#18+
Физкульт-привет, cpp . Попробуйте сделать так. В редакторе библиотеки добавте новый метод (например Metod), на странице Parameters задайте новый параметр с типом BSTR* (допустим он наз. param), Modifier->Parameter Flag установите в out и retval. Реализация следующая : STDMETHODIMP Metod::(BSTR* param) { WideString val = "test"; *param = val.Detach(); return S_OK; } Попробуйте так-же вызвать этот метод не из Excel, а из клиента (может сам COM и работает, а траблы с Excel). Удачи. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2003, 11:44 |
|
Com меня не слушается (C++ Builder 5)
|
|||
---|---|---|---|
#18+
Описание интерфейса в студию. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2003, 11:51 |
|
Com меня не слушается (C++ Builder 5)
|
|||
---|---|---|---|
#18+
Код: plaintext
TVariant это конечно круто - но вот только в COM все методы ДОЛЖНЫ и МОГУТ возвращать только HRESULT Делайте как говорит Предводитель команчей ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2003, 09:19 |
|
|
start [/forum/topic.php?fid=57&msg=32112610&tid=2036400]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
77ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 266ms |
total: | 433ms |
0 / 0 |