1

Как сделать Adobe Reader владельцем по умолчанию файлов PDF в Windows 10 с помощью автоматической процедуры?

Его нельзя просто изменить с помощью изменения реестра из-за значения Hash в HCU.

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts.pdf\UserChoice] "Hash" = "k56kO7cBd6o =" "ProgId" = "AcroRd32.pdf"

1 ответ1

1

Создать файл pdf_default.bat. Это делает некоторые изменения в реестре, чтобы AcroRd32.exe находился между программами по умолчанию и вызывал файл .vbs.

=== pdf_default.bat ===

@echo off
cls
echo   --==**##  Adobe Reader between default programs  ##**==--
reg add "HKEY_CURRENT_USER\SOFTWARE\Adobe\CommonFiles\Usage\Reader 10" /v OptIn /t REG_DWORD /d 0 /f
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Applications\AcroRd32.exe\shell\open\command /ve /d "\"C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe\" \"%%1\"" /f >nul
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AcroRd32.pdf\shell\open\command /ve /d "\"C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe\" \"%%1\"" /f >nul
reg add HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications /v "AcroRd32" /d "Software\AcroRd32\Capabilities" /f >nul
reg add HKEY_LOCAL_MACHINE\SOFTWARE\AcroRd32\Capabilities /v "ApplicationDescription" /d "AcroRd32 is default program for PDF files." /f >nul
reg add HKEY_LOCAL_MACHINE\SOFTWARE\AcroRd32\Capabilities /v "ApplicationName" /d "AcroRd32" /f >nul
reg add HKEY_LOCAL_MACHINE\SOFTWARE\AcroRd32\Capabilities\FileAssociations /v ".pdf" /d "AcroRd32.pdf" /f >nul
cscript //NoLogo conf\IEdefault_PDFdefault.vbs
timeout /t 1 /nobreak > NUL

Теперь вы можете сделать PDF для открытия с AcroRd32.exe через графический интерфейс. Таким образом, мы можем избежать взлома проблемы хеширования WIN10 в реестре.

=== PDFdefault.vbs ===

Set WshShell = WScript.CreateObject("WScript.Shell")

' Open window to set Adobe Reader default program for PDF.
WshShell.Run "%windir%\system32\control.exe /name Microsoft.DefaultPrograms /page pageDefaultProgram\pageAdvancedSettings?pszAppName=AcroRd32"
WScript.Sleep 500
WshShell.SendKeys "{TAB}"
WshShell.SendKeys " "
WshShell.SendKeys "{TAB}"
WshShell.SendKeys "{TAB}"
WScript.Sleep 500
WshShell.SendKeys " "

Msgbox "Default program for PDF is AdobeReader."

WScript.Quit    

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .