PDA

Показать полную графическую версию : Перепаковка пакетов драйверов


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [17] 18 19 20 21 22 23 24 25 26 27 28

ya158
23-07-2009, 19:43
Я уже не в отпуске. Но пока не соображу как перепаковать NvCplSetupInt.exe. Постараюсь заняться этим после выходных поплотнее.

_DRON_
23-07-2009, 20:00
Я могу выложить перепакованный, только его проверить надо (у меня в данный момент нет нужного железа):
http://slil.ru/27855208

ya158
23-07-2009, 23:39
_DRON_,
Раскрыл твой инсталлятор, но не обнаружил в нем файлов с русским языком. А как ты перепаковавал?

LonerD
23-07-2009, 23:49
Вот здесь выкладывал мой вариант перепаковки
http://forum.oszone.net/post-1163988-523.html
NvCplSetupInt.exe уменьшен почти в два раза. Проблема в том, что панелька не ставится, а где я ошибся никак не могу понять :) . Может, кто-то доработает такой метод установки.

YikxX
24-07-2009, 00:23
Перепаковал имеющимся скриптом - на Intel все левые языки остались, тупо снес ненужные папки, русский язык ставится. У нвидии оставил NvCplSetupInt.exe который шел в последнем языковом паке - пока не проверял.

_DRON_
24-07-2009, 01:22
но не обнаружил в нем файлов с русским языком. »
Их там и нет, смысл перепаковки, только в уменьшении размера результирующего 7z-архива примерно на 10М.
С языками я не разбирался пока, так как лично мне они не особо нужны.
А как ты перепаковавал? »
Запустил EXE-шник, поймал в Temp папке MSI файл, а затем подправил его с помощью "Qwerty.Msi" (http://www.qwerty-msi.com/). Ну и в 7zSFX упаковал (без сжатия).
Только, как я уже сказал, проверить результат мне не на чем и возможно оно не работает так же как и у DPavlik82.

ya158
24-07-2009, 07:50
Их там и нет, смысл перепаковки, только в уменьшении размера результирующего 7z-архива примерно на 10М. »
Тогда почему бы не воспользоваться чисто английской панелькой? Перепаковка нужна для того, что бы оставлять англииский и русский языки, а иначе можно просто не использовать DP_Graphics_Languages_wnt5_x86-32.7z.

LonerD
24-07-2009, 12:35
Тогда почему бы не воспользоваться чисто английской панелькой? Перепаковка нужна для того, »
По-моему, перепаковка (в том числе и удаление языков) нужна для уменьшения размера пакета.
Чисто английская панелька весит 20 Мб, а после перепаковки ее размер можно уменьшить почти в два раза.

ya158
24-07-2009, 13:17
Обновил скрипт для перепаковки. Нвидивская панель перепаковывается (остаются только русский и английский языки), но я не тестировал установку на реально железе. Если кто-нибудь может проверить - просьба протестировать и отписаться здесь. Панель должна ставиться в тихом режиме. Скрипт во вложении. Файл NvCplSetupInt.exe надо поместить в папку Files. До конца выходных меня не будет. Если панель будет устанавливаться, то в начале следующей недели проверю скрипт для звука и выложу обновлённый перепаковщик.

_DRON_
24-07-2009, 13:32
Тогда почему бы не воспользоваться чисто английской панелькой? »
Именно ей я и воспользовался.
а иначе можно просто не использовать DP_Graphics_Languages_wnt5_x86-32.7z »
А я его и не использую.

YikxX
25-07-2009, 03:19
ya158, протестировал. Панель, к сожалению, не установилась. :(

_DRON_
25-07-2009, 17:06
Панель, к сожалению, не установилась. »
И не должна, так как соустановщик ещё и передаёт в MSI параметр "DRIVERINF" который ни я, ни ya158 не обрабатываем.
Попробуйте заменить EXE-шник от ya158 на тот что в аттаче.

ya158
26-07-2009, 18:22
_DRON_,
Подскажи, с какими параметрами запускается MSI? Я, честно говоря, вообще не понял как запускается NvCplSetupInt.exe. Во всех inf-файлах есть только строки для копирования этого файла, а вот для его запуска я не нашёл. Если, у тебя есть инфа по этому поводу, приведи её пожалуйста.

_DRON_
26-07-2009, 18:59
а вот для его запуска я не нашёл »
Как я уже писал это делает соустановщик nvcodins.dll, а параметры можно посмотреть в каком-то логе, по крайней мере там есть вот такой код: swprintf_s((wchar_t *)&v198, 0x104u, L"%s\\NVCplSetup*.exe", &PathName);
if ( FindFirstFileW((const WCHAR *)&v198, (struct _WIN32_FIND_DATAW *)&v207) == (HANDLE)-1 )
{
sub_100012D0((const char *)L"No CPL Installer found.\n");
goto LABEL_239;
}
v86 = sub_100035D0();
v87 = v86;
if ( v86 != 1 && v86 != 2 )
goto LABEL_245;
sub_100012D0((const char *)L"Detected running in Safe Mode.\n");
if ( sub_100037F0(v87) )
{
sub_100012D0((const char *)L"MSIExec service started successfully.\n");
LABEL_245:
v191 = 0;
memset(&v240, 0, 0x206u);
_swprintf((wchar_t *)&v191, L"\"%s\\%s\" /s /v\"/qn DRIVERINF=\\\"%s\\\"", &PathName, &v246, (char *)v85 + 536);
sub_100012D0((const char *)L"CPL Installer command line is %s.\n", &v191);
sub_100016C0();
v5 = v178;
}
То есть в текущей директории ищется файл по маске "NVCplSetup*.exe", а затем он запускается с параметром /s /v"/qn DRIVERINF=\"<Тут скорее всего путь до INF-а>\". Что конкретно попадает в DRIVERINF я не знаю, так как нужного железа не имею. Мой EXE-шник берёт то что после /v добавляет туда SETUPEXEDIR (не думаю, что это важно, но пусть лучше будет как в оригинале) и получается примерно такая строка запуска: msiexec.exe /i "<Полный путь до EXE>\NvCplSetupInt\NVIDIA Control Panel.msi" SETUPEXEDIR="<Полный путь до EXE>" /qn DRIVERINF="<Тут скорее всего путь до INF-а>".

ya158
27-07-2009, 21:55
Кто-нибудь проверил установку панели с файлом от _DRON_,а?

2ALL
В драйверпаках и в различных архивах есть папки и файлы, в названии которых присутствуют цифры 64 и/или же слово Vista. Мне кажется, что эти файлы и папки относятся к 64-битной Винде или к висте. Отсюда вопрос: можно ли повыкидывать эти файлы и папки, если используешь драйверпаки для дистрибутива 32-битной винды?

ya158
30-07-2009, 20:53
Новая версия (http://forum.oszone.net/post-1018367-257.html). В ней:
Обновлены скрипты.
Немного изменена логика работы
Добавлена обработка панели nVidia (пока не проверялось на реальной машине)

ya158
30-11-2009, 20:02
Новая версия (http://forum.oszone.net/post-1018367-257.html). В ней:
Адаптировал скрипты под последнии на данный момент беты и уменьшил размер архива.

YikxX
02-01-2010, 04:53
ya158, а под декабрьские финалы подойдет?

(пока не проверялось на реальной машине) » Я проверил с финальным драйвпаком - не ставится панель. :(

ya158
08-01-2010, 18:50
На финальных и новых бетах проверю после праздников и выложу обновлённый скрипт

Orestik
11-01-2010, 17:10
расскажи принцип работы этой утилиты, возможно я не догоняю.... Закинул я папку с драйверами в папку OLD и запустил соответcnвенно DelLangDP_Audio.cmd или DelLangDP_Video.cmd. что мне надо, а мне пишет -Поместите пакеты драйверов в папку OLD!!! Что я не так делаю, подскажите пожалуйста....




© OSzone.net 2001-2012