Вопрос

У меня нет удобной машины XP. Если я использую CodePack Windows API CodePack, чтобы сделать что-то новое для Vista / Win7 (например, «TaskDialog») в C #, как он справляется с запуском на компьютерах Windows XP?

Если я использую Codeepack, я бы эффективно сделал мое приложение поддерживать только Vista и более поздние версии Windows?

Это было полезно?

Решение

Если вы посмотрите на «TaskDialog.cs», вы обнаружите, что конструктор TastDialog включает в себя следующие строки:

// Throw PlatformNotSupportedException if the user is not running Vista or beyond
CoreHelpers.ThrowIfNotVista();

Если вы включаете только ссылку на пакет кода API Windows, вы будете в порядке. Но используя функцию, которая отсутствует в ОС, в данный момент в данный момент ваша приложение будет выбрасывать исключение. Чтобы проверить, является ли функция безопасна для вызова (то есть поддерживаемая на текущей ОС), большинство классов включают статический IsPlatformSupported имущество.

Так что вы могли бы проверить TaskDialog.IsPlatformSupported Во-первых и звоните MessageBox.Show() вместо этого, если ваша ОС не поддерживает TaskDialogs.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top