For users to be able to set my program as the default program, it needs to be registered as a "default program" and it will appear in the list provided by Run > Default programs.
I have researched this by web search and examining the registry keys for existing apps that are listed, but so far have been unable to register my app so that it does appear in the list. For example, the code I am currently using looks like:
I am using Windows 7 and it doesn't work. Any idea why not?
I have researched this by web search and examining the registry keys for existing apps that are listed, but so far have been unable to register my app so that it does appear in the list. For example, the code I am currently using looks like:
Code:
Registry.SetValue(HKEY_CLASSES_ROOT, ".artis", "", "ArtisBrowser", REG_SZ);
Registry.CreateKey(HKEY_CLASSES_ROOT, "ArtisBrowser", "NoName", "ArtistScope Web Browser", REG_SZ);
Registry.CreateKey(HKEY_CLASSES_ROOT, "ArtisBrowser\\DefaultIcon", "", "", REG_SZ);
Registry.CreateKey(HKEY_CLASSES_ROOT, "ArtisBrowser\\CurVer", "NoName", "2.0.1.17", REG_SZ);
Registry.CreateKey(HKEY_CLASSES_ROOT, "ArtisBrowser\\shell\\open\\command", "", SessionVar.Expand("%AppFolder%\\ASPSbrowser.exe \"%1\""), REG_SZ);
Registry.SetValue(HKEY_CLASSES_ROOT, "ArtisBrowser", "InstallDir", SessionVar.Expand("%AppFolder%"), REG_SZ);
-- for XP users
Registry.CreateKey(HKEY_CURRENT_USER, "SOFTWARE\\ArtistScope\\ArtisBrowser", "NoName", "", REG_SZ);
Registry.SetValue(HKEY_CURRENT_USER, "SOFTWARE\\ArtistScope\\ArtisBrowser", "Initialised", "0", REG_DWORD);
-- for default programs
Registry.CreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser", "NoName", "", REG_SZ);
Registry.CreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities", "NoName", "", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities", "ApplicationDescription", "Secure browser for copy protected websites.", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities", "ApplicationIcon", SessionVar.Expand("%AppFolder%\\ASPSbrowser.exe,0"), REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities", "ApplicationName", "ArtistScope Web Browser", REG_SZ);
Registry.CreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\UrlAssociations", "NoName", "", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\UrlAssociations", "http", "ArtisBrowser.Url.Http", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\UrlAssociations", "https", "ArtisBrowser.Url.Https", REG_SZ);
Registry.CreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\FileAssociations", "NoName", "", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\FileAssociations", ".asp", "ArtisBrowser", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\FileAssociations", ".aspx", "ArtisBrowser", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\FileAssociations", ".htm", "ArtisBrowser", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\FileAssociations", ".html", "ArtisBrowser", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\FileAssociations", ".shtml", "ArtisBrowser", REG_SZ);
Registry.CreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\Startmenu", "NoName", "", REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities\\Startmenu", "StartmenuInternet", SessionVar.Expand("%AppFolder%\\ASPSbrowser.exe"), REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\RegisteredApplications", "ArtisBrowser", "SOFTWARE\\ArtistScope\\ArtisBrowser\\Capabilities", REG_SZ);