Показать полную графическую версию : Помощник установки драйверов (DIA - Drivers Installer Assistant) v.6.4.28 PreFinal
MKN, дак Вызов дополнительных утилит и есть часть моей программы
Вы распишите алгоритм, хотя бы в кратце. А там будет видно! пока что не предполагаю как это.
В динамике строить список драйверов компа, отсортировать его по списку и к каждому типу прикрепить кнопки неизвестно на каких условиях. Я пока себе это не представляю.
т.е надо вести еще какую то базу данных и определять к какому типу устройств относится данное устройство. и на основании типа цеплять тот или иной инсталлятор. По HWID что-ли или по наименованию устройства?
Допустим список устройст локального ПК - вывести на отдельной форме это не проблема. Но все остальное требует тщательного разжевывания. Уж извините, чесли я вас до конца не понимаю.
Побудьте немного аналитиком :)
При написании программы около 50% уходит именно на составление ТЗ. А остальное уже написание кода
Кстати вот тут заметил что при нажатии на кнопку Ф1 помощь не запускается. »
Это пока в коде не прописывыл! Забылось малость....
Также при нажатии в контекстном меню пункта "Справка" - "Справка по работе F1" »
Это ошибка. Я файл справки менял (расширение), а в коде идет вызов другого файла. Вот и молчок.
To All
Пока может быть много мелких косяков. Мне важна работоспособность основных функций, если основное все ок, то будем править мелочевку! А потом уже и расширять функционал. И справку отлаживать и многое многое другое :)
Может его вообще убрать поскольку нет никакой гарантии что на компьютере где запускается Помошник установлен Эксель. »
В программе есть проверка установлен у вас Excel или нет! если у вас его нет, то соответственно этот пункт и не отработает
romeo91
http://s58.radikal.ru/i160/0905/80/097c6d702662t.jpg (http://radikal.ru/F/s58.radikal.ru/i160/0905/80/097c6d702662.png.html)
Запускал обновлённую тобой версию (пустую без пакетов драйверов)
И вот здесь http://s56.radikal.ru/i152/0905/3f/d212668071eet.jpg (http://radikal.ru/F/s56.radikal.ru/i152/0905/3f/d212668071ee.jpg.html)
Запускал обновлённую тобой версию (пустую без пакетов драйверов) »
Может дело в пути:
Рабочий каталог: C:\Documents and Settings\root\Рабочий стол\DriversInstaller_Release_1.0.0
Вы не пробовали запускать из другого места поближе к корню диска и желательно без русских букв в пути?
Попробовал симитировать вашу ошибку, кинул прогу в папку с русскими буквами - ошибка аналогичная (только уже в другой строке)!!! Как по мне прога (или какие-то ее компоненты) не дружит с русскими буквами или именами в пути содержащими пробелы!!!
Немногим позже:
Провел анализ:
На пробной машине без установленных дополнительных ДЛЛ. С помещением в папку с программой трёх файлов *.ocx, выложенных в шапке темы.
- Запускаем программу из папки „Drivers”. Ошибок никаких нет.
- Запускаем программу из папки „Drivers All”. Получаем код ошибки приложения – 53 и номер строки с ошибкой - 2111.
- Запускаем программу из папки „ Драйвера”. Ошибок никаких нет.
- Запускаем программу из папки „ Все драйвера”. Получаем код ошибки приложения – 53 и номер строки с ошибкой - 2111
ИМХО, следовательно проблемма в пробелах в путях!!!
Shanser Спасибо. Это я сглупил с путями
romeo91, Может добавить в шапку напоминание о пути без пробелов и русских именах.
romeo91, Может добавить в шапку напоминание о пути без пробелов и русских именах. »
Лучше записать в шапке о путях содержащих пробелы. С путями содержащими русские буквы иногда работает нормально.
romeo91,
Задача уже неоднократно обсуждалась в теме Создание дисков с автоматической установкой драйверов http://forum.oszone.net/thread-58285.html
Повторю один из вариантов :
Есть комп- "чёрный ящик" с установленной XP(Vista) и с неизвестными устройствами, требующими установки для них драйверов.
Дисков "сопровождения" ессно нет, ситуация многим до боли знакомая.
Задача :
При запуске диска :
1. Предложить пользователю две кнопки:
а). "Определить устройства, требующие установки драйверов и установить драйверы "АВТОМАТИЧЕСКИ"
и
б). "Определить устройства, требующие установки драйверов" и выбрать установку необходимых - "ВРУЧНУЮ"
После сканирования устройств, для пункта б). :
1. Вывести для пользователя меню-список названий найденных устройств, с возможно большими подробностями (тип, чип, производитель и т.д.)
2. Напротив каждого устройства в списке - чекбокс и кнопка "Установить драйвер"
3. Под меню списка - кнопка "Установить выбранные драйверы" (установка производится последовательно и автоматически. Перезагрузка компа также автоматически, если необходимо)
PS Драйверы (родные от пр-ля) на диск пользователь помещает сам, какие сочтёт необходимыми. Совершенно незачем помещать на диск кучу-малу из всех возможных драйверов.
Должна быть возможность корректировки путей к Setup драйверов и обновления "базы" ID устройств с помощью соответствующего инструментария (вариант такой утилиты уже был)
Пример приблизительной и частичной реализации желаемого есть здесь : http://www.depocomputers.ru/download/drivers/neos_2008/xp/drivers_xp.zip
Предлагаемая на форуме реализация установки драйверов из драйверпаков мне категорически не нравится из-за массы не прекращающихся недоразумений и вопросов при установке, которых не должно быть при установке драйверов от производителя.
romeo91, Очень приятно обрадован таким неожиданым сюрпризом, на деле еще не проверил, но по уровню интерфейса на шаг впереди подобных программ.
Респект автору и успехов в развитии проэкта.
Windows 7 x64 определяется не как "vista x64", а как "vista\7\Server 2008\Server 2008 R2"
Также не работает dpinstaller:
---------------------------
Мастер установки драйверов устройств
---------------------------
На этом компьютере следует использовать 64—разрядную версию DPInst.EXE.
Обратитесь к изготовителю, предоставившему этот пакет.
---------------------------
ОК
---------------------------
При включении проверки обновлений в параметрах при загрузке выдает:
---------------------------
Ошибка запуска проверки обновления
---------------------------
Соединение с интернетом не установлено или сервер недоступен
---------------------------
ОК
---------------------------
a-shin, Проблема, с путями в новой версии исправлена
Также кое-что еще. Подробности в шапке.
Shanser Спасибо за столь подробный анализ.
Windows 7 x64 определяется не как "vista x64", а как "vista\7\Server 2008\Server 2008 R2" »А что написано в названии операционной системы под меню. Похоже придется ставить себе виртуалку с 64-х битной виндой.
MKN, По сути то что вы предлагаете это совсем другая программа. Лично я не совсем люблю всякие там автоматы и прочее.
Как бы автоматический режим уже присутствует в программе. достаточно только выбрать режим совместимые драйвера и в нужном вам порядке (именно вам а не заложенном в программе) прощелкать кнопки для установки соответсвующих драйверов.
Ручной режим я пока не делал и не знаю буду ли - время покажет
Ту программу что вы предложили, насколько я понимаю она настраиваема и бау можно пополнять, пусть и не в автоматическом режиме. И в ней можно прописать необходимый запуск тго или иного инсталлятора для нужного вам устойства. Почему бы вам не поразбираться с ней.
Также похожие функции выбора драйверов галочками есть в аналоге программы на этом форуме (программа установки драйверов). Посмотрите там.
Резюме - пока то что вы просите я не знаю как прикрутить к моей программе. По-крайней мере не сейчас, а потом видно будет.
mozgabyte
12-05-2009, 23:47
romeo91, мое предложение по косметической доработке программы..
мне кажется нужно Help.mht и Links.mht обьеденить в один .chm файл и туда же вставить историю версий.
P.S. это моё IMHO, просто так будет более серьезно.. :) в принципе могу заняться этим с Вашего позволения..
romeo91, error.log (http://depositfiles.com/files/e76zc62st)
Выскакивает ошибка, если перемещаешь DriversInstaller_Release_1.0.2_Full с одной папки в другую, а потом запускаешь DriversInstaller.exe. Может в программе сделать сначала проверку нужных компонент в самой папке DriversInstaller_Release_1.0.2_Full.
Ошибка появляется, когда запускаешь DriversInstaller.exe, только один раз, далее все последующие запуски проходят без проблем.
Выскакивает ошибка, если перемещаешь DriversInstaller_Release_1.0.2_Full с одной папки в другую, а потом запускаешь DriversInstaller.exe. Может в программе сделать сначала проверку нужных компонент в самой папке DriversInstaller_Release_1.0.2_Full.
Ошибка появляется, когда запускаешь DriversInstaller.exe, только один раз, далее все последующие запуски проходят без проблем. »
Это происходит потому что файлы *.Ocx находятся в папке с программой. Вы меняете ее папку и соответственно меняется расположение этих файлов. Если их поместить в папку System32 и не держать в папке с программой, проблемма должна исчезнуть.
Кстати, уважаемый romeo91, а не лучше бы сделать регистрацию файлов:
mscomctl.OCX
TabCtl32.Ocx
MSFLXGRD.OCX
в системе вообще. Например копирования их в папку System32 и отттуда уже их регистрация.
Это уберет ошибку связанную с ошибкой в расположении *.Ocx, при запуске проги из другой папки, на одном и том же компьютере повторно. Просто не факт что у всех есть интегрированные аддоны dllsfull.
Lisabon, у меня например поскольку в системе интегрирован аддон dllsful, при смене названия директори ошибок не выдается,
mozgabyte
13-05-2009, 00:24
Например копирования их в папку System32 и отттуда уже их регистрация. »
Если это будет сборник драйверов на CD или еще какомнить носителе, то копирование в System32 и последующая регистрация не очень удобна.. Лучше их оставить в корне программы и привязать к .exe!
P.S. В Вашем случае получается не совсем автономная работа :)
Assistant of the installation driver »
Это помощник установочного драйвера :) Д.б. Driver Installation Assistant.
А как дела обстоят со скростью установки драйверов.
Драйвера распоковывает Сама програма или 7zip архиватор ???
romeo91, Очень сильный проект. а настройки у программы просто отличные!
Сильно пока не вникал - так потестил пару пакетов... возник вопрос:
У тебя так же программа распаковывает полностью архив, а потом берет файлы - или сразу из архивов выдергивает только нужные?
Д.б. Driver Installation Assistant. »
Доверяю! Не раз слышал о вашем знании английского :)
Я долго пытался перевести корректно, вышло то что вышло!
Скорее изменю название
Драйвера распоковывает Сама програма или 7zip архиватор ??? »
архиватор 7za
Можно добавить конечно и в программу, но все равно придется за собой таскать файл 7z.dll. Пока такой необходимости не вижу. 7za прекрасно справляется со своей работой :)
Shanser, mozgabyte,
Я так понимаю в основном у всех появляется ошибка при отсутствии файла MSFLXGRD.OCX в папке с программой. Этот файл нужен пока временно, так как в программу встроен некий обработчик ошибок. После отладки программы я его уберу, и на один файл будет меньше
Остальные компоненты к сожалению в винду не входят! и придется их таскать за собой
Файл mscomctl.OCX может быть у большинства пользователей, так как входит во многие программы, в том числе и Офис
У тебя так же программа распаковывает полностью архив, а потом берет файлы - или сразу из архивов выдергивает только нужные? »
В первом режиме должна вытаскивать только файлы необходимые каталоги содержащие нужные драйвера.
После нажатия кнопки в соответсвующем режиме посмотрите каталог %Temp%\DriversInstaller\ там все видно
Во втором польностью.
Иначе не было бы смысла их делать :)
Если это будет сборник драйверов на CD или еще какомнить носителе, то копирование в System32 и последующая регистрация не очень удобна.. Лучше их оставить в корне программы и привязать к .exe! »
В принципе я могу попытаться добавить содержимое этих файлов в тело программы и при запске извлекать и регистрировать при необходимости, но при это вырастет размер программы на размер этих файлов. Пока сам exe файл после обработки UPX довольно мал. И его просто выкладывать для обновления.
Или проверять при запуске зарегистрирван файл или нет и если нет то копировать его в каталог system32 из папки с программой и регистрировать
мне кажется нужно Help.mht и Links.mht обьеденить в один .chm файл и туда же вставить историю версий.
P.S. это моё IMHO, просто так будет более серьезно.. в принципе могу заняться этим с Вашего позволения.. »
Дело то полезное! но не знаю стоит ли пока это делать!
Справки так таковой пока нет - ее писать и писать надо.
К тому же программа пока будет отлаживаться и соответственно надо справку тоже править! может пока не стоит торопится.
Хотя если есть желание, то я всегда за
В принципе я могу попытаться добавить содержимое этих файлов в тело программы и при запске извлекать и регистрировать при необходимости, но при это вырастет размер программы на размер этих файлов. Пока сам exe файл после обработки UPX довольно мал. И его просто выкладывать для обновления.
Или проверять при запуске зарегистрирван файл или нет и если нет то копировать его в каталог system32 из папки с программой и регистрировать »
Самый лучший вариант будет если программа сама определяет или зарегистрированный файл или нет. Если зареганный - запустится, а если нет - зарегать его и все-равно запустится. Все это должно работать независимо от носителя на котором оно находится и максимально не зависить от софта установленного на пользовательском компе.
Что касается увеличения размера - не очень большая проблемма, поскольку я думаю он увеличится метра на 2 максимум. Кстати архиватор 7z еще никто не отменял. У меня он версию DriversInstaller 1.0.0 заархивировал на 100 кб меньше. Это конечно мелочи - однако их тоже надо учитывать.
проверять при запуске зарегистрирван файл или нет и если нет то копировать его в каталог system32 из папки с программой и регистрировать »
Это решение более удобное - главное для таких программ портативность и отсутствие лишних диалоговых окон - если файлы будут автоматом региться без участия юзера - прекрасно!
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC