Разработка в VB 6.0 - PullRequest
       8

Разработка в VB 6.0

1 голос
/ 07 января 2009

У нас есть несколько проектов в VB 6.0. Большинство этих проектов - ActiveX DLL. При разработке проекты используют ссылку «.dll» на другие проекты, но это не позволяет нам отлаживать. Итак, для этого мы должны взять ссылку на проект .vbp. Однако, если взять ссылку на проект, это означает, что нас просят о бинарной совместимости.

Во время разработки следует ли использовать совместимость проектов и встраивать проекты в библиотеки DLL для развертывания?

Ответы [ 3 ]

2 голосов
/ 07 января 2009

Во время разработки можно ссылаться на vbp, просто убедитесь, что включена бинарная совместимость. Если вы этого не сделаете, вы превратите реестр в хороший беспорядок, и развертывание станет катастрофой. Однако имейте в виду, что даже при включенной двоичной совместимости каждый раз, когда вы изменяете открытый интерфейс DLL, вы создаете прямую ссылку в записи OLE в реестре.

1 голос
/ 09 января 2009

Вы должны быть в состоянии отладить ссылки на DLL. Вы начали проекты в правильном порядке? Или вы можете добавить все / некоторые DLL в одну и ту же «группу проектов» (* .vbg).

1 голос
/ 07 января 2009

у нас есть четыре уровня DLLS в программном обеспечении CAD / CAM, которые мы используем для режущих станков моей компании. Мы справились с этим, создав каталог совместимости, в котором находятся библиотеки ПРЕДЫДУЩЕЙ версии. При этом мы можем продолжать использовать бинарную совместимость.

Процесс выглядит следующим образом.

  • Совместимость имеет версии 119 DLL в нем.
  • Мы компилируем Редакцию 120 и отпустите это
  • Скопируйте библиотеки Revision 120 в каталог совместимости.
  • Разработка
  • Test
  • Мы компилируем Редакцию 121 и отпустите.
  • Скопируйте библиотеки Revision 121 в каталог совместимости.
  • [повтор]

Основная проблема, за которой вам нужно следить, - это изменения самого низкого уровня используемых вами библиотек DLL. Visual Basic 6 использует оператор #include при создании своих внутренних библиотек типов. Делать это нужно, чтобы запутать его из-за того, является ли он все еще двоичным или нет. Обратите внимание, что вы можете увидеть это с помощью инструмента OLE View, поставляемого с Visual Studio 6.

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

Помните, что двоичная совместимость означает, что все, что вы можете сделать, это добавить метод или свойство. Вы не можете изменить имя существующего метода или список аргументов. (это подпись в терминах COM)

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