Hi @StewartBW ,
To register a file type for your .NET application and ensure it appears in the "Open with" dialog in Windows 10/11, you need to understand a few key concepts:
- ProgID: This is a string that uniquely identifies a programmatic identifier. For .NET applications, the ProgID is typically in the format of
Company.Application
. - CLSID: This is a globally unique identifier for a COM class object. For pure .NET applications, you typically don't have a CLSID unless you're exposing your .NET class as a COM object.
- OpenWithList vs OpenWithProgids: The
OpenWithList
registry key is used to add an application to the "Open with" list directly, while theOpenWithProgids
key associates a ProgID with a file type.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.yourfileext]
@="YourApp.ProgID"
[HKEY_CLASSES_ROOT\YourApp.ProgID]
@="Your Application Description"
"FriendlyTypeName"="Your Application Description"
[HKEY_CLASSES_ROOT\YourApp.ProgID\DefaultIcon]
@="\"C:\\Path\\To\\YourApp.exe\",0"
[HKEY_CLASSES_ROOT\YourApp.ProgID\shell\open\command]
@="\"C:\\Path\\To\\YourApp.exe\" \"%1\""
[HKEY_CLASSES_ROOT\.yourfileext\OpenWithList\YourApp.exe]
Best Regards.
Jiachen Li
If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment". Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.