Связано ли приложение с данным расширением?

Иногда желательно, чтобы ваше приложение открывало приложение по умолчанию для файла. Например, чтобы открыть файл PDF, вы можете использовать:

System.Diagnostics.Process.Start("Filename.pdf");


Чтобы открыть изображение, вы просто должны использовать тот же код с другим именем файла:

System.Diagnostics.Process.Start("Filename.gif");


Некоторые расширения (например, .gif) всегда имеют обработчик по умолчанию, даже в базовой установке Windows. Тем не менее, некоторые расширения (например, .pdf) часто не имеют установленного приложения для их обработки.

В этих случаях было бы желательно определить, связано ли приложение с расширением файла, который вы хотите открыть, прежде чем выполнять вызов Process.Start (fileName).

Мне интересно, как вы могли бы лучше всего реализовать что-то вроде этого:

static bool ApplicationAssociated(string extension)
{
    var extensionHasAssociatedApplication = false;

    var condition = // Determine if there is an application installed that is associated with the provided file extension.;
    if (condition)
    {
        extensionHasAssociatedApplication = true;
    }

    return extensionHasAssociatedApplication;
}

Ответы на вопрос(6)

Ваш ответ на вопрос