Pergunta

Eu não tenho uma máquina XP à mão. Se eu usar o CodePack da API do Windows para fazer algo novo no Vista/Win7 (por exemplo, "TaskDialog") em C#, como ele lida com a execução em máquinas Windows XP?

Se eu usar o codepack, fiz efetivamente fazer meu aplicativo suportar apenas o Vista e as versões posteriores do Windows?

Foi útil?

Solução

Se você olhar para "TaskDialog.cs", descobrirá que o construtor do TastDialog inclui as seguintes linhas:

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

Se você incluir apenas uma referência ao conjunto do Windows API Code Pack, você ficará bem. Mas o uso de um recurso que não está presente no sistema operacional atualmente executando seu aplicativo lançará uma exceção. Para verificar se um recurso é seguro para ligar (ou seja, suportado no sistema operacional atual), a maioria das classes inclui uma estática IsPlatformSupported propriedade.

Então você pode verificar TaskDialog.IsPlatformSupported primeiro e ligue MessageBox.Show() Em vez disso, se o seu sistema operacional não suportar TaskDialogs.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top