Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Sous SP2, un script ne fonctionne plus...

3 réponses
Avatar
Laurent Jumet
Hello !

Le script deluninstall.vbs ne fonctionne plus chez moi sous SP2.


=== Begin deluninstall.vbs ===
' ----------------------------------------------------------
' Script de suppression des dossiers de dÚsinstallation de
' hotfixes sous Windows 2000, XP, 2003 ...
'
' Syntaxe: delUninstall
'
'
' JC BELLAMY ® 2003
' ----------------------------------------------------------
On error resume next
Const SW_HIDE=0
Const SW_SHOWNORMAL=1
ColorBack="""#FFFFD8"""
BGProgressON="blue"
BGProgressOFF=ColorBack

Dim shell,fso,oIE,NbHF,HFFolders(),HFKeys(),HFarticle()
Set shell = WScript.CreateObject("WScript.Shell")
Set fso = WScript.CreateObject("Scripting.FileSystemObject")

ficInit = GetPath() & "delunistall.html"
Titre="Suppression des dossiers de dÚsinstallation de hotfixes"
Set ts = fso.CreateTextFile(ficInit, True)
ts.writeline header
ts.writeline ScriptBtn


Windir=shell.ExpandEnvironmentStrings("%systemroot%")
Key="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
\"
LastKey="HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applet
s\Regedit\LastKey"
ts.writeline "Dossier systÞme : <b>" & Windir & "</b>"
ts.writeline "<hr><form name=""strategyForm"">"
ts.writeline "<table border=""1"">"
ts.writeline "<tr><td valign=""top"" bgcolor=""#C0C0C0"">Suppr.</td><td
bgcolor=""#C0C0C0"">Lien MSDN</td><td bgcolor=""#C0C0C0"">Dossier</td><td
bgcolor=""#C0C0C0"">Clef BDR</td></tr>"
ts.writeline "<tr><td valign=""top"" bgcolor=""#C0C0C0""><input
type=""checkbox"" name=""allselect"" onClick='SetSelect()'></td>"
ts.writeline "</td><td bgcolor=""#C0C0C0"">Tout (dÚ)selectionner"
ts.writeline "</td><td bgcolor=""#C0C0C0"">&nbsp;"
ts.writeline "</td><td bgcolor=""#C0C0C0"">&nbsp;</td></tr>"

set fWindir=fso.GetFolder(Windir)
set collf=fWindir.SubFolders
lPref=len("$Ntuninstall")
Index=0
For each subf in collf
fName=subf.Name
lName=len(fName)
If InStr(1,fName,"$Ntuninstall",vbTextCompare)=1 Then
Index=Index+1
redim preserve HFFolders(Index),HFKeys(Index),HFarticle(Index)
Suffixe=mid(fName,lPref+1,lName-lpref-1)
NumArticle=""
For i = 1 To len(Suffixe)
c=Mid(Suffixe,i,1)
If Asc(c)>=48 AND Asc(c)<=57 Then NumArticle=NumArticle & c
Next
HFFolders(Index-1)=fName
HFKeys(Index-1)=Suffixe
HFarticle(Index-1)=NumArticle
ts.writeline "<tr><td valign=""top"" id=""HF" & Index & """>"
ts.writeline "<input type=""checkbox"" name=""CB" & Index & """>"
ts.writeline "</td><td>"
ts.writeline "<a href=""http://support.microsoft.com/?id=" &
NumArticle & """ target=""_blank"">MSDN " & Numarticle & "</a>"
ts.writeline "</td><td>"
ts.writeline "<a href=""#" & fName & """ onClick='Explore(""1"&
fName & """)'>" & fName & "</a>"
ts.writeline "</td><td>"
ts.writeline "<a href=""#" & Suffixe & """ onClick='Explore(""2"&
Suffixe & """)'>" & Suffixe & "</a>"
ts.writeline "</td></tr>"
end if
Next
NbHF=Index
ts.writeline "</table>"
ts.writeline "<input type=""button"" value=""Supprimer"" name=""B1"">"
ts.writeline "<input type=""button"" value=""Quitter"" name=""B0"">"
ts.writeline "</form>"
ts.writeline ProgressBar
ts.writeline "<font size=""1"">JCB ® 2003</font>"
ts.writeline "</body></html>"
ts.close
codeRet=RunIE(640,480)
If coderet<=0 Then
If coderet=0 Then oIE.Quit
wscript.quit
end if
NbDel=0
For i = 1 To NbHF
Action=eval("oIE.document.strategyForm.CB" & i & ".checked")
Taux=i*100/NbHF
If Action Then
NbDel=NbDel+1
fso.DeleteFolder Windir & "\" & HFFolders(i-1),true
shell.RegDelete Key & HFKeys(i-1) & "\"
msgerr=""
If err.number<>0 Then
msgerr=" Erreur suppression"
err.clear
End If
SetProgress "Suppr." & HFarticle(i-1) & msgerr,taux
else
SetProgress "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;",Taux
End If
Next
oIE.Quit
If NbDel>1 Then pluriel="s" else pluriel=""
wscript.echo NbDel & " dÚsinstallation" & pluriel & " de hotfixes
supprimÚe" & pluriel
Wscript.quit

'--------------------------------------------------------------------
Function RunIE(W,H)
RunIE=1
' Ouverture d'Internet Explorer
Set oIE = WScript.CreateObject("InternetExplorer.Application")
Do While (oIE.Busy)
WScript.Sleep 100
Loop
oIE.navigate ficInit
oIE.Height = H
oIE.Width = W
oIE.MenuBar = 0
oIE.ToolBar = 0
oIE.StatusBar = 1
oIE.Top=(oIE.Document.ParentWindow.Screen.Height-oIE.Height)/2
oIE.Left=(oIE.Document.ParentWindow.Screen.Width-oIE.Width)/2
oIE.Visible = 2

shell.AppActivate Titre

' Attente d'action sur le bouton ou fermeture de la fenÛtre
Do
WScript.Sleep 100
Selection=oIE.Document.Script.CheckSelect()
If Selection<>0 Then
oIE.Document.Script.ResetSelect
If oIE.document.strategyForm.allselect.checked Then StrFlag="true"
else StrFlag="false"
For i = 1 To NbHF
execute("oIE.document.strategyForm.CB" & i & ".checked=""" &
StrFlag & """")
Next
End If
FlagParam=oIE.Document.Script.CheckParam()
If FlagParam<>0 Then
param=oIE.Document.Script.GetParam()
oIE.Document.Script.ResetParam
typeobj=left(param,1)
path=mid(param,2)
Select Case typeobj
Case "1"
Shell.run "explorer /n,/root," & Windir & "\" & path &
"\",1
Case "2"
Shell.RegWrite LastKey, Key & path
oIE.Visible = 0
shell.Run "REGEDIT",1,true
oIE.Visible = 1
End Select
End If
Check=oIE.Document.Script.CheckVal()
Loop While (Check = 0)
' Si on ferme directement IE sans passer par un bouton,
' cela provoque une erreur qui est dÚtectÚe et alors
' on quitte le script
If Err <> 0 Then
RunIE=-1
Err.Clear
else
If Check=-1 Then RunIE=0
end if
End Function
'--------------------------------------------------------------------
' Fonction de rÚcupÚration du rÚpertoire courant
Function GetPath()
Dim path
path = WScript.ScriptFullName
GetPath = Left(path, InStrRev(path, "\"))
End Function
'--------------------------------------------------------------------
Function Header
s="<html><head><title>" & Titre & "</title>" & VBCRLF
s=s & "<STYLE TYPE=""text/css"">" & VBCRLF
s=s & "body {" & VBCRLF
s=s & " font-family: Verdana;" & VBCRLF
s=s & " font-size: 8 pt }" & VBCRLF
s=s & " h1, h2, h3, h4, h5 { font-family: Verdana }" & VBCRLF
s=s & "table {" & VBCRLF
s=s & " table-border-color-light: " & ColorBorderL &";" & VBCRLF
s=s & " table-border-color-dark: " & ColorBorderD &";" & VBCRLF
s=s & " font-size: 8 pt;" & VBCRLF
s=s & " font-family: Verdana }" & VBCRLF
s=s & ".progressOFF {background-color :" & BGProgressOFF & ";}" & VBCRLF
s=s & ".progressON {background-color :" & BGProgressON &";}" & VBCRLF
s=s & "</STYLE></head><body bgcolor=" & ColorBack &">"
header=s
End Function
'--------------------------------------------------------------------
Function ScriptBtn
s="<script language=""VBScript""> " & VBCRLF
s=s & "<!--" & VBCRLF
s=s & "Dim ready,FlagParam,Param,Selection" & VBCRLF
s=s & "Sub B0_OnClick" & VBCRLF
s=s & "ready=-1" & VBCRLF
s=s & "End Sub" & VBCRLF
s=s & "Sub B1_OnClick" & VBCRLF
s=s & "ready=1" & VBCRLF
s=s & "End Sub" & VBCRLF
s=s & "function Explore(filename)" & VBCRLF
s=s & "FlagParam=1" & VBCRLF
s=s & "Param=filename" & VBCRLF
s=s & "End function" & VBCRLF
s=s & "Sub Window_OnLoad()" & VBCRLF
s=s & "ready=0" & VBCRLF
s=s & "FlagParam=0" & VBCRLF
s=s & "Param=""""" & VBCRLF
s=s & "Selection=0" & VBCRLF
s=s & "End Sub" & VBCRLF

s=s & "Public Function CheckVal()" & VBCRLF
s=s & "CheckVal=ready" & VBCRLF
s=s & "End function" & VBCRLF

s=s & "Public Function CheckParam()" & VBCRLF
s=s & "CheckParam=FlagParam" & VBCRLF
s=s & "End function" & VBCRLF

s=s & "Public Sub ResetParam()" & VBCRLF
s=s & "FlagParam=0" & VBCRLF
s=s & "End sub" & VBCRLF

s=s & "Public Function GetParam()" & VBCRLF
s=s & "GetParam=Param" & VBCRLF
s=s & "End function" & VBCRLF

s=s & "Public Function CheckSelect()" & VBCRLF
s=s & "CheckSelect=Selection" & VBCRLF
s=s & "End function" & VBCRLF

s=s & "Public Sub ResetSelect()" & VBCRLF
s=s & "Selection=0" & VBCRLF
s=s & "End sub" & VBCRLF

s=s & "Public Sub SetSelect()" & VBCRLF
s=s & "Selection=1" & VBCRLF
s=s & "End sub" & VBCRLF

s=s & "'-->" & VBCRLF
s=s & "</script>"
ScriptBtn=s
End Function
'--------------------------------------------------------------------
Function ProgressBar
s=s & "<table id=""tabprog"" border=""0"" cellpadding=""0""
cellspacing=""0"" style=""border-collapse: collapse""
bordercolor=""#111111"">" & VBCRLF
s=s & "<tr><td>" & VBCRLF
s=s & "<table border=""0"" cellpadding=""2"" cellspacing=""2""
style=""border-collapse: collapse"" bordercolor=""#111111"">" & VBCRLF
s=s & "<tr>" & VBCRLF
For indl = 1 To 20
s=s & "<td id=""c" & indl &"""
class=""ProgressOFF"">&nbsp;&nbsp;&nbsp;&nbsp;</td>" & VBCRLF
Next
s=s & "</tr></table></td></tr></table>" & VBCRLF
s=s & "<table><tr><td
id=""lib"">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td></tr></table>" & VBCRLF
ProgressBar=s
End Function
'--------------------------------------------------------------------
Sub SetProgress(lib,taux)
set objLib=oIE.Document.All("lib")
set objTab=oIE.Document.All("tabprog")
objTab.border="1"
k=int(taux/5)
objLib.innerhtml=lib
for numc= 1 to 20
set objCell=oIE.Document.All("c" & numc)
if numc<=k then className="progressON" else className="progressOFF"
objCell.className=className
next
End Sub
'--------------------------------------------------------------------
=== End deluninstall.vbs ===

--
Laurent Jumet - Point de Chat, Liège, BELGIUM
KeyID: 0xCFAF704C
[Restore address to laurent.jumet for e-mail reply.]

3 réponses

Avatar
Artic-C
Bonjour * Laurent Jumet* qui nous dit :

Hello !

Le script deluninstall.vbs ne fonctionne plus chez moi sous SP2.

Idem ici


Avatar
Alain.bab
Bonjour
J'ai cru comprendre que le vbs de JCB ne désinstalle pas les packs globaux
mais uniquement les uninstall des hotfixes individuels.
Il faut le faire à la main, " à la hussarde" dit





" ¥©¥ [MVP]" ¥©¥@artic.qc.ca> a écrit dans le message de
news:
Bonjour * Laurent Jumet* qui nous dit :

Hello !

Le script deluninstall.vbs ne fonctionne plus chez moi sous SP2.

Idem ici





Avatar
Artic-C
Bonjour * Alain.bab* qui nous dit :

Bonjour
J'ai cru comprendre que le vbs de JCB ne désinstalle pas les packs
globaux mais uniquement les uninstall des hotfixes individuels.
Il faut le faire à la main, " à la hussarde" dit

Il supprime les dossiers #Uninstall dans x:Windows après avoir les

sélectionner dans la fenêtre qui s'ouvre à l'exécution du script, mais
depuis le SP2, on n'a plus cette fenêtre, elle se ferme aussitôt ouverte