Должны ли вы создавать компоненты каждый раз, когда создаете главное приложение - PullRequest
0 голосов
/ 06 октября 2009

Мы начали использовать Final Builder для создания сборок для наших проектов vb6 и .net. Мы также используем Visual Source Safe для управления нашим источником. Некоторые из наших vb6 exe зависят от определенных ocx, так что конкретный vb6 exe может потребовать конкретную версию ocx.

Вопрос в том, должен ли финальный сценарий компоновщика для нашего exe-проекта перестроить проект ocx, или лучше просто извлечь конкретную версию уже скомпилированного ocx. Меня беспокоит то, что другие разработчики могли сломать сборку (или создать ошибку) для ocx, что могло бы сломать исполняемый файл, который мы пытаемся собрать. Более того, перестройка проекта ocx приведет к той же версии ocx, но с другой датой, что приведет к путанице, если возникнут проблемы dllhell (ocx hell).

Ура, Mike

Ответы [ 2 ]

2 голосов
/ 06 октября 2009

Нет разницы с точки зрения создания и поддержки вашего приложения между DLL OCX и ActiveX. ОК должен использовать двоичную совместимость и быть частью вашего процесса компиляции.

Это, однако, общее правило. У вас могут быть некоторые компоненты, которые редко меняются, если когда-либо. В моем собственном приложении VB6 у меня есть несколько компонентов, которые находятся на самом низком уровне моей иерархии ссылок, которые редко обновляются. Они могут обновляться один или два раза в год в лучшем случае. Некоторые не обновлялись уже несколько лет.

Однако, исходя из вашего описания, похоже, что элементы управления все еще модифицируются. Поэтому я сомневаюсь, что второй случай применим.

В конце концов, используйте свое лучшее суждение.

0 голосов
/ 07 октября 2009

Существует два способа использования OCX / DLL: повторное использование кода и фрагментация слишком большого проекта.

Те, которые предназначены для повторного использования, были бы абсурдны для сборки, сборки и перестройки, и почти никогда не должны быть адаптированы под новое приложение. Это ваши коронные драгоценности, и большинство людей не должно иметь возможности изменять источник. Они являются областью "писателей библиотек" вашей организации, потому что это то, чем они являются: библиотеки.

Если у вас просто большие, монолитные, нездоровые приложения, вам, возможно, придется пойти другим путем. Тогда OCX и DLL просто становятся неуклюжим расширением концепции «модуля». Вот почему у нас есть проектные группы.

Пользователи вашей библиотеки не должны возиться с библиотеками. Я уверен, что все они считают себя способными «обеспечить их актуальность и производительность», но это совершенно другая дискуссия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...