Set the default pdf viewer app in Windows 10 Registry?
Solution 1
The default application is in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.pdf\UserChoice
. As you state, OpenWithList gives all the choices registered for this filetype. In the example below, it points to PDFXCview.exe, rather than Foxit.
Note that Applications\PDFXCview.exe
uses indirection, not the absolute path to the executable. Applications\PDFXCview.exe
, in turn, is defined in HKEY_CLASSES_ROOT\Applications\PDFXCview.exe
and referenced in \HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts
. A similar association should be set for each installed application, including Foxit.
You might look at Nirsoft's FileTypesMan to explore the file type associations, which can help point you to the correct Registry keys.
Solution 2
I know this an old question, but thought I would contribute an answer anyways. You can change the default program under the HKCR (HKEY_CLASSES_ROOT) registry hive.
Under HKCR, locate the registry key for the file extension you are intersted in (.pdf). Under that key should be a string value named "(Default)". Open that value to specify the program ID of the program you want to be the default app for that file type.
For example: to specify the default for .pdf as Foxit Phantom, you want to use Foxit's program ID which is "FoxitReader.Document". To change to Adobe Acrobat, it's "AcroExch.Document.DC".
Quick tip - each filety key will contain a subkey named "OpenWithProgids". The registry values listed under that subkey will represent all the prog IDs registered to open that extension. (i.e. under .pdf you should see FoxitReader.Document, AcroExch.Document.DC, and any other PDF reader/editor software you have installed.) This isn't necessarily a comprehensive list of all programs you could use - but it's a good start and should contain the programs that are safe to use.
Related videos on Youtube
beasone
Updated on September 18, 2022Comments
-
beasone over 1 year
------------------------------------Update------------------------------ I tried the solution in the first answer, however, since there are
Hash
under user choice, it won't allow me to edit the value to foxitreader.document
I installed a PDF viewer app called FoxitReader. I can define it as the default pdf viewer app in the settings , but I cannot set it by editing the Registry.
I tried with: HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/FileExt/.pdf
I also tried HKEY_CURRENT_USER\Software\Classes\MIME\Database\Content Type\application/pdf and set the CLSID to the CLSID of FoxitReader.Document,
Or Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes.pdf\PersistentHandler with the CLSID
or HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts.pdf
Those do add this app into the Open list, but none of them can set FoxitReader as the default PDF viewer.
When I double click the pdf file, it still ask me to choose an app to open it instead of opening it directly in FoxitReader.How could I set it as my default PDF viewer app in the Registry?
-
Outdated Computer Tech almost 5 yearsSo you're just creating a problem where there isn't one... Just because?
-
beasone almost 5 years@Sickest There must be some way of setting it in the registry because after I installed Adobe, Adobe automatically become the default pdf app. But I don't know how does adobe do it but it definitely edit the registry.
-
Outdated Computer Tech almost 5 years"Adobe automatically become the default pdf app." I don't believe that to be the case, All programs ASK YOU if they can be the default program. It's been that way for a long time. But let's assume what you say is true. Change the default program BACK to Foxitreader. With the Open As... Always use this program... Feature.
-
beasone almost 5 yearswhat I said is true. If I didn't set any default program and the adobe is installed, it is using adobe, so I have to uninstall adobe. then it never use any program to open it as default util I set it in the settings. but what I need is to set it in the registry.
-
sancho.s ReinstateMonicaCellio over 3 yearsI wonder how the accepted answer works. I think it doesn't, and it may be misleading to accept it. I posted an alternative answer.
-
-
beasone almost 5 yearsI just tried, but because it has the "Hash", if I was trying to edit the Progid to FoxitReader.Document, it won't allow me to do that.
-
beasone almost 5 yearsUnder "UserChoice", there are three keywords, Default, Hash and ProgId. The value of Hash is generated by Username and the ProgId. So if I edit the Progid, it will tells me that I cannot edit it since windows will check whether the value matches the value in the "Hash". I checked online, seems like for security reason, after window anniversary update, windows doesn't allow the thirty part program to change it. winhelponline.com/blog/windows-10-resetting-file-associations
-
beasone almost 5 yearsSee the second answer in social.technet.microsoft.com/Forums/en-US/…