Соглашаясь с комментариями других, вы можете сделать это только в настольном приложении, если у вас есть необходимые разрешения.
Вот пример кода для поиска браузера системы по умолчанию (из этого поста ):
private string getDefaultBrowser()
{
string browser = string.Empty;
RegistryKey key = null;
try
{
key = Registry.ClassesRoot.OpenSubKey(@"HTTP\shell\open\command", false);
//trim off quotes
browser = key.GetValue(null).ToString().ToLower().Replace("\"", "");
if (!browser.EndsWith("exe"))
{
//get rid of everything after the ".exe"
browser = browser.Substring(0, browser.LastIndexOf(".exe")+4);
}
}
finally
{
if (key != null) key.Close();
}
return browser;
}
Однако, здесь все становится сложнее. Различные браузеры имеют разные способы сохранения местоположения по умолчанию.
Например,
- IE может сохранить его в реестре (обычно под
HKEY_CURRENT_USER\ Software\ Microsoft\ Internet Explorer
)
- FF сохраняет его в prefs.js в папке
Profile
(закажите эту запись , чтобы получить к ней код)
- Не уверен насчет Chrome и Safari
но вы поняли.
Не уверен, какова ваша конечная цель, но, с точки зрения UX, я думаю, что лучше всего было бы попросить пользователя указать каталог для загрузки (другими словами , вы выставляете настройку в вашем приложении для местоположения загрузки по умолчанию).