i want my program to ask user “Do u want to set .mp3 file type always default open by this program?” (for first time only) any example to do this?
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
First, you will need to familiarize yourself with the Windows Registry.
Associations between programs and extensions are handled inside the HKEY_CLASSES_ROOT key.
Each extension appears as a sub-key.
As each key’s default value you will find the associated key that handles most of the operations, currently supported, for that particular file type.
For example, you might find the .mp3’s default value is set to “WMP11.AssocFile.MP3” or perhaps it set to “VLC.mp3”, if you have installed VLC and configured it as the default MP3 player.
So, now you need to locate that key, again, inside HKEY_CLASSES_ROOT.
Although this may vary, you should find that “VLC.mp3” (or whatever key was associated with the .mp3 extension) has a sub-key called “shell”.
Under “shell” you will find another sub-key called “Open”.
And, finally, under “Open” you will another sub-key called “Command”.
The “Command” key is the one containing the information used by Windows (and other programs) to open/start whatever application is currently associated with the “.mp3” (or any other) extension.
Once you understand and feel comfortable with the way associations are handled in the Registry, you should then use .NET’s
Microsoft.Win32‘s Registry class to navigate and query the required keys and their values.Here’s a very basic illustration of how the code would look like:
Hope this helps…