Récupérer la date d'installation de windows

Résolu
cameron_skynet
Messages postés
537
Date d'inscription
mardi 17 mars 2009
Statut
Membre
Dernière intervention
22 juillet 2020
- 11 sept. 2014 à 15:59
cameron_skynet
Messages postés
537
Date d'inscription
mardi 17 mars 2009
Statut
Membre
Dernière intervention
22 juillet 2020
- 12 sept. 2014 à 09:30
Bonjour,
Je voudrais récupérer la date d'installation de Windows.
Est ce qu'il y a un moyen simple pour l'afficher avec VB6 ?
D'avance merci,

3 réponses

jordane45
Messages postés
35510
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 mai 2022
356
11 sept. 2014 à 22:14
Bonjour,

La date de modification ou de création du répertoire Windows... ne donne pas la date d'installation de l'OS... (du moins... ça ne correspond pas du tout pour moi )

Par contre... avec WMI il est possible de l'avoir.

Voici un exemple en VBScript :

Set dtmInstallDate = CreateObject( "WbemScripting.SWbemDateTime")
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery  ("Select * from Win32_OperatingSystem")
 For Each objOperatingSystem in colOperatingSystems
  MsgBox "Date d'installation => " & formatDateTime (objOperatingSystem.InstallDate)
 Next

Function formatDateTime(wmitime)
  dtmInstallDate.Value = wmitime
  formatDateTime = dtmInstallDate.GetVarDate
End function




Sinon tu as toujours la piste de la ligne de commande dans l'inivte msdos

C:\>systeminfo |find "installation"
Date d'installation originale: 10/12/2013, 16:29:39


1
cameron_skynet
Messages postés
537
Date d'inscription
mardi 17 mars 2009
Statut
Membre
Dernière intervention
22 juillet 2020

Modifié par cameron_skynet le 12/09/2014 à 09:30
Merci
ça fonctionne
j'ai juste déplacé cette ligne :
Set dtmInstallDate = CreateObject("WbemScripting.SWbemDateTime")
dans la fonction sinon j'avais une erreur 424

Function formatDateTime(wmitime)
Set dtmInstallDate = CreateObject("WbemScripting.SWbemDateTime")
dtmInstallDate.Value = wmitime
formatDateTime = dtmInstallDate.GetVarDate
End Function
Il y avait peut être une manière plus correcte de le faire mais en tout cas, ça fonctionne.
Un grand merci à Jordane45 et ucfoutu.

Effectivement, la date de création du dossier windows ne correspond pas toujours.
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Modifié par ucfoutu le 11/09/2014 à 19:38
Bonjour,
D'installation, dis-tu ?
Il suffit de lire la date de création du dossier Windows.
La fonction filedatetime de VB6 retournant la date de dernière modification, elle est à éviter. Il te faut alors utiliser la fonction GetFileTime de la librairie kernel32 de l'Api de Windows
Elle est exposée ici :
http://allapi.mentalis.org/apilist/GetFileTime.shtml
tu y trouveras un exemple qui utilise une boîte de dialogue (dont tu n'as aucun besoin, toi). Analyse cet exemple et prends-y ce qui t'intéresse.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
11 sept. 2014 à 20:16
Ceci étant dit :
Je ne vois pas ce que tu comptes faire avec la récupération de cette date.
A tout hasard : si tu comptes t'en servir pour "protéger" une application (en en subordonnant le fonctionnement à cette date, relevée à l'installation de ton appli), tu ne te protègeras que des enfants de coeur. Tous les autres (ceux qui ont l'habitude de tricher) mettront moins de 3 minutes pour te contrecarrer.
0