Установка nView
Произошло в районе 2011/02/25.
(читать дальше)
Пролог.
Итак, у меня есть карточка nVidia. До апгрейда тоже была nVidia. К ней шли драйверы, которые я поставил. Карточка всего-навсего GT220, но это неважно.
Cистема Windows 2003 Server, но это неважно тоже =)
Часть 1. ССЗБ №1.
Дело началось так -- мне надо было перепечатать преобразуя в голове текст из одного окошка в другое. При этом я хотел, чтобы активным было фоновое -- я туда хотел перепечатывать, а исходное -- неактивное, но на переднем плане.
И я вспомнил, что на старой системе был nView (шёл вместе с дровами, фирменная примочка от nVidia), он предоставляет ништяки типа прозрачности, Always On Top, сворачивания окна в строку и прочая для тех приложений, которые не предусмотрели это в своём меню.
А ещё предоставляет множественный рабочий стол.
Короче, то, что есть у каждого линуксоида.
Стал искать nView у себя уже установленный -- нету (в альт-пробел меню появляться должен), пошёл на сайт nVidia -- говорит с драйверами идёт.
Смотрю в Панели Управления -- есть. Щёлкаю -- говорит "DLL не найдена".
Ок, иду в тырнет, скачиваю DLL, кладу в System32. То же. Пишет, что DLL должна быть в Program Files.
Открываю Program Files\nVidia\... а там пусто!
Становится ясно, что ярлык для nView есть, а сам он не встал. Ок, качаю новый Детонатор (кто не помнит -- раньше так назывался пакет драйверов для nVidia; сейчас он называется Forceware, но я его всё равно называю Детонатор). Русский -- 118 мегабайт.
Со скоростью 30 кб/с -- больше не отдаёт.
Запускаю -- Typical, Custom. выбираю Custom. Предлагает PhysX, nView, драйвер и HD-аудио что-то. Я на автомате нажимаю install, потом понимаю что HD-аудио мне не надо. Пытаюсь нажать Cancel, но тот уже неактивен.
Через 30 секунд пишет -- "Install failed".
Ок -- наверное я нажал отмену-таки. Заново запускаю.
Убираю HD-аудио, отмену не трогаю. "Install failed". А почему -- не говорит. Ещё одна проблема инсталляторов -- слабые возможности по диагностике.
Думаю -- это из-за того что у меня винда английская.
Качаю английский. 85 метров!! Русский 115, а английский -- 85.
Пробую -- тот же эффект. Замечаю галку "Perform clean install" -- сначала удаляет старое.
Ставлю. Пишет -- драйвер удалён, после рестарта установка продолжится. Жму рестарт в инсталляторе. Ничего не происходит.
Ладно думаю, вручную перегружу. Перегружаю. Меня приветствует экран 640*480.
Ну ладно, думаю -- это правильно -- драйвер-то удалён! Логинюсь, запускаю setup -- тот же "Install failed".
=== ССЗБ №1 -- хотел nView -- остался без драйвера!))))
Часть 2. ССЗБ №2.
пытаюсь поставить из inf-файла -- уже лучше -- результат -- сообщение "параметр задан неверно". Какой параметр -- не говорится.
Пытаюсь запустить setup -- теперь он вообще сразу после запуска кажет кукиш, даже не выдавая приветственного экрана выбора типа установки и лицензионного соглашения.
Думаю -- драйвер плохой. Пытаюсь найти другие версии. Нигде старые версии на первый взгляд не держат (поэтому всегда сохраняйте старые версии инсталляторов, потом, если они понадобятся, может быть очень сложно их найти!).
Ах да, я остался со стандартным драйвером. Поставил разрешение нормальное, но прокрутка одного экрана текста занимала около одной секунды (отсутствие аппаратного ускорения).
И иконки на десктопе все в кучу сжались. От страха, видимо.
Ищу диск с драйверами, который шёл с картой. Нахожу. Запускаю.
Жму Install Drivers. Запускается установка DirectX. Отменяю. То есть типа окошко выбора установщика неправильно запускает -- я жму установку драйверов, а он запускает установку DirectX.
Захожу на диск, нахожу установщик драйвера, запускаю. Запускается. Долго фырчит, потом говорит примерно следующее: "Установка завершена. В систему изменения не внесены. Запустите установщик ещё раз".
О_о
Из inf-файла тот же "параметр задан неверно".
Захожу в гугл, натыкаюсь почти сразу на пространную дискуссию -- у кучи народу те же проблемы.
Короткая выжимка:
1) проверьте доступ к ветвям реестра *\nVidia\*
2) для начала удалите "nVidia Drivers" из "установки удаления программ"
3) запустите сервис InstallDrivers Driver Table (у меня его не было)
Ветви nVidia я просто удалил.
"nVidia Drivers" из "установки-удаления" удалил.
Не помогло.
Тут произошло нечто, о чём я скажу чуть позже. Ставлю звёздочку, чтобы было пониятно, куда возвращаться: (*)
Стал копать дальше. Всё больше сообщений "проверьте доступ к ветвям nVidia".
Потом наткнулся на одно дельное замечание -- посмотрите лог установки!
И там было написано где он лежит.
А я не знал, где InstallShield кладёт свои логи, но это мне подсказало.
Лежат логи в C:\windows\setupapi.log
Было там следующее:
"HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce\NvExportOEMDefaults"
#E033 Error 5: Access is denied.
Лезу туда и обнаруживаю что на RunOnce стоит доступ запрета удаления и изменения.
Для всех.
Администратор, система, юзеры, повер юзеры, Creator Owner.
Теперь то, о чём я умолчал.
Дело в том, что я работаю без антивируса.
В том числе, потому что мне интересно самостоятельно вычищать заразу.
И на текущий момент работаю от администратора.
Очень большая доля вирусов лезут в Run и RunOnce, поэтому я собственоручно запретил доступ на запись к ним.
=== ССЗБ№2: сам запретил доступ -- сам маюсь.
Часть 3. Решение.
Дело в том, что я не помнил точно, к каким ветвям я запретил доступ. На тот момент когда я сказал что "произошло кое-что" (см. (*)), я вспомнил об этом и снял запрет на Run в HKCU, а на RunOnce запрета там не было.
А запрет на RunOnce был в HKLM!! А на Run там запрета не было.
Я снял этот запрет (в HKLM).
Запускаю установку драйвера. Драйвер правда не совсем встал... установка зависла.
А когда я нажал в процессах End Process, установщик ВНЕЗАПНО сказал, что установка успешно завершена.
Я посмотрел в диспетчер устройств -- название карты появилось, но был жёлтый восклицательный знак. Я заменил драйвер на стандартный VGA, а потом обратно на этот. Он сказал что встал.
После этого я перезагрузился и получил всё, кроме nView.
Итак, мы вернулись к тому с чего начали.
Эпилог. Установка nView.
Я залез на диск с драйверами и обнаружил файл nView.cab. Внутри был nView-setup.exe .
Я распаковал cab и оттуда поставил nView.
То есть, устанавливать драйверы можно было вообще не! nView -- отдельный компонент со своим установщиком!
Конец. =\
Итого убил 3 часа примерно.