Verificateur d'installation

Contenu du snippet

permet de verifier les fichier installer par un setup quelconque dans les repertoires systeme ,temporaire et dans le repertoire du setup
-Il lance le setup
-mettre le setup dans le meme repertoire que le script et indiquez le chemin complet du setup a l'invite du script

Source / Exemple :


Dim GetTheParent,inx,inx2,fs,fso,fs2,fich1,files,Folder,Fold,fil,fil2,fich,sourep,files2,Folder2

fich1="install"
Set fs = CreateObject("Scripting.FileSystemObject")
set fich= fs.OpenTextFile(fich1&".txt",2,true)
application = InputBox("Entrez le chemin complet du programme a installer","by racattac13")

'------------------------------------------------------------------
'-------------------verification repertoire systeme--------------
'------------------------------------------------------------------
Set Fold = fs.GetSpecialFolder(1)
Set filles = Fold.Files
fich.WriteLine("------------Fichier dans repertoire systeme :")
for each fil in filles
 fich.WriteLine(fil.Name)
next
inxsys=filles.Count
fich.WriteBlankLines(2)

'------------------------------------------------------------------
'-------------------verification repertoire temporaire--------------
'------------------------------------------------------------------
Set Fold = fs.GetSpecialFolder(2)
Set filles = Fold.Files
fich.WriteLine("------------Fichier dans repertoire temporaire :")
for each fil in filles
 fich.WriteLine(fil.Name)
next
inxtmp=filles.Count
fich.WriteBlankLines(2)

'------------------------------------------------------------------
'-------------------verification des repertoire dans programme files--------------
'------------------------------------------------------------------
Set Fold = fs.GetFolder("C:\Program Files")
Set sourep =Fold.SubFolders
fich.WriteLine("-------------Repertoire dans programme files :")
for each sousrep in sourep
 fich.WriteLine(sousrep.Name)
next
inxrep=sourep.Count
fich.WriteBlankLines(2)

'------------------------------------------------------------------
'-------------------verification du repertoire contenant le setup-----
'------------------------------------------------------------------
GetTheParent = fs.GetParentFolderName(application)
Set Fold = fs.GetFolder(GetTheParent)
Set files = Fold.Files
fich.WriteLine("------------Fichier dans repertoire du setup:")
for each fil in files
 fich.WriteLine(fil.Name)
next
inxcur=files.Count
fich.WriteBlankLines(2)
'------------------------------------------------------------------

fich.Close()

'------------------------------------------------------------------
'----------------------------Lancement du setup-----------------------
'------------------------------------------------------------------
GetAName = fs.GetFileName(application)
Set ws= CreateObject("WScript.Shell")
ws.Run GetAName,1,1

set fich= fs.OpenTextFile(fich1&"2.txt",2,true)

'---------------------------------------------------------------------
'-------------------verification repertoire systeme 2--------------
'------------------------------------------------------------------
Set Fold = fs.GetSpecialFolder(1)
Set filles = Fold.Files
fich.WriteLine("------------Fichier dans repertoire systeme :")
for each fil in filles
 fich.WriteLine(fil.Name)
next
inxsys2=filles.Count
fich.WriteBlankLines(2)

'------------------------------------------------------------------
'-------------------verification repertoire temporaire 2--------------
'------------------------------------------------------------------
Set Fold = fs.GetSpecialFolder(2)
Set filles = Fold.Files
fich.WriteLine("------------Fichier dans repertoire temporaire :")
for each fil in filles
 fich.WriteLine(fil.Name)
next
inxtmp2=filles.Count
fich.WriteBlankLines(2)

'------------------------------------------------------------------
'-------------------verification des repertoire dans programme files 2--------------
'------------------------------------------------------------------
Set Fold = fs.GetFolder("C:\Program Files")
Set sourep =Fold.SubFolders
fich.WriteLine("-------------Repertoire dans programme files :")
for each sousrep in sourep
 fich.WriteLine(sousrep.Name)
next
inxrep2=sourep.Count
fich.WriteBlankLines(2)

'------------------------------------------------------------------
'-------------------verification du repertoire contenant le setup 2-----
'------------------------------------------------------------------
GetTheParent = fs.GetParentFolderName(application)
Set Fold = fs.GetFolder(GetTheParent)
Set files = Fold.Files
fich.WriteLine("------------Fichier dans repertoire du setup:")
for each fil in files
 fich.WriteLine(fil.Name)
next
inxcur2=files.Count
fich.WriteBlankLines(2)

fich.Close()    'fermeture du fichier

'------------------------------------------------------------------
'--------------------Comparaison des fichier-------------------
'------------------------------------------------------------------
set fich= fs.OpenTextFile(fich1&".txt",1,true)
set fich2= fs.OpenTextFile(fich1&"2.txt",1,true)
set fich3= fs.OpenTextFile(fich1&"verif.txt",2,true)
set taille1 =fs.GetFile(fich1&".txt") 
set taille2 =fs.GetFile(fich1&"2.txt")
tail1=taille1.Size
tail2=taille2.Size

Do While fich.AtEndOfStream <> True 
temp=fich.ReadLine
temp2=fich2.ReadLine

If temp="------------Fichier dans repertoire systeme :" Or temp="------------Fichier dans repertoire temporaire :"Or temp="-------------Repertoire dans programme files :" Or temp="------------Fichier dans repertoire du setup:" Then
   fich3.WriteLine(temp)
End If

If temp<>temp2 Then
 If tail1<tail2 Then
  Do While temp<>temp2
   fich3.WriteLine(temp2)
   temp2=fich2.ReadLine
  Loop 
 Else
  Do While temp<>temp2
   fich3.WriteLine(temp)
   temp=fich.ReadLine
  Loop
 End If
End If
Loop

'------------------------------------------------------------------
'---------------------------Affiche le resultat--------------------
'------------------------------------------------------------------
Set ws= CreateObject("WScript.Shell")
ws.Run fich1&"verif.txt"  
'------------------------------------------------------------------

Conclusion :


A ameliorer dans les versions suivantes

A voir également