Вам понадобится копия Visual Basic 6 (или Visual Studio 6), которая сложна.Если у вас есть подписка MSDN, я совершенно уверен, что вы можете скачать ее из их архива, но если нет, вам может понадобиться купить копию.Проверьте EBay.Сделайте так, чтобы магазин покупал их за свой счет, и они должны владеть им на случай, если они захотят внести изменения в будущем.Вы можете использовать его от их имени, чтобы работать для них, если вы единственный, кто его использует, и просто удалить его, когда закончите.
Кроме того, если у вас есть копия Visual Studio 2005Технически вы можете "понизить" версию до VS6, но вам нужно позвонить в Microsoft и попросить их выслать вам программу установки, и вам не разрешено использовать VS2005 одновременно с VS6.Да, я знаю ...
Хорошо, так что, если вы зашли так далеко, загрузите источник на свой компьютер и установите его под контроль источника.Я предлагаю Mercurial (в частности, клиент TortoiseHg).Мне повезло с этим в проекте VB6, и это бесплатно.( Не используйте SourceSafe, даже если он поставляется бесплатно с VS6! ) Распределенная природа репозитория Mercurial означает, что вы можете отдать им обратно компакт-диск с полным репозиторием на нем и следующий бедный сок, которыйдолжен внести изменения, по крайней мере, сможет сделать разницу и знать, что вы сделали.
Как кто-то здесь сказал, VB6 имеет встроенную утилиту для создания программ установки, но я думаю, что вам нужно быловерсия Enterprise для этого.Это стоит выяснить, прежде чем вы получите копию.
А теперь продолжайте вносить изменения, но будьте очень осторожны.Помните, что у вас, вероятно, нет никаких юнит-тестов, поэтому вы, скорее всего, сломаете вещи.Если вы хотите быть профессионалом в этом вопросе, для VB6 существуют платформы модульного тестирования.Например, vbUnit .Опять же, я предлагаю заказчику купить копию (мне кажется, около 99 долларов за одно место разработчика).Если бы изменение было чем-то большим, чем просто изменение логотипа компании на заставке, я бы в это вложил. Напишите тесты, которые охватывают каждый модуль или функцию, которую вы собираетесь изменить.Если вся логика заключается в обработчиках событий в самой форме, аккуратно удалите код, который нужно заменить, в модули, для которых вы можете написать модульные тесты.Напишите тесты, чтобы сначала проверить текущую функциональность.
Затем продолжите и внесите изменения.Если у вас возникли проблемы с настройкой среды тестирования, вы можете также использовать некоторые TDD и сначала написать свои тесты.Напишите тест, убедитесь, что он провалился, напишите достаточно кода, чтобы он прошел, и повторите.
Все это по-прежнему требует наличия надежного плана ручного тестирования для проверки функциональности в конце.Это означает, что вам нужно твердое понимание того, что он делает.Вы можете в значительной степени предположить, что независимо от того, насколько вы осторожны, вы сломаете то, что не поняли.Удостоверьтесь, что у вас есть достаточно времени для исправления других проблем, возникающих после его доставки.
Я рекомендую не переписывать его в .NET, если это не очень простая программа с одной формой.Усилие, скорее всего, не стоит.
Предостережение: остерегайтесь сторонних компонентов, которые оригинальный программист мог использовать, но не был включен в компакт-диск.Если они использовали некоторые ActiveX или COM-компоненты, которые они приобрели у третьих лиц, но они не лицензировали их для вашего клиента, вам, возможно, придется в конечном итоге приобрести их снова, просто чтобы их скомпилировать.
РЕДАКТИРОВАТЬ :
Исходя из вашей дополнительной информации, если вы на самом деле просто меняете пару элементов управления и формулировку, то я думаю, что вы можете обойтись без механизма модульного тестирования.Хотя я бы определенно использовал какой-нибудь контроль исходного кода.
Я помню, что использовал Мастер пакетов и развертывания, и я согласен, что он отстой.Я действительно использовал сторонний установщик, теперь, когда я думаю об этом.Однако, если изменения невелики и исходное приложение использует PDW, я, вероятно, буду придерживаться этого.