Интеграция VB6 с MSBuild
-
03-07-2019 - |
Вопрос
Итак, это вопрос для всех, кому приходилось интегрировать сборку/компиляцию устаревших проектов/кода в среде Team Build/MSBuild, в частности, приложений/проектов Visual Basic 6.
Снаружи о написании специальной задачи сборки (против которой я не против) есть ли у кого-нибудь предложения о том, как лучше всего интегрировать компиляцию и управление версиями устаревших проектов VB6 в сборки MSBuild?
Я знаю о задачах FreeToDev msbuild на КодПлекс но на данный момент они отозваны.
В идеале я хочу создать версию и скомпилировать код, а также записать выходные данные компиляции (особенно ошибки) для журнала msbuild.
Я видел советы по инкапсулированию этой функциональности в пользовательскую задачу, но на самом деле задавался вопросом, пробовал ли кто -нибудь другое решение (помимо выполнения команд оболочки) - по сути, есть ли у кого -нибудь «более чистое» решение?
В идеале выполнение команд с использованием было бы последним средством.
Решение
Задача VB6 вернется в понедельник.Что касается управления версиями, в пакете нет явной задачи управления версиями vb, однако вы можете использовать задачи TfsVersion (TaskAction="GetVersion") и File (TaskAction="Replace").Если вы считаете, что есть смысл создать новую задачу для инкапсуляции/предоставления других функций, дайте мне знать, и я добавлю ее в пакет на благо всего сообщества.
Извиняюсь за отзыв, но приходите в понедельник, я уверен, все поймут.
Другие советы
Я использую Нант ежедневно создавать проекты VB6.Для выполнения сборок используется команда выполнения Nant (мы создаем 4 проекта как часть одного «решения»).
Он также позволяет вам помечать версии в репозитории системы контроля версий, получать последнюю версию кода, возвращать и извлекать все обычные требования, компилировать программы обновления/установки, копировать файлы в необходимые места и отправлять результаты по электронной почте.
Однако зарегистрированные результаты довольно минимальны, поскольку вы получаете только выходные данные, полученные в результате компиляции командной строки VB6.
Для управления версиями мне пришлось написать небольшое приложение, которое извлекало бы номер версии моего скомпилированного исполняемого файла и записывало его в текстовый файл, который Нант мог бы затем прочитать и использовать (для меток, имен файлов и т. д.).(Немного неприятно, но номера версий, сгенерированные VB, все равно не соответствуют).
Для получения помощи по другим неосновным задачам см. NAntContrib — по ссылке NAnt выше.