Страница: 1 | 2 |
Вопрос: Не запускается программа
Добавлено: 30.08.05 13:18
Автор вопроса: Lesnik
Ответы
Всего ответов: 20
Номер ответа: 16
Автор ответа:
AndreyMp
ICQ: 237822510
Вопросов: 28
Ответов: 1182
Профиль | | #16
Добавлено: 31.08.05 16:28
Заходишь: Пуск\Выполнить\...
Пишешь: regsvr32 %windir%\system32\XPButtons.ocx
Ты думаешь если прогу распространять, то юзер все это делать будет. К тому же там еще про какой то .ocx писали.Лучше все таки инсталятор сделать.
Номер ответа: 17
Автор ответа:
ionux
ICQ: 327420631
Вопросов: 10
Ответов: 41
Web-сайт:
Профиль | | #17
Добавлено: 31.08.05 20:28
Согласен, но можно в Form_Load самой программы
(без инсталяторов всяких обойтись) вписать типа:
FileCopy App.Path & "/'его контрол'.ocx", Enveron("windir" & "\System32\'его контрол'.ocx"
Затем:
Shell regsvr32 %windir%\System32\'его контрол'.ocx
+ вставить обработчик ошибок и проверку на существование этого файла.
На мой взгляд так было бы легче.
Как ты думаешь?
Номер ответа: 18
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #18
Добавлено: 01.09.05 03:27
Угу.
1. System32 - это на линейке NT. На 9х - System.
2. Если прога запустится из корня диска, выражение App.Path & "/'его контрол'.ocx" будет равным примерно "c:\/'его контрол'.ocx".
3. Кто тебе сказал, что у текущего пользователя есть permission на запись в system32? Если такового нет, возникнет ошибка и прога вывалится. А если on error resume next, то сразу вслед за этим возникнет ActiveX cannot create object.
4. Проверка существования? Нды? А если у юзера существует ocx версии 4.11, а у тебя в дистрибутиве версия 4.15, и ты знаешь, что в 4.15 были устранены злостные баги из 4.11?
А если наоборот?
5. А у текущего пользователя есть права на регистрацию контрола?
6. А как вообще ты собрался запустить свою программу, если у пользователя нет msvbvm60?
Ты задолбаешься учитывать все варианты. Вот для решения всех этих проблем существуют инсталляторы...
Номер ответа: 19
Автор ответа:
Andrey999
ICQ: 30852361
Вопросов: 73
Ответов: 168
Web-сайт:
Профиль | | #19
Добавлено: 01.09.05 09:19
Полностью поддерживаю GSerg.
Номер ответа: 20
Автор ответа:
AndreyMp
ICQ: 237822510
Вопросов: 28
Ответов: 1182
Профиль | | #20
Добавлено: 01.09.05 09:20
И даже можешь не подозревать о баге, пока он не всплывет где-нибудь на пятой, десятой, n-ой машине, только лишь по одной из тех причин о которых писал GSerg.А кроме них могут быть и другие.