2009-05-14 7 views
5

Utilisation du registre ou du système de fichiers. La raison de la restriction est que je fais cela comme une déclaration conditionnelle MSI.Comment déterminer si un ordinateur exécute XP Service Pack 3

À la votre!

+0

En voyant la façon dont vous pouvez faire un clic droit et allez dans les propriétés sur mon ordinateur, cela devrait être très simple pour quelqu'un pour répondre avec de l'expérience sur l'endroit où cette information est stockée. Malheureusement, ce n'est pas moi :) – TheTXI

+0

Le titre de cette question a eu mes espoirs, puis j'ai lu la partie sur le registre ou le système de fichiers. – Scott

Répondre

5

sous la clé de Registre

HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion

look pour une paire de clés:

CurrentVersion = Microsoft Windows NT 5.1.2600 Service Pack 3

+1

La clé CSDVersion a une valeur "Service Pack n": ( –

4

Vous devriez trouver suffisamment d'informations pour déterminer le service pack OS (dans le pire des cas, vous pouvez toujours utiliser la chaîne de construction) dans la clé de Registre suivante:


HKLM\Software\Microsoft\Windows NT\CurrentVersion 
+0

) Ce qui est assez bon pour ce dont j'ai besoin –

+0

Dans le Service Pack 3, vous devriez trouver une clé nommée CSDVersion avec la valeur "Service Pack 3" – em70

1

La fonction VerifyVersionInfo devrait vous permettre de vérifier la la version de Windows en cours d'exécution répond aux exigences de votre application, sans les pièges qui peuvent survenir lors de la recherche d'une version exacte avec GetVersionEx (par exemple, rupture des modifications majeures de version - votre application fonctionnera très probablement sur Vista, Windows 7 et les versions futures encore développé).

2

Si vous utilisez un MSI, vous devriez pouvoir utiliser le VersionNT et ServicePackLevel propriétés dans l'instruction conditionnelle.

par ex. Les contrôles de code suivants pour Windows XP Service Pack 3 ou plus:

VersionNT=501 And ServicePackLevel>2 

Vous pouvez également consulter le WindowsBuild propriété si vous avez aussi besoin du numéro de build.

-1

« Exécuter » (touche Windows + r ou démarrer/run) msinfo32 ou sysdm.cpl

+0

c'est pour xp, je ne sais pas sur 7/vista etc. – Jimbo66

Questions connexes