Форум программистов, компьютерный форум CyberForum.ru

В VC++7 ATL, defaultvalue не работает при late-binding - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Печать из формы http://www.cyberforum.ru/cpp-beginners/thread488709.html
Помогите, пожалуйста, новичку в программировании! Ситуация такая: У меня есть диалоговое окно, в диалоговом окне есть 2 EditControl'а, куда заносится информация, и кнопка Print. Необходимо, чтобы при нажатии на кнопку Print, информация из EditControl'ов расположилась на листе в две строчки, и все это дело вывелось на принтер. Подкиньте, плииз, какие-нибудь идеи, как это можно воплотить в...
C++ Как менять положение кнопки по ресайзу диалога? Есть диалог, в нижнем правом углу кнопочка. Как сделать, чтобы при OnSize диалога кнопка оставалась снизу-справа? http://www.cyberforum.ru/cpp-beginners/thread488706.html
Как в MSComm32.ocx посылать/получать данные в MS VC++ 6.0? C++
Как в MSComm32.ocx посылать/получать данные в MS VC++ 6.0???
C++ DOS Создание приложений с несколькими нитями
Помогите плиз! Как создаются приложения с несколькими нитями? Как они организуются и т.д. Заранее спасибо!!!
C++ Не вызывается диалог класса CFileDialog под Win98 http://www.cyberforum.ru/cpp-beginners/thread488605.html
Проблема в следующем: в своем приложении собранном под VC++.NET на Windows XP я вызываю диалог класса CFileDialog для экспорта даннных в файл. Так вот, в этом приложении, но запущенном под Windows 98 этот диалог не открывается. Выполняю команду и совершенно ничего не происходит. Под Debug не могу пройти и посмотреть в чем дело - т.к. среда VC установлена под Win XP. Правда, если в stdafx.h...
C++ Как налипить рисунок на баттон? Создал визуально батон на диалоговом окне, а рисунок на него налипить не знаю как... Помогите плиз Заранее спасибо подробнее

Показать сообщение отдельно
idhunter
0 / 0 / 0
Регистрация: 07.05.2008
Сообщений: 10
28.09.2010, 17:46     В VC++7 ATL, defaultvalue не работает при late-binding
Добрый день,

Столкнулся с проблемой - методы ATL COM объекта, откомпилированного под VC++7, не могут вызываться при late-binding без дефолтных параметров. Причем при компиляции под VC++6 это работает прекрасно!

Т.е. метод ниже:

[id(1), helpstring('method AA')] HRESULT AA([in, defaultvalue(1)] LONG abc);

можно вызвать только как:

Object.AA 1

но не

Object.AA

Проверял в VB6 и VBScript. Однако если использовать early-binding (объявлять объект как Dim Object As LibraryName.ClassName), то все работает.

При компиляции же с VC++6 правильно работает и early, и late binding.

Если не использовать attributed объекты, а создавать раздельные h и idl-файлы (т.е. всё как в VC++6), то всё работает нормально. Конечно, не использовать attributed расширений - это тоже выход, но не хотелось бы всё-таки от них отказываться.

Поиск по инету ничего не дал. Может, ключик какой-то нужно указывать для компиляции IDL или директиву какую?

Заранее спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru