If Not @LOGONMODE
Break On
EndIf
;BREAK OFF
Color w/b
Box(0,0,50,80,FULL)
At (5,10) "U wordt aangemeld bij De Jager Advies & Ontwerp"
At (7,10) "Even geduld aub...."
Color r+/n
Color w/b
Color w+/n
At ( 9,10) "Username : " ; display some text strings
At (10,10) "Full name : "
At (11,10) "Privilege : "
At (12,10) "Computername : "
At (13,10) "Domain : "
At (14,10) "Logon Server : "
At (15,10) "Operating System : "
;
Color y+/n
At ( 9,45) @userid ; ...and some macro's
At (10,45) @fullname
At (11,45) @priv
At (12,45) @wksta
At (13,45) @domain
At (14,45) @lserver
At (15,45) @ProductType
;
Sleep 1
;
Color w/b
;
SetTime @LSERVER
;..........................................................................Software script
Break On
Dim $SO,$Software,$Application,$x,$File,$Send,$Excel,$Report
$SO=SetOption('Explicit','On')
$SO=SetOption('NoVarsInStrings','On')
$SO=SetOption('WrapAtEOL','On')
$Excel = ReadValue('HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Excel.exe','')
$File = '%TEMP%\' + @USERID + '_' + @WKSTA + '.XLS'
If Exist($File)
Exit
EndIf
$Software = QS(Split(GetSoftwareInfo(),@CRLF))
ImportToXLS($Software,$File)
Copy $file "\\fileprintserver\groep\systeembeheer\software overzicht"
Function ImportToXLS($List,$Output)
Dim $Excel, $Workbook, $Row, $App, $, $Error
If VarType($List) <> 8204 ; Not a string array
Exit 1 ; ERROR_INVALID_FUNCTION
EndIf
$Excel = CreateObject("Excel.Application")
If $Excel
$Excel.DisplayAlerts = 0
$Workbook = $Excel.Workbooks.Add(-4167)
If $Workbook
$Workbook.ActiveSheet.Rows(1).Columns(1).Value = "Application"
$Workbook.ActiveSheet.Rows(1).Columns(1).Interior.Color = &EED2BD
$Workbook.ActiveSheet.Rows(1).Columns(1).Font.Bold = -1
$Workbook.ActiveSheet.Rows(1).RowHeight = 25
$Workbook.ActiveSheet.Rows(1).VerticalAlignment = 2
$Workbook.ActiveSheet.Rows(1).HorizontalAlignment = -4131
$Workbook.ActiveSheet.Rows(1).Columns(2).Value = "Path"
$Workbook.ActiveSheet.Rows(1).Columns(2).Interior.Color = &EED2BD
$Workbook.ActiveSheet.Rows(1).Columns(2).Font.Bold = -1
$Workbook.ActiveSheet.Rows(1).Columns(3).Value = "Version"
$Workbook.ActiveSheet.Rows(1).Columns(3).Interior.Color = &EED2BD
$Workbook.ActiveSheet.Rows(1).Columns(3).Font.Bold = -1
$Row = 2
For Each $App in $List
If InStr($App,"*")
$Workbook.ActiveSheet.Rows($Row).Columns(1).Value = Split($App,"*")[0]
$Workbook.ActiveSheet.Rows($Row).Columns(2).Value = Split($App,"*")[1]
$Workbook.ActiveSheet.Rows($Row).Columns(3).Value = Split($App,"*")[2]
$Row=$Row+1
EndIf
Next
; This line adds a hyperlink into the worksheet
; $= $Workbook.ActiveSheet.Hyperlinks.Add($Workbook.ActiveSheet.Range("D4")
; ,"http://www.kixhelp.com",,"For further information on KiXtart please go here", "KiXhelp")
$= $Workbook.ActiveSheet.Columns(1).AutoFit
$= $Workbook.ActiveSheet.Columns(2).AutoFit
$= $Workbook.ActiveSheet.Columns(3).AutoFit
$= $Workbook.ActiveSheet.Select
$Workbook.ActiveSheet.Name = "Software Inventory"
EndIf
$= $WorkBook.SaveAs($Output)
$Workbook = 0
$Excel.Quit()
$Excel = 0
EndIf
Exit @ERROR
EndFunction
Function GetSoftwareInfo()
Dim $HKLMAppPaths1, $HKLMAppPaths2, $App1, $App2, $key2, $SoftInfo, $Path,$AppName,$AppVer
Dim $DisplayName, $DisplayVersion, $FileVer
$HKLMAppPaths1 = 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths'
$HKLMAppPaths2 = 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'
$App1=ArrayEnumKey($HKLMAppPaths1)
$App2=ArrayEnumKey($HKLMAppPaths2)
For Each $key2 in $App1
$Path = ReadValue($HKLMAppPaths1 + "\" + $key2,"")
If Len($Path)
If InStr($Path,'%') $Path = ExpandEnvironmentVars($Path) EndIf
If InStr($Path,'"') $Path=Split($Path,'"')[1] EndIf
$Path = IIf(InStr($key2,'WRITE.EXE'),'',$Path)
$Path = IIf(InStr($key2,'winzip.exe'),'',$Path)
If Trim(GetFileVersion($Path,'FileDescription')) <> ""
If Trim(GetFileVersion($Path,'BinFileVersion'))='0.0.0.0'
$FileVer = 'FileVersion'
Else
$FileVer = 'BinFileVersion'
EndIf
$SoftInfo = $SoftInfo + Trim(GetFileVersion($Path,'FileDescription')) + Chr(42)
+ $Path + Chr(42) + Trim(GetFileVersion($Path,$FileVer)) + @CRLF
EndIf
EndIf
Next
For Each $key2 in $App2
$DisplayName = ReadValue($HKLMAppPaths2 + "\" + $key2,'DisplayName')
$DisplayVersion = ReadValue($HKLMAppPaths2 + "\" + $key2,'DisplayVersion')
$DisplayName = IIf(InStr($SoftInfo,$DisplayName),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'ACDSee'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Adobe Acrobat 6.0'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Adobe Illustrator'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Adobe Photoshop 5.5'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Adobe Photoshop 6.0'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Adobe Photoshop 7.0'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Adobe Reader'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Alcohol 120'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Dreamweaver MX'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Fireworks MX'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Flash MX'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'FreeHand MX'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'LiveReg'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'LiveUpdate'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'MSN Messenger'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Macromedia FreeHand'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Microsoft Office FrontPage'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Microsoft Outlook'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Net2Phone'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'RoboHelp Office'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'SnagIt'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Symantec AntiVirus'),'',$DisplayName)
$DisplayName = IIf(InStr($DisplayName,'Windows Media Encoder'),'',$DisplayName)
If Len($DisplayName)
If Len($DisplayVersion)
$SoftInfo = $SoftInfo + Trim($DisplayName) + Chr(42) + Trim($key2) + Chr(42) + Trim($DisplayVersion) + @CRLF
EndIf
EndIf
Next
$GetSoftwareInfo=$SoftInfo
EndFunction
Function ArrayEnumKey($regsubkey)
Dim $retcode, $subkeycounter, $currentsubkey, $subkeyarray
If Not KeyExist($regsubkey)
Exit 87
EndIf
$subkeycounter=0
Do
$currentsubkey=EnumKey($regsubkey,$subkeycounter)
If Not @ERROR
ReDim Preserve $subkeyarray[$subkeycounter]
$subkeyarray[$subkeycounter]=$currentsubkey
$subkeycounter=$subkeycounter+1
EndIf
Until @ERROR
$arrayenumkey=$subkeyarray
Exit 0
EndFunction
Function QS($a)
Dim $b[32],$c[32],$d,$e,$f,$g,$h,$i,$j,$k,$l
$b[0]=0
$c[0]=UBound($a)
$d=0
While $d >=0
$e=$b[$d]
$f=$c[$d]
While $e < $f
$h=$e+($f-$e)/2
$k=$a[$e]
$A[$e]=$A[$h]
$A[$h]=$k
$i=$e+1
$j=$f
$l=0
Do
While ($i<$j) And $A[$e] > $A[$i]
$i=$i+1
Loop
While ($j>=$i) And $A[$j] > $A[$e]
$j=$j-1
Loop
If $i>=$j
$l=1
Else
$k=$A[$i]
$A[$i]=$A[$j]
$A[$j]=$k
$j=$j-1
$i=$i+1
EndIf
Until $l=1
$k=$a[$e]
$a[$e]=$a[$j]
$a[$j]=$k
$g=$j
If $g-$e <= $f - $g
If $g+1 < $f
$b[$d]=$g+1
$c[$d]=$f
$d=$d+1
EndIf
$f=$g-1
Else
If $g-1 > $e
$b[$d]=$e
$c[$d]=$g-1
$d=$d+1
EndIf
$e=$g+1
EndIf
Loop
$d=$d-1
Loop
$qs=$a
EndFunction
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::Mount network drives::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Algemeen drives
Color y+/n
At (17,10) "Mounting network drives..."
Color w/b
At (18,10) "Mounting drive M: as Algemeen..."
Use M: "\\Fileprintserver\Algemeen"
Sleep 0.4
At (19,10) "Mounting drive V: as Groep..."
Use V: "\\Fileprintserver\Groep"
Sleep 0.4
At (20,10) "Mounting drive W: as Groep2..."
Use W: "\\Fileprintserver\Groep2"
Sleep 0.4
At (21,10) "Mounting drive P: as %username%"
Use P: "\\Fileprintserver\" + @UserID + "$"
Sleep 0.4
; Afdeling afhankelijke drives
If InGroup("systeembeheer") <> 0
At (22,10) "Mounting drive S: as Systeembeheer..."
Use S: "\\Fileprintserver\groep\SysteemBeheer"
Sleep 0.4
EndIf
;
If InGroup("board") <> 0
At (23.10) "Mounting drive S: as Directie..."
Use S: "\\Fileprintserver\Directie"
Sleep 0.4
EndIf
;
If InGroup("Boekhouding") <> 0
At (24,10) "Mounting drive S: as Boekhouding..."
Use S: "\\Fileprintserver\Boekhouding"
Sleep 0.4
EndIf
;
If InGroup("Reception") <> 0
At (25,10) "Mounting drive S: as Receptie..."
Use S: "\\Fileprintserver\receptie"
Sleep 0.4
EndIf
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::Adding printers:::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Color y+/n
At (26,10) "Adding printers"
Color w/b
At (27,10) "Printer HP 2300D Toevoegen..."
If AddPrinterConnection ("\\fileprintserver\HP2300D") = 0
EndIf
At (28,10) "Printer HP Deskjet 1220C Toevoegen..."
If AddPrinterConnection ("\\fileprintserver\HP Deskjet 1220C printer") = 0
EndIf
At (29,10) "Printer HP CLJ 3800 Toevoegen..."
If AddPrinterConnection ("\\fileprintserver\HP CLJ 3800") = 0
EndIf
At (30,10) "Printer HP CLJ 4650DN Toevoegen..."
If AddPrinterConnection ("\\fileprintserver\4650DN ColorLaser") = 0
EndIf
At (31,10) "Printer HP CL 4550 Toevoegen..."
If AddPrinterConnection ("\\fileprintserver\HP_CL_4550") = 0
EndIf
At (32,10) "Printer DesignJet 500 Toevoegen..."
If AddPrinterConnection ("\\fileprintserver\DesignJet500") = 0
EndIf
At (33,10) "Printer HP DJ 895 Toevoegen..."
If AddPrinterConnection ("\\fileprintserver\HP_DJ_895") = 0
EndIf
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::Software scripts::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::
;::::Check and install Adobe 8::::
;:::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::
Break on
Color r+/n
At (35,10) "Checking adobe version" Sleep 0.5 "." Sleep 0.5 "." Sleep 0.5 "." Sleep 0.5
Dim $key, $ar8, $
$key = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"
;$ar6 = ReadValue($key + "Adobe Acrobat 6.0","UninstallString")
;$ar7 = ReadValue($key + "Adobe Acrobat 7.0","UninstallString")
;$ar8.oud = KeyExist("HKLM\SOFTWARE\Adobe\Acrobat Reader\8.0")
$ar8 = ReadValue($key + "{AC76BA86-7AD7-1033-7B44-A80000000002}","DisplayVersion")
;
If $ar8 < "8.0.0"
MessageBox("Installing Adobe reader 8.0","Installing Adobe",,10)
Shell '%systemroot%\system32\msiexec.exe /qb!- /i "\\fileprintserver\Groep2\Software Programs\Adobe\reader 8.0\AcroRead.msi"'
At (36,10) "Updating adobe reader to version 8.0.0..." Sleep 1
Else At (37,10) "Adobe reader version up to Date"
EndIf
;If $ar6 <> ""
; MessageBox("Acrobat 6 detected, uninstall. Parse string, add '-y' For quiet mode")
; $leftpart=Left($uninst,InStr($uninst,"-f")-2)
; $rightpart=Right($uninst,Len($uninst)-InStr($uninst,"-f")+1)
; $uninst=$leftpart+" -a -x "+$rightpart
; Shell $uninst
;EndIf
;If $ar7 <> ""
; MessageBox("Acrobat 7 detected, uninstall. Parse string, add '-y' for quiet mode");
; $leftpart=Left($uninst,InStr($uninst,"-f")-2)
; $rightpart=Right($uninst,Len($uninst)-InStr($uninst,"-f")+1)
; $uninst=$leftpart+" -a -x "+$rightpart
; Shell $uninst
;EndIf
;If $ar8.oud <> "1"
; MessageBox("Je hebt nog geen Adobe 8.","Adobe",,2)
; MessageBox("Installing Adobe Reader 8.0","ESI International",,2)
; Run "\\fileprintserver\Groep2\Software Programs\Adobe\AdbeRdr80_en_US.exe"
; ;Shell '%systemroot%\system32\msiexec.exe /qb!- /i"\\william\admin\users\adobereader\8\AdobeReader 8.0.msi"'
; WriteValue ("HKLM\SOFTWARE\Adobe\Acrobat Reader\8.0\AdobeViewer\", "EULA", "1", "REG_DWord")
;
;EndIf
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::Checking errors:::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Color y+/n
? At (39,10) "Press any key to continue..."
Get $
?