home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 2003 March
/
PCWorld_2003-03_cd.bin
/
Software
/
Vyzkuste
/
prakticketipyprowindows
/
soft3_2003.exe
/
Logone.vbs
< prev
next >
Wrap
Text File
|
2003-01-19
|
5KB
|
145 lines
Set oWSHShell = CreateObject("Wscript.Shell")
Set oFs = CreateObject("Scripting.FileSystemObject")
strTempPfad = oWSHShell.ExpandEnvironmentStrings("%TEMP%")
strTempExportDateiPfad = strTempPfad & "\export.reg"
strTempImportDateiPfad = strTempPfad & "\import.reg"
oWSHShell.Run "%COMSPEC% /C regedit /e " & Chr(34) & strTempExportDateiPfad & Chr(34) & " " & Chr(34) & "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\Explorer\" & Chr(34),7,True
oWSHSHell.PopUp "Analyzujφ se polo₧ky v registru t²kajφcφ se Pr∙zkumnφka.",1,"Skript PC WORLDu",0
Set oFsInputTextFile = oFs.OpenTextFile(strTempExportDateiPfad,1,False,-2)
Do While oFsInputTextFile.AtEndOfStream <> True
InputZeilenzahl=InputZeilenzahl+1
oFsInputTextFile.SkipLine
Loop
oFsInputTextFile.Close
ReDim Zeile(InputZeilenzahl)
Set oFsInputTextFile = oFs.OpenTextFile(strTempExportDateiPfad,1,False,-2)
Set oFsOutputTextFile = oFs.CreateTextFile(strTempImportDateiPfad,True)
Do Until n=InputZeilenzahl
n=n+1
Zeile(n) = oFsInputTextFile.ReadLine
If InStr(Zeile(n), "ITBarLayout") Then
strZeileAnfang = Mid(Zeile(n),1,66)
strByte = Mid(Zeile(n),67,2)
strZeileEnde = Mid(Zeile(n),69)
boolShowMessage = "1"
'DebugMsg1 = MsgBox(strZeileAnfang & LogoSwitcher(strByte) & strZeileEnde)
Zeile(n) = strZeileAnfang & LogoSwitcher(strByte) & strZeileEnde
End If
oFsOutputTextFile.WriteLine(Zeile(n))
Loop
oFsInputTextFile.Close
n=1
Set oFsInputTextFile = oFs.OpenTextFile(strTempExportDateiPfad,1,False,-2)
oFsInputTextFile.SkipLine
Do Until n=InputZeilenzahl
n=n+1
Zeile(n) = oFsInputTextFile.ReadLine
If InStr(Zeile(n), "[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\Explorer\]") Then
Zeile(n) = Replace(Zeile(n), "Toolbar\Explorer", "Toolbar\ShellBrowser")
End If
If InStr(Zeile(n), "ITBarLayout") Then
strZeileAnfang = Mid(Zeile(n),1,66)
strByte = Mid(Zeile(n),67,2)
strZeileEnde = Mid(Zeile(n),69)
boolShowMessage = "0"
'DebugMsg1 = MsgBox(strZeileAnfang & LogoSwitcher(strByte) & strZeileEnde)
Zeile(n) = strZeileAnfang & LogoSwitcher(strByte) & strZeileEnde
End If
oFsOutputTextFile.WriteLine(Zeile(n))
Loop
oFsInputTextFile.Close
oFsOutputTextFile.Close
oWSHShell.Run "%COMSPEC% /C regedit /s " & Chr(34) & strTempImportDateiPfad & Chr(34),7,True
oFs.DeleteFile strTempImportDateiPfad,True
oFs.DeleteFile strTempExportDateiPfad,True
Function LogoSwitcher(strFromReg)
strBinWert = HexNachBin(strFromReg)
If Mid(StrReverse(strBinWert),4,1) = "1" Then
strNeuerBinWert = StrReverse(Mid(StrReverse(strBinWert),1,1) & Mid(StrReverse(strBinWert),2,1) & Mid(StrReverse(strBinWert),3,1) & "0" & Mid(StrReverse(strBinWert),5,1) & Mid(StrReverse(strBinWert),6,1) & Mid(StrReverse(strBinWert),7,1) & Mid(StrReverse(strBinWert),8,1))
If boolShowMessage = "1" Then oWSHSHell.PopUp "Logo Windows bylo vypnuto. Chvilku to jeÜt∞ potrvß.",2,"Kript PC WORLDu",0
'DebugMsg2 = MsgBox("Logo se vypφnß. " & Chr(10) & "Alter Hex-Wert: " & BinNachHex(strBinWert) & Chr(10) & "Neuer Hex-Wert: " & BinNachHex(strNeuerBinWert))
Else
strNeuerBinWert = StrReverse(Mid(StrReverse(strBinWert),1,1) & Mid(StrReverse(strBinWert),2,1) & Mid(StrReverse(strBinWert),3,1) & "1" & Mid(StrReverse(strBinWert),5,1) & Mid(StrReverse(strBinWert),6,1) & Mid(StrReverse(strBinWert),7,1) & Mid(StrReverse(strBinWert),8,1))
If boolShowMessage = "1" Then oWSHSHell.PopUp "Logo Windows se zapφnß. Chvilku to jeÜt∞ potrvß.",2,"Skript PC WORLDu",0
'DebugMsg3 = MsgBox("Logo se zapφnß. " & Chr(10) & "Alter Hex-Wert: " & BinNachHex(strBinWert) & Chr(10) & "Neuer Hex-Wert: " & BinNachHex(strNeuerBinWert))
End If
LogoSwitcher = BinNachHex(strNeuerBinWert)
End Function
Function HexNachBin(strHex)
lngErgebnis = 0
For intIndex = Len(strHex) To 1 Step -1
strDigit = Mid(strHex, intIndex, 1)
intDigit = InStr("0123456789ABCDEF", UCase(strDigit))-1
If intDigit >= 0 Then
intValue = intDigit * (16 ^ (Len(strHex)-intIndex))
lngErgebnis = lngErgebnis + intValue
Else
lngErgebnis = 0
intIndex = 0
End If
Next
intExp = 65536
While intExp >= 1
If lngErgebnis >= intExp Then
lngErgebnis = lngErgebnis - intExp
strErgebnis = strErgebnis & "1"
Else
strErgebnis = strErgebnis & "0"
End If
intExp = intExp / 2
Wend
HexNachBin = strErgebnis
End Function
Function BinNachHex(strBin)
lngErgebnis = 0
for intIndex = len(strBin) to 1 step -1
strDigit = mid(strBin, intIndex, 1)
select case strDigit
case "0"
case "1"
lngErgebnis = lngErgebnis + (2 ^ (len(strBin)-intIndex))
case else
lngErgebnis = 0
intIndex = 0
end select
Next
BinNachHex = Hex(lngErgebnis)
End Function