Я запускаю процесс с приложением по умолчанию для типа файла, но если пользователь удалил свое приложение по умолчанию, выдается исключение Win32Exception.Кроме того, в других случаях возникает исключение Win32Exception, например, если у пользователя нет прав на открытие приложения по умолчанию.
Теперь я ищу лучший способ разделения между исключениями.
Как я могу проверить, какое именно исключение выдается?Это единственный способ проверить это с помощью сообщения об исключении?
Я уловил это так:
try
{
process.Start();
}
catch (Win32Exception exc)
{
//How to check which exception exactly is thrown?
return return string.Format("Process cannot be started", exc.Message)
}
Это была первая идея, но я думаю, что есть лучший способ выполнитьэто задание:
catch (Win32Exception exc)
{
if(exc.Message == "Application not found")
{
//Do something
}
else if(exc.Message == "Another exception")
{
//Do something else
}
}