![]() |
|
![]() ![]() ![]() |
|
Hurricane |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 10.4.2007 Репутация: нет Всего: 9 |
Понимаю, что телепатов здесь нет, но даже не знаю, как лучше сформулировать этот вопрос.
Есть 2 third-party controls. Один - graphics server (www.graphicsserver.com) v4.50, другой - Spread от FarPoint Technologies (www.fpoint.com) v2.5. Оба - платные, были куплены компанией во времена царя гороха (поэтому и версии допотопные), используются в одном из наших продуктов. Более новые версии не покупались, т.к. в новых продуктах эти контролы не используются. Суппорта тоже нет на старые версии. Теперь сама проблема. В VC++ 6 все работает нормально. Я могу поместить контрол на, скажем, окно диалога, в rigt-click меню на нем есть специятельный пункт подменю для этого контрола (Pinnacle-BPS Extended Graph Object для Graphics Server и FarPoint Spread 2.5 Object для Spread), оттудова доступны проперти этих объектов, т.е. вызывается диалог для изменения свойств. В VS7 (и 8) на right-click меню для обоих контролов есть пункты Properties (который вызывает Properties Tab, но там далеко не весь перечень свойств), и Edit Control, при выборе которого ничего не происходит. Из-за всего этого приходится держать VC++ 6 на компе, чтобы иметь возможность редактировать эти контролы. При этом файлы ресурсов (.rc) переписываются в стиль 6-й студии, что, во-первых, очень действует на нервы, а во вторых - становится очень тяжело отслеживать изменения через cvs. В общем, вопрос достаточно традиционный - кто виноват и что делать? ![]() Это сообщение отредактировал(а) Hurricane - 30.4.2007, 17:30 |
|||
|
||||
Любитель |
|
|||
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 7 Всего: 92 |
А исходники от них есть? И что за формат контролов?
|
|||
|
||||
Hurricane |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 10.4.2007 Репутация: нет Всего: 9 |
Любитель, исходников, конечно же, нет. Есть MFC-wrappers к ним (.h и .cpp файлы, которые включаются в проект), облегчающие жизнь что не надо программировать на API, но это, как я понимаю, не то. При инсталляции они помещают какие-то dll-ки и ocx-ы в системный фолдер (windows\system32). О самих контролах можно посмотреть на вебсайтах их разработчиков, ссылки я давал в первом посте.
На, скажем, диалог, они помещаются через "Insert ActiveX Control", хотя через wrappers (ну и API, конечно) можно создавать их вручную (у нас в продукте они используются на views) передавая хэндл окна. Также есть бумажная документация к ним, где расписано, как с ними работать. Программно все работает, неудобно только то, что из студии (VS7.1 и старше) нельзя поменять свойства, даже расположение на окне диалога - перестает работать (при работе приложения появляется диалог, но контрола на нем нет). Из VC++ 6 все работает замечательно. Приходится редактировать свойства из него, записывать в отдельный файл, дальше все изменения, относящиеся к этим контролам переносить руками в рабочий файл ресурсов. Очень неудобно. Я не знаю, как студия работает со свойствами ActiveX контролов. Возможно, там просто поменялся формат чего-то между версиями, но не знаю, куда смотреть. Также не знаю, насколько возможно это вылечить. Если кто-нибудь знает, что там надо смотреть, и имеет хоть какие-нибудь идеи, как это все заставить работать - буду очень благодарен. |
|||
|
||||
Любитель |
|
|||
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 7 Всего: 92 |
Странно. ActiveX вроде давно брошен (всысле новго развития) - формат давно один. А что Object Browser выдаёт на эти ocx-ы? Есть нужные св-ва? |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |