2010-07-30 1 views
1

Я нашел пакет инструментов Vb6 и его развертывание. Я использовал его и создал пакет или установочный файл из моей операционной системы Vista. Позже, когда я попробовал развернуть его на клиентском компьютере с winxp, он просит обновить системный файл и попросить перезагрузить его. Процесс никогда не заканчивается, просто попросите обновить и перезапустить. как мне создать файл установки, чтобы избежать этой проблемы?VB6 Пакет и установка установки спросить перезапуск системы

Edit: Если я создать установочный файл в Win98 и развернуть его в клиентов Vista, или WinXP, то он работает отлично ...

ответ

1

Существует очень хороший шанс, что вы пытаетесь развернуть системные файлы, которые вы не должны. Типичные примеры включают компоненты MSVCRT.

You receive multiple "System files are out of date" error messages when you install a Visual Basic 6.0 application

Использование Win9x может замаскировать проблему, потому что древние версии упакованы. Во время установки либо setup1 обнаружит, что новые версии уже установлены, либо Windows отменит их с помощью System File Protection. Vista намного лучше, чем XP.

Да, PDW является старым. По этой причине вам следует искать статьи MSKB по советам по использованию, более новой информации и ручному обновлению файлов, которые PDW использует в качестве руководства (его папку REDIST, файлы VB6DEP.INI и .DEP, которые сопровождают многие элементы управления).

Best practices for deploying Visual Basic 6.0 applications - хорошая обобщенная отправная точка.

На многие из этих вопросов были даны ответы за годы, прошедшие с момента выпуска VB6 и PDW.

1

VB6 пакет и инструмент развертывания действительно устарели. Он не очень хорошо работает с некоторыми новыми функциями безопасности.

Возможно, он пытается установить старые копии времени автономной работы VB6, а затем Windows восстанавливает свои собственные копии.

Прошло некоторое время, но вы можете удалить файлы времени исполнения VB6 из файлов для развертывания в Мастере развертывания и развертывания? Если да, сделайте это. До тех пор, пока на компьютере, на котором установлены компьютеры, установлены последние пакеты обновлений, на нем уже будут задействованы VB6.

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

В качестве альтернативы попробуйте другую технологию установки. Вы можете создать проект установки в современных версиях Visual Studio. В качестве альтернативы есть некоторые очень хорошие продукты с открытым исходным кодом и коммерческие продукты.

Я использовал этот довольно успешно в прошлом: http://nsis.sourceforge.net/Main_Page

+0

Я немного запутался в этом «Вероятно, он пытается установить старые копии времени автономной работы VB6, а затем Windows восстанавливает свои собственные копии». как будто я делаю установку в 98 и устанавливаю в xp, тогда она работает – KoolKabin

+1

Так что происходит тогда, это попытка установить какой-то конкретный визовый файл, который вы установили на свой компьютер XP. Файл, вероятно, несовместим с XP и вызывает проблемы. Опять же, я говорю, удалять файлы времени исполнения VB6 из вашей установки, если это не работает, попробуйте удалить другие системные файлы из вашей установки, пока не выясните, какая из них является проблемой.В качестве альтернативы просто используйте свой 98 build :) – Zippit

+0

Есть ли в вашей программе другие файлы, кроме файлов времени исполнения VB6 и ваших собственных скомпилированных файлов? – Zippit