воскресенье, 9 декабря 2012 г.

Утилита командной строки rundll32.exe



rundll32 shell32.dll,Control_RunDLL hotplug.dll - диалоговое окно Отключение или извлечение аппаратного устройства

rundll32 diskcopy,DiskCopyRunDll - вызов диалога "Копирование диска".

rundll32 keyboard,disable - отключение клавиатуры, действует до следующей перезагрузки.

rundll32 mouse,disable - отключение мыши вплоть до перезагрузки.

rundll32 krnl386.exe,exitkernel - выгрузить ядро системы, выход из Windows.

rundll32 mshtml.dll,PrintHTML "HtmlFileNameAndPath" - распечатать документ HTML, где "HtmlFileNameAndPath" - путь к файлу и его имя.

rundll32 мсprint2.dll,RUNDLL_PrintTestPage - распечатать тестовую страницу на принтере.

rundll32 netplwiz.dll,AddNetPlaceRunDll - вызов мастера подключения нового сетевого ресурса "Добавление в сетевое окружение".

rundll32 rnaui.dll,RnaWizard - вызов мастера "Удаленный доступ к сети".

rundll32 rnaui.dll,RnaWizard /1 - вызов мастера "Удаленный доступ к сети" без отображения начального окна.

rundll32 shell,ShellExecute - открыть Проводник (папка "Рабочий стол").

rundll32 shell32,Control_RunDLL - открыть в Проводнике папку "Панель управления".

rundll32 shell32,Control_RunDLL appwiz.cpl,,n - вызов диалогового окна "Установка и удаление программ", в котором будет открыта вкладка с номером "n" (от 1 до 3).

rundll32 shell32,Control_RunDLL main.cpl @0 - открыть диалог "Свойства мыши".

rundll32 shell32,Control_RunDLL main.cpl @1 - открыть диалог "Свойства клавиатуры".

rundll32 shell32,Control_RunDLL main.cpl @2 - открыть папку "Принтеры".

rundll32 SHELL32,SHHelpShortcuts_RunDLL PrintersFolder - открыть папку "Принтеры" (другой способ).

rundll32 shell32,Control_RunDLL main.cpl @3 - открыть папку "Шрифты".

rundll32 SHELL32,SHHelpShortcuts_RunDLL FontsFolder - открыть папку "Шрифты" (другой способ).

rundll32 SHELL32,Control_RunDLL modem.cpl, add - открыть диалог "Свойства модема".

rundll32 shell32,Control_RunDLL timedate.cpl - открыть диалог "Дата и время".

rundll32 shell32,OpenAs_RunDLL - вызвать диалог "Открыть с помощью...".

rundll32 shell32,ShellAboutA WINHOWTO.RU - информация о версии Windows.

rundll32 shell32,SHExitWindowsEx 0 - закрыть все программы, перегрузить оболочку.

rundll32 shell32, SHExitWindowsEx 1 - выключить ПК.

rundll32 SHELL32, SHExitWindowsEx -1 - перегрузить оболочку Windows.

rundll32 shell32, SHExitWindowsEx 2 - перегрузить ПК.

rundll32 shell32,SHExitWindowsEx 4 - принудительно закрыть все программы.

rundll32 shell32,SHExitWindowsEx 8 - выход из Windows и выключение ATX-совместимого ПК.

rundll32 shell32,SHFormatDrive - вызов диалога форматирования диска А:.

rundll32 SHELL32,SHHelpShortcuts_RunDLL AddPrinter - запуск "Мастера установки принтера".

rundll32 shell32,SHHelpShortcuts_RunDLL Connect - запуск мастера подключения сетевого диска.

rundll32 SHELL32,SHHelpShortcuts_RunDLL PrintTestPage - распечатать тестовую страницу.

rundll32 sysdm.cpl,InstallDevice_Rundll - вызов мастера установки оборудования.

rundll32 url.dll,FileProtocolHandler %1 - открыть веб-страницу, где %1 - URL сайта (включая http://).

rundll32 url.dll,MailToProtocolHandler %1 - создать новое письмо, где %1 - e-mail адресата.

rundll32 user,CASCADECHILDWINDOWS - расположить все окна каскадом.

rundll32 user,TILECHILDWINDOWS - расположить все окна по экрану.

rundll32 user,disableoemlayer - сбой системы (!) - выключить все функции ввода-вывода

(клавиатура, дисплей, мышь). В результате будет черный экран с курсором и ни на что не реагирующая система, однако Windows продолжает работать.

rundll32 user,ExitWindowsExec - быстрая перезагрузка Windows.

rundll32 user,RepaintScreen - выполнить команду "Обновить".

rundll32 user,SetCaretBlinkTime n - задать частоту мигания курсора, соответствующую значению параметра n.

rundll32 user,SetCursorPos - переместить курсор мыши в верхний левый угол экрана.

rundll32 user,SetDoubleClickTime n - задать скорость двойного нажатия левой кнопки мыши (Double Click), соответствующую параметру n.

rundll32 user,SwapMouseButton - поменять местами клавиши мыши (обратная смена невозможна).

rundll32 user,WNetConnectDialog - вызов диалога "Подключение сетевого диска".

rundll32 user,WNetDisconnectDialog - вызов диалога "Отключение сетевого диска".

rundll32 AppWiz.Cpl,NewLinkHere %1 - запуск мастера создания нового ярлыка, где %1 - путь к исходному файлу.

четверг, 6 декабря 2012 г.

Смена типа лицензии (OEM, VLK) и ключа (Product Key) Windows XP

Надо в компании перейти на лицензионные ключи Windows XP
сейчас разнобой, но есть купленная лицензия VLK
Перед активацией может понадобиться сменить на установленной винде тип лицензии (не пере устанавливать же)
вот тут на помощь приходят способы смены типа лицензии:

Смена типа лицензии XP


FPP - Коробочная
OEM - Предустановленная на новые компьютеры
VLK - Корпоративная
и прочие обмылки сомнительной порядочности типа GGK.
Собственно, здесь будет рассказано как менять OEM и VLK лицензии между собой (в обе стороны и в разных сочетаниях).
Разберем все возможные варианты смены и как их, собственно, осуществить:
OEM -> OEM
ProductKey меняется простой утилитой типа Keyfinder или ProduKey (последняя позволяет проделывать изменения по сети). Скачать KeyFinder и ProduKey можно на этой странице, щелкнув по этим ссылкам.
VLK -> VLK
Меняется волшебным скриптом (за авторством microsoft, приводящимся на их сайте) - ChangeVLKey2600,
предназначенным специально для смены ключа в системе с корпоративной лицензией. В качестве параметра, скрипту передается ключ, который вы хотите установить. Для автоматизации процесса, прилагается ChangeVLKey2600auto, где в тело скрипта нужно прописать ваш корпоративный ключ. Тогда, для смены ключа, достаточно будет запустить скрипт на исполнение без каких-либо параметров.
OEM -> VLK
1) сначала надо сменить тип лицензии. меняется, как ни странно, известным "лекарством" activ_xp_rus_sp2.exe
1bis) тернистый путь для потенциально честных людей:
a) скопировать файлы с оригинального компакта с VLK(корпоративным) дистрибутивом в папку %windir%\system32
dpcdll.dll
oembios.bin
oembios.dat
oembios.sig
pidgen.dll
oembios.cat
б) так же, файл oembios.cat нужно скопировать в папку %windir%\system32\dllcache (чтобы система после загрузки не заменила наш скопированный файл, эталонным, хранящимся как раз в кэше DLL).
в) прописать в реестре ключи, содержащие информацию о нашем VLK дистрибутиве в нашу OEM систему.
ключи:

[HKEY_LOCAL_MACHINE\SYSTEM\Setup\Pid]
"Pid"="???
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion]
"ProductId"="???"
"DigitalProductId"=hex:??:??...
"LicenseInfo"=hex:??:??... 

Значения, помеченные как "???" нужно взять из "правильной" системы, установленной с вашего корпоративного дистрибутива.
2) потом задача сводится к смене ключа VLK->VLK, тоесть, тем же ChangeVLKey2600.
VLK ->OEM
Самый геморный вариант, надо осуществить действие, обратное известному кряку:
1) скопировать файлы с оригинального компакта с OEM-дистрибутивом в папку %windir%\system32
dpcdll.dll
oembios.bin
oembios.dat
oembios.sig
pidgen.dll
oembios.cat
2) так же, файл oembios.cat нужно скопировать в папку %windir%\system32\dllcache (чтобы система после загрузки не заменила наш скопированный файл, эталонным, хранящимся как раз в кэше DLL.)
3) прописать в реестре ключи, содержащие информацию об OEM дистрибутиве в нашу корпоративную систему.
ключи:

[HKEY_LOCAL_MACHINE\SYSTEM\Setup\Pid]
"Pid"="???"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion]
"ProductId"="???"
"DigitalProductId"=hex:??:??...
"LicenseInfo"=hex:??:??...
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WPAEvents]
"OOBETimer"=hex:d5,71,d6,8b,6a,8d,6f,d5,33,93,fd"LastWPAEventLogged"=hex:d7,07,08,00,01,00,0d,00,09,00,28,00,35,00,7c,01

Естественно, вместо "???" надо подставить ключи из вашей свежеустановленной OEM-системы,
а в последней ветке (OOBETimer и LastWPAEventLogged) нужно прописать любую фигню, отличную от той, которая там уже была (можно просто заменить первое значение на "00", можно просто удалить первый байт).
4) после чего запустить %windir%\system32\oobe\msoobe.exe /a - для принудительного запуска процедуры активации Windows (в принципе, можно просто перезагрузить систему, при перезагрузке она потребует правильный OEM-ключик).
Готовый к употреблению патч: Deactivsp2.rar
Правда, есть нюанс - там прошит PID одного крупного сборщика ПК, и в случае, если мы захотим прописать OEM-ключи другого вендора, нужно будет поправить reg-файл в архиве (файл, собственно, ни что иное как обычный SFX-архив WinRar, который можно редактировать как заблагорассудится).
Автоматизация сего интересного процесса
Всё эти манипуляции замечательно автоматизируются с помощью создания SFX-архива WinRAR, в котором есть возможность задать папку для распаковки архива (например, %windir%\system32) и создать bat-файл, выполняющийся сразу после распаковки (куда можно включить автоматическое изменение ключей реестра волшебной командой regedit.exe /s <имя_файла.reg>).
Заключение
Весь этот авангардизм работает ТОЛЬКО на Windows XP Service Pack 2, и только на нём. Кроме, утилиты keyfinder естественно. Так как Windows XP SP#1 (как и вообще без сервис паков) права на существование не имеет и должна умереть, возиться с ней никакого особого желания нет.