Jump to content

blinkdt

Members
  • Posts

    12
  • Joined

  • Last visited

About blinkdt

  • Birthday 04/19/1961

Profile Information

  • Location
    Fox Valley, WI

blinkdt's Achievements

Seeker

Seeker (1/7)

0

Reputation

  1. Yeah, I suspect they all have their heads buried in their Facebook accounts. Give me a legal pad and pen, not an iPad.
  2. Me, too, and I'm not a big fan of opening a spreadsheet and manually entering scads of repetitive data. So here's what I do: 1) Walk to each machine and run the following compiled script from a WinRAR package: CODETrayTip('Belarc Advisor', 'Installing Belarc Advisor . . . please wait . . .', 0, 1) Run( @ScriptDir & "\advisor.exe") WinWait("Belarc Advisor", "Welcome to the Belarc Advisor Setup program") Sleep(2000) WinActivate("Belarc Advisor", "Welcome to the Belarc Advisor Setup program") Sleep(1000) ControlClick ( "Belarc Advisor", "Welcome to the Belarc Advisor Setup program", "Button1") WinWait("Belarc License Agreement") Sleep(2000) WinActivate("Belarc License Agreement") Sleep(1000) ControlClick ( "Belarc License Agreement", "", "Button1") ProcessWait("IEXPLORE.EXE") For $i = 15 To 1 Step -1 TrayTip('Belarc Advisor', 'Please wait for ' & $i & ' seconds . . .', 0, 1) Sleep(1000) TrayTip("clear tip","",0) Next TrayTip('Belarc Advisor', 'Gathering Belarc Advisor information . . . please wait . . .', 0, 1) WinActivate("Belarc Advisor Current Profile", "Belarc Advisor Current Profile") Sleep(2000) Send("!f") Sleep(2000) Send("a") WinWait("Save") Sleep(2000) WinActivate("Save") Send(@ComputerName) Sleep(1000) Send("{TAB}") Sleep(1000) Send("{DOWN}") Sleep(1000) Send("{UP}") Sleep(1000) Send("{ENTER}") TrayTip("clear tip","",0) Sleep(2000) Send("{ENTER}") AdlibEnable ("Yes") Sleep(2000) For $i = 5 To 1 Step -1 TrayTip('Belarc Advisor', 'Please wait for ' & $i & ' seconds . . .', 0, 1) Sleep(1000) TrayTip("clear tip","",0) Next AdlibDisable() TrayTip('Belarc Advisor', 'Performing cleanup . . . please wait . . .', 0, 1) FileCopy(@MyDocumentsDir & "\*PC*.htm", "S:\Other Stuff\SJSReports\Belarc\", 9) Sleep(1000) FileDelete( @DesktopCommonDir & "\Belarc*.lnk") Sleep(500) FileDelete( @DesktopDir & "\Belarc*.lnk") Sleep(500) FileDelete( @ProgramsCommonDir & "\Belarc*.lnk") Sleep(500) FileDelete( @ProgramsDir & "\Belarc*.lnk") Sleep(500) FileDelete( @AppDataCommonDir & "\Microsoft\Internet Explorer\Quick Launch\Belarc*.lnk") Sleep(500) FileDelete( @AppDataDir & "\Microsoft\Internet Explorer\Quick Launch\Belarc*.lnk") Sleep(500) FileCopy( @ScriptDir & "\Belarc Advisor.lnk", @ProgramsCommonDir & "\Accessories\System Tools") Sleep(500) TrayTip("clear tip","",0) ProcessClose("iexplore.exe") MsgBox(64, "Success!", "Operation completed successfully!", 5) Func Yes() If WinExists("Save Webpage") Then WinActivate("Save Webpage") Sleep(1500) Send("{TAB}") Sleep(1500) Send("{ENTER}") Sleep(5000) EndIf EndFunc Each .htm file draws it's name from the computer's unique name and is saved to a network share. An adlib section compensates if the procedure has been run before on the machine. Lots of 'sleep' here to account for slow machines, but it gets the job done. 2) Run the following script to extract relevant data from the .htm files and place same into an Excel spreadsheet: CODE#include <IE.au3> #include <Date.au3> #include <Array.au3> #include <File.au3> #region MS Excel Constants Const $xlLeft = -4131 Const $xlCenter = -4108 Const $xlRight = -4152 Const $xlTop = -4160 Const $xlBottom = -4107 Const $xlNormal = -4143 Const $xlVAlignBottom = -4107 Const $xlVAlignCenter = -4108 Const $xlVAlignDistributed = -4117 Const $xlVAlignJustify = -4130 Const $xlVAlignTop = -4160 #endregion TraySetIcon("C:\Program Files\Belarc\Advisor\System\NPBelv32.dll") TraySetToolTip(' Belarc Report Wizard is active . . . ') $oExcel = ObjCreate("Excel.Application");Create an Excel File $oExcel.WorkBooks.Add ;Color the Worksheet with a Background Image ;$oExcel.ActiveWorkBook.Activesheet.SetBackgroundPicture ("S:\Other Stuff\SJSReports\Belarc\Tile1.jpg") $oExcel.ActiveWorkBook.Activesheet.Range("A1:Z200").Interior.ColorIndex = 56;Color a Cell Range with a Color $oExcel.ActiveWorkBook.Activesheet.Tab.ColorIndex = 1;format main tab and hide unused tabs $oExcel.ActiveWorkBook.Activesheet.Name = "Belarc Report" $oExcel.ActiveWorkBook.Sheets(2).Visible = False $oExcel.ActiveWorkBook.Sheets(3).Visible = False $oExcel.ActiveWorkBook.ActiveSheet.Cells(2, 3).Value=("Belarc" & @LF & "Report");Create Date/Time/Title/Notation Area $oExcel.ActiveWorkBook.ActiveSheet.Cells(2, 2).Value=("" & _NowDate() & "") $oExcel.ActiveWorkBook.ActiveSheet.Cells(3, 2).Value=("" & _NowTime() & "") $oExcel.ActiveWorkBook.ActiveSheet.Cells(2, 4).Value="Notes: "() $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 1).Value="#";Populate the Spreadsheet with Header Values $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 2).Value="Name" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 3).Value="Membership" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 4).Value="CPU" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 5).Value="HDD" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 6).Value="-free" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 7).Value="RAM" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 8).Value="Slot1" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 9).Value="Slot2" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 10).Value="BusClock" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 11).Value="Board" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 12).Value="OperatingSys" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 13).Value="FileSys" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 14).Value="#" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 15).Value="#" $oExcel.ActiveWorkBook.ActiveSheet.Cells(4, 16).Value="Location" $oExcel.Activesheet.Range($oExcel.Cells(1, 1), $oExcel.Cells(1, 14)).Interior.ColorIndex = 1;Format the Header $oExcel.ActiveWorkBook.Activesheet.Range($oExcel.Cells(2, 1), $oExcel.Cells(3, 1)).Interior.ColorIndex = 1 $oExcel.ActiveWorkBook.Activesheet.Range($oExcel.Cells(2, 14), $oExcel.Cells(3, 14)).Interior.ColorIndex = 1 $oExcel.ActiveWorkBook.Activesheet.Range($oExcel.Cells(2, 2), $oExcel.Cells(3, 13)).Interior.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Range($oExcel.Cells(4, 1), $oExcel.Cells(4, 14)).Interior.ColorIndex = 1 $oExcel.Activesheet.Range($oExcel.Cells(2, 3), $oExcel.Cells(2, 3)).Font.Bold = True $oExcel.Activesheet.Range($oExcel.Cells(3, 2), $oExcel.Cells(3, 2)).Font.Italic = True $oExcel.Activesheet.Range($oExcel.Cells(2, 2), $oExcel.Cells(2, 2)).Font.Bold = True $oExcel.Activesheet.Range($oExcel.Cells(4, 1), $oExcel.Cells(4, 14)).Font.Bold = True $oExcel.Activesheet.Range($oExcel.Cells(4, 16), $oExcel.Cells(4, 16)).Font.Underline = True $oExcel.Activesheet.Range($oExcel.Cells(2, 3), $oExcel.Cells(2, 3)).Font.Size = 13 $oExcel.Activesheet.Range($oExcel.Cells(2, 2), $oExcel.Cells(2, 2)).Font.Size = 11 $oExcel.Activesheet.Range($oExcel.Cells(3, 2), $oExcel.Cells(3, 2)).Font.Size = 8 $oExcel.Activesheet.Range($oExcel.Cells(2, 2), $oExcel.Cells(3, 3)).HorizontalAlignment = $xlCenter $oExcel.Activesheet.Range($oExcel.Cells(2, 3), $oExcel.Cells(3, 3)).MergeCells = True $oExcel.Activesheet.Range($oExcel.Cells(2, 4), $oExcel.Cells(3, 13)).MergeCells = True $oExcel.ActiveWorkBook.Activesheet.Range($oExcel.Cells(2, 4), $oExcel.Cells(3, 13)).WrapText = True $oExcel.ActiveWorkBook.Activesheet.Range($oExcel.Cells(2, 4), $oExcel.Cells(3, 13)).ShrinkToFit = True $oExcel.Activesheet.Range($oExcel.Cells(2, 3), $oExcel.Cells(2, 3)).VerticalAlignment = $xlVAlignCenter $oExcel.Activesheet.Range($oExcel.Cells(3, 2), $oExcel.Cells(3, 2)).VerticalAlignment = $xlVAlignTop $oExcel.Activesheet.Range($oExcel.Cells(2, 4), $oExcel.Cells(2, 13)).VerticalAlignment = $xlVAlignTop $oExcel.Activesheet.Range($oExcel.Cells(4, 1), $oExcel.Cells(4, 16)).Font.ColorIndex = 2 $oExcel.Activesheet.Rows(2).RowHeight = 36 $oExcel.Activesheet.Rows(3).RowHeight = 36 $oExcel.Activesheet.Rows(4).RowHeight = 18 $oExcel.Activesheet.Range($oExcel.Cells(4, 1), $oExcel.Cells(4, 14)).VerticalAlignment = $xlVAlignCenter $oExcel.Activesheet.Range($oExcel.Cells(4, 1), $oExcel.Cells(4, 4)).HorizontalAlignment = $xlCenter $oExcel.Activesheet.Range($oExcel.Cells(4, 5), $oExcel.Cells(4, 5)).HorizontalAlignment = $xlRight $oExcel.Activesheet.Range($oExcel.Cells(4, 7), $oExcel.Cells(4, 14)).HorizontalAlignment = $xlCenter $oExcel.Activesheet.Range($oExcel.Cells(4, 14), $oExcel.Cells(4, 14)).Font.ColorIndex = 1 $oExcel.Activesheet.Range($oExcel.Cells(4, 15), $oExcel.Cells(4, 15)).Font.ColorIndex = 56 $oExcel.Activesheet.Columns(1).Autofit $oExcel.Activesheet.Columns(2).Autofit $oExcel.Activesheet.Columns(3).Autofit $oExcel.Activesheet.Columns(4).Autofit $oExcel.Activesheet.Columns(5).Autofit $oExcel.Activesheet.Columns(6).Autofit $oExcel.Activesheet.Columns(7).Autofit $oExcel.Activesheet.Columns(8).Autofit $oExcel.Activesheet.Columns(9).Autofit $oExcel.Activesheet.Columns(10).Autofit $oExcel.Activesheet.Columns(11).Autofit $oExcel.Activesheet.Columns(12).Autofit $oExcel.Activesheet.Columns(13).Autofit $oExcel.Activesheet.Columns(14).Autofit $oExcel.Activesheet.Columns(15).Autofit $oExcel.Activesheet.Columns(16).Autofit $oExcel.Visible = 1; make the workbook visible If MsgBox(33, "Belarc Report", "Ready to begin?") == 2 Then Exit Dim $count = 4 $tmplst = "S:\Other Stuff\SJSReports\Belarc\";Search for all Belarc files in the Mapped Network Share $search = FileFindFirstFile($tmplst&"*PC*.htm") While 1;Search for the Relevant Data $file = FileFindNextFile($search) If @error Then ExitLoop $site = $file $browser=_IECreate($tmplst&$site, 0, 0);3rd param - hidden(0)/visible(1) $sText = _IEBodyReadText ($browser) ProcessWait("iexplore.exe") $OF = FileOpen($tmplst&"list.txt",2) FileWrite($OF,$sText) FileClose($OF) $handle = FileOpen($tmplst&"list.txt",0);Computer Name for TrayTip While 1 Dim $Split_ $line_ = FileReadLine($handle) If StringinStr($line_, "Computer Name") Then $trim_a = StringTrimLeft($line_, 15) $trim_b = StringUpper($trim_a) $Split_ = StringSplit($trim_b, " ") $FileName = $Split_[1] TrayTip("Belarc Report", "Reading data for " & $FileName & " . . . please wait . . .", 15, 17) ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);Computer Name While 1 $line0 = FileReadLine($handle) If StringinStr($line0, "Computer Name") Then $trim0a = StringTrimLeft($line0, 15) $upper0 = StringUpper($trim0a) $Split0 = StringSplit($upper0, " ") $result0 = $Split0[1] ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);Computer Membership While 1 $line1 = FileReadLine($handle) If StringinStr($line1, "Computer Name") Then $trim1a = StringTrimLeft($line1, 15) $trim1b = StringTrimRight($trim1a, 1) $upper1 = StringUpper($trim1b) $Split1 = StringSplit($upper1, " ") _ArrayReverse($Split1) $trim1c = _ArraytoString($Split1[0], " ", 1) $trim1d = $Split1[0] If StringIsAlpha($trim1d) Then $result1 = $trim1d Else $result1 = "~~ no data ~~" EndIf ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);Central Processing Unit While 1 Dim $Split2 $line2 = FileReadLine($handle) If StringinStr($line2, "hertz Intel ") Then $trim2a = StringReplace($line2, " gigahertz", "GHz") $trim2b = StringReplace($trim2a, " megahertz", "MHz") $trim2c = StringReplace($trim2b, "Intel Pentium ", "P") $trim2d = StringReplace($trim2c, "Intel Celeron", "Cel") $trim2e = StringReplace($trim2d, "(2 installed)", "(2)") $Split2 = StringSplit($trim2e, " ") _ArraySwap( $Split2[1], $Split2[2] ) $trim2f = _ArraytoString($Split2, " ", 1) $trim2g = StringReplace($trim2f, "1000MHz", "1.0GHz") $result2 = $trim2g ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);HDD Total Size While 1 $line3 = FileReadLine($handle) If StringinStr($line3, "Usable Hard Drive") Then $trim3a = StringReplace($line3, " Gigabytes", "GB") $trim3b = StringReplace($trim3a, " Megabytes", "MB") $result3 = StringReplace($trim3b, " Usable Hard Drive Capacity", "") ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);HDD Free Space While 1 $line4 = FileReadLine($handle) If StringinStr($line4, "Hard Drive Free") Then $trim4a = StringReplace($line4, " Gigabytes", "GB") $trim4b = StringReplace($trim4a, " Megabytes", "MB") $result4 = StringReplace($trim4b, " Hard Drive Free Space", "") ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);Installed RAM While 1 Dim $Split5 $line5 = FileReadLine($handle) If StringinStr($line5, "Installed Memory") Then $trim5a = StringReplace($line5, " Megabytes", "MB") $trim5b = StringReplace($trim5a, " Installed Memory", "") $Split5 = StringSplit($trim5b, " ", 1) _ArrayReverse( $Split5) $result5 = $Split5[0] ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);DIMM Slot 1 Usage While 1 Dim $Split6a Dim $Split6b $line6 = FileReadLine($handle) If StringinStr($line6, "Slot", 0, 1) Then $Split6a = StringSplit($line6, " MB", 1) If @error Then $result6 = "Empty" ExitLoop EndIf _ArraySwap( $Split6a[1], $Split6a[2] ) _ArrayAdd( $Split6a, "MB") $trim6a = _ArraytoString($Split6a, " ", 1) $trim6b = StringReplace($trim6a, " MB", "MB") $Split6b = StringSplit($trim6b, " ", 1) _ArrayReverse( $Split6b) $result6 = $Split6b[0] ExitLoop EndIf Wend FileClose($handle) Dim $Split7a;DIMM Slot 2 Usage Dim $Split7b $handle = FileOpen($tmplst&"list.txt",0) $num = _FileCountLines($tmplst&"list.txt") $find = "Slot" For $x = $num to 1 Step - 1 $line = FileReadLine($handle, $x) If StringInStr($line, $find) Then $y = $x + 1 EndIf Next While 1 $line7 = FileReadLine($handle, $y) If StringinStr($line7, "Slot", 0, 1) Then $Split7a = StringSplit($line7, " MB", 1) If @error Then $result7 = "Empty" ExitLoop EndIf _ArraySwap( $Split7a[1], $Split7a[2] ) _ArrayAdd( $Split7a, "MB") $trim7b = _ArraytoString($Split7a, " ", 1) $trim7c = StringReplace($trim7b, " MB", "MB") $Split7b = StringSplit($trim7c, " ", 1) _ArrayReverse( $Split7b) $result7 = $Split7b[0] ExitLoop EndIf WEnd FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);Bus Clock While 1 $line8 = FileReadLine($handle) If StringinStr($line8, "Bus Clock:") Then $trim8a = StringReplace($line8, "Bus Clock: ", "") $trim8b = StringReplace($trim8a, " megahertz", "MHz") $result8 = $trim8b ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);Motherboard While 1 Dim $Split9a Dim $Split9b $line9 = FileReadLine($handle) If StringinStr($line9, "secondary memory cache", 0, 1) Then $Split9a = StringSplit($line9, " cache", 1) _ArraySwap( $Split9a[1], $Split9a[2] ) $trim9a = _ArraytoString($Split9a, " ", 1) $trim9b = StringReplace($trim9a, "Board: ", "") $Split9b = StringSplit($trim9b, " ", 1) $result9 = $Split9b[2] ExitLoop EndIf WEnd FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);Operating System While 1 $line10 = FileReadLine($handle) If StringinStr($line10, "Windows XP") Then $trim10a = StringReplace($line10, "Windows", "Win") $trim10b = StringReplace($trim10a, "Service Pack 2", "SP2") $trim10c = StringReplace($trim10b, "Professional", "Pro") $result10 = StringLeft($trim10c, StringInStr($trim10c, 'SP2') + 2) ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);File System While 1 Dim $Split11 $line11 = FileReadLine($handle) If StringinStr($line11, "c:") Then $trim11a = StringTrimLeft($line11, 4) $Split11 = StringSplit($trim11a, " ", 1) $result11 = StringTrimRight($Split11[1], 0) ExitLoop EndIf Wend FileClose($handle) $handle = FileOpen($tmplst&"list.txt",0);Location While 1 Dim $Split12, $result12 $line12 = FileReadLine($handle) If StringinStr($line12, "Computer Name") Then $trim12a = StringTrimLeft($line12, 15) $upper12 = StringUpper($trim12a) $Split12 = StringSplit($upper12, " ") $result12a = StringTrimRight($Split12[1], 6) ;_ArrayDisplay($Split12, "Testing...") Select Case $result12a = "108" $result12 = "Computer Lab" Case $result12a = "205" $result12 = "Kindergarten" Case $result12a = "204" $result12 = "Kindergarten" Case $result12a = "206" $result12 = "Grade1" Case $result12a = "207" $result12 = "Grade1" Case $result12a = "201" $result12 = "Grade2" Case $result12a = "202" $result12 = "Grade2" Case $result12a = "104" $result12 = "Grade3" Case $result12a = "105" $result12 = "Grade3" Case $result12a = "102" $result12 = "Grade4" Case $result12a = "103" $result12 = "Grade4" Case $result12a = "307" $result12 = "Grade5" Case $result12a = "308" $result12 = "Grade5" ; Case $result12a = "208" ; $result12 = "Resource" Case $result12a = "304" $result12 = "Mathematics" Case $result12a = "306" $result12 = "Science" Case $result12a = "310" $result12 = "Library" Case $result12a = "312" $result12 = "Resource" Case $result12a = "302" $result12 = "Religion" Case $result12a = "301" $result12 = "Social Studies" Case $result12a = "303" $result12 = "Literature" Case $result12a = "COUNSE" $result12 = "Mrs. T.G." Case $result12a = "305" $result12 = "Language" ; Case $result12a = "" ; $result12 = "" Case Else $result12 = "?" EndSelect ExitLoop EndIf Wend FileClose($handle) Dim $Row = _Count() $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 1).Interior.ColorIndex = 1;Format the Row ;$oExcel.ActiveWorkBook.Activesheet.Cells($Row, 1).HorizontalAlignment = $xlCenter $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 1).Font.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 1).Font.Bold = True $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 2).Interior.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 3).Interior.ColorIndex = 15 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 4).Interior.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 5).Interior.ColorIndex = 15 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 6).Interior.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 7).Interior.ColorIndex = 15 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 8).Interior.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 9).Interior.ColorIndex = 15 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 10).Interior.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 11).Interior.ColorIndex = 15 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 12).Interior.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 13).Interior.ColorIndex = 15 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 14).Interior.ColorIndex = 1 $oExcel.ActiveWorkBook.Activesheet.Cells($Row, 16).Font.ColorIndex = 2 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 1).Value=$Row-4;Write Information to the Row $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 2).Value=$result0 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 3).Value=$result1 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 4).Value=$result2 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 5).Value=$result3 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 6).Value=$result4 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 7).Value=$result5 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 8).Value=$result6 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 9).Value=$result7 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 10).Value=$result8 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 11).Value=$result9 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 12).Value=$result10 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 13).Value=$result11 $oExcel.ActiveWorkBook.ActiveSheet.Cells($Row, 16).Value=$result12 $oExcel.Activesheet.Columns(1).Autofit $oExcel.Activesheet.Columns(2).Autofit $oExcel.Activesheet.Columns(3).Autofit $oExcel.Activesheet.Columns(4).Autofit $oExcel.Activesheet.Columns(5).Autofit $oExcel.Activesheet.Columns(6).Autofit $oExcel.Activesheet.Columns(7).Autofit $oExcel.Activesheet.Columns(8).Autofit $oExcel.Activesheet.Columns(9).Autofit $oExcel.Activesheet.Columns(10).Autofit $oExcel.Activesheet.Columns(11).Autofit $oExcel.Activesheet.Columns(12).Autofit $oExcel.Activesheet.Columns(13).Autofit $oExcel.Activesheet.Columns(14).Autofit $oExcel.Activesheet.Columns(15).Autofit $oExcel.Activesheet.Columns(16).Autofit ProcessClose("iexplore.exe") Sleep(40) WEnd FileClose($search); Close the search handle TrayTip("clear tray tip","",0) $LastRow = _Count(); Arrive at Conclusion $oExcel.ActiveWorkBook.Activesheet.Range($oExcel.Cells($LastRow, 1), $oExcel.Cells($LastRow, 14)).MergeCells = True $oExcel.ActiveWorkBook.Activesheet.Cells($LastRow, 1).Interior.ColorIndex = 1 $oExcel.ActiveWorkBook.Activesheet.Cells($LastRow, 1).HorizontalAlignment = $xlCenter $oExcel.ActiveWorkBook.Activesheet.Cells($LastRow, 1).Font.ColorIndex = 2 $oExcel.ActiveWorkBook.Activesheet.Cells($LastRow, 1).Font.Bold = True $oExcel.ActiveWorkBook.Activesheet.Cells($LastRow, 1).Value = "'~~~~~ End of Belarc Report ~~~~~" MsgBox(4096, "Belarc Report", "The report is ready for your review!", 5) Exit Func _Count() $count = $count + 1 Return $count EndFunc Lots of string trimming and virtually NO error checking, but I'm pretty familiar with the state of these machines. It's an ongoing project and occupies my time when I have the time. Edited for updates to the scripts, including Excel spreadsheet format.
  3. Nice. Have you noticed that sometimes during the update process Grisoft's server is experiencing difficulties? Or after the priority updates are downloaded and installed, you can go back immediately and download/install "optional" updates? I've tried to account for these events in the following script: Update() While 1 If WinExists('AVG Free Edition Update Selection', 'Please select update') Then ControlClick('AVG Free Edition Update Selection', 'Please select update', 'Button2') ElseIf WinExists ('AVG Free Edition', 'Update was successfully finished') Then ControlClick('AVG Free Edition', 'Update was successfully finished', 'Button1') Update() Else If WinExists('Update AVG', 'An error occurred when trying to connect') Then ControlClick('Update AVG', 'An error occurred when trying to connect', 'Button1') ElseIf WinExists('AVG Update', 'Your AVG program already has the latest updates installed') Then ControlClick('AVG Update', 'Your AVG program already has the latest updates installed', 'Button1') Exit EndIf EndIf Sleep(40) WEnd Func Update() $var = Ping('guru.grisoft.com') If $var Then Run(@Programfilesdir & '\Grisoft\AVG Free\avginet.exe') Else Exit EndIf EndFunc
  4. I haven't looked into it in detail, but I suspect the command line utility RemoveDrive works in conjunction with Windows' "Safely Remove Hardware" feature. However, there is a pregnant pause between the time that RemoveDrive reports success and the device is actually removed, per Windows. Any way you slice it, the script does enter the loop using either the 'Run' or 'RunWait' functions, but a straightforward 'Run' makes more sense. Thanks for that, Valuater. Edit: Actually, after testing (must remember: test...then post ), just the opposite is true. The script executes successfully using Run but does not enter the loop to produce the Message Box. RemoveDrive is a nifty utility and I applaud the author, but the readme file is basic and I do not understand its inner workings. It takes several seconds to execute. When used with this script, it's as though 'Run' and 'Runwait' functionality is reversed. Edit/Edit: I abandoned RemoveDrive after spotty results and went with UNMOUNT to eject the drive: Func Eject();eject the removable drive DriveGetLabel($TargetDrive1 & '\') If @error Then;check whether removable drive is attached and powered on MsgBox(16, 'Backup Operation', 'The removable drive is not connected to the system!', 5) Else;unmount the removable drive TraySetState (4);flash the tray icon RunWait(@ScriptDir & '\TOOLS\UNMOUNT -bal ' & $TargetDrive1, '', @SW_HIDE) While 1;confirm that drive has been unmounted DriveGetLabel($TargetDrive1 & '\') If @error Then;check whether removable drive is attached and powered on MsgBox(64, 'Backup Operation', 'You may now power off and replace the removable drive!', 5) EndIf ExitLoop Wend TraySetState (8);stop tray icon flashing EndIf EndFunc
  5. Yep, I just installed SciTE about a week ago (but have been fumbling around with AutoIt for years now) and have been using it as a simple text editor. Clearly, it's a heck of a lot more than that. On that subject, is there a simple way to select a block of text and decrease the indent, a la NotePad2? Easy enough to increase the indent with a TAB stroke, but I can't find anything on the menu that does the job. Did I miss it, as well? Also, where the heck is the "donate" button? EDIT: yeah, lower right corner. EDIT/EDIT: and thanks for those tips in the post below, real time savers and much appreciated.
  6. Sweet mother of god... it was just that easy. No, I clearly am not using SciTE right :"> Thank you, JdeB.
  7. I am encountering parsing issues when trying to include a variable in a command line. I am using a command line tool called RemoveDrive.exe to eject a removable drive from the machine. It would be great if the removable drive could be identified using a variable at the beginning of my longish script, and this tact works well throughout the script excepting the command line. This works... RunWait( @ScriptDir & "\TOOLS\RemoveDrive F:") ...as part of the eject function... Dim $RemovableDrive1 = "F:";<=== set location of removable drive _eject() Func _eject() DriveGetLabel($RemovableDrive1 & "\") If @error Then;check whether backup device is attached and powered on MsgBox(16, "Backup Operation", "The removable drive is not connected to the system!") Else;proceed with eject operation if backup device is attached and powered on RunWait( @ScriptDir & "\TOOLS\RemoveDrive F:", "", @SW_HIDE);<======= While 1 DriveGetLabel($RemovableDrive1 & "\") If @error Then;check whether backup device is attached and powered on MsgBox(64, "Backup Operation", "You may now power off and replace the removable drive!") EndIf ExitLoop Sleep(1000) Wend EndIf EndFunc ...but it would work better as something like this: RunWait( @ScriptDir & '"'\TOOLS\RemoveDrive & $RemovableDrive1'"') I have been searching for examples for a few days now with no success, and at this point I am just guessing at a solution that might include @ComSpec or some elaborate combination of quote marks with predictable, frustrating result. I need to get this pig working by Monday in the AM. Any help would be greatly appreciated.
  8. Wow, much better, MHz, thank you. I had considered writing directly to the registry in the early stages of this project and can't recall now why I abandoned the idea (probably because my effort failed), but now that I have a working--and improved--script on the table, perhaps I can make the necessary changes. It certainly makes good sense to take the direct route.
  9. MUCH thanks, and appreciated.
  10. OK, you must understand, I'm the guy who barely passed that college-level logic course and to this day can't tell you what it was about. So for me, what I have been able to create thus far is nothing short of miraculous. I have been using AutoIt for several years to automate software installations for friends and neighbors. Cool. Manipulating Windows with examples from the Help file and cut-and-paste snippets is one thing, trying to create something original is quite another. Purpose: I like to install a "dock" program created by the boys and girls at PUNK SOFTWARE. The dock is a convenient and fun way to organize shortcuts to frequently used programs. It has gone a long way toward helping me get over my MacOS envy and my reliance on an otherwise unwieldy Quick Launch toolbar. And everybody I know likes the dock, too, but we all have different software installation requirements. So it occured to me, couldn't the registry entries that comprise the dock, which are merged at the end of a typical install session, be generated dynamically based on the programs I have installed on a given machine? Original method: The dock files are extracted to the Program Files directory using WinRAR. A shorcut to the app is created and the registry settings merged using AutoIt: RunWait( @ScriptDir & "\RocketDock.exe") Sleep(100) FileCreateShortcut(@ProgramFilesDir & "\RocketDock\RocketDock.exe", @ProgramsCommonDir & "\Accessories\RocketDock.lnk") Sleep(100) RunWait ( @Comspec & ' /C regedit /S ' & @ScriptDir & '\settings.reg', '', @SW_HIDE ) New route: But I want to create the registry settings based on the actual programs installed on a given machine and not have to fiddle with post-install dock configuration (add this item, remove those items, etc.). Based on comments found on this board, it appeared to me that the best way to approach this was to create the entries and write them to an .ini file. A partially pre-populated .ini file is placed in the script directory: Windows Registry Editor Version 5.00 ;--------------------------------------------------------------------------------Remove OS-related Desktop Icons [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu] ;Internet Explorer "{871C5380-42A0-1069-A2EA-08002B30309D}"=dword:00000001 ;My Computer "{20D04FE0-3AEA-1069-A2D8-08002B30309D}"=dword:00000001 ;My Documents "{450D8FBA-AD25-11D0-98A8-0800361B1103}"=dword:00000001 ;My Network Places "{208D2C60-3AEA-1069-A2D7-08002B30309D}"=dword:00000001 ;Recycle Bin "{645FF040-5081-101B-9F08-00AA002F954E}"=dword:00000001 ;--------------------------------------------------------------------------------Set Dock to run at Startup [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run] "RocketDock"="C:\\Program Files\\RocketDock\\RocketDock.exe" ;--------------------------------------------------------------------------------Merge general preferences [HKEY_CURRENT_USER\Software\RocketDock-v0.9.4] "Version"="1.1.2" "CustomIconFolder"="" "Theme"="ProtoSky" "ThemeOpacity"="1" "FontSize"="-11" "FontFlags"="1" "FontName"="Tahoma" "FontColor"="16777215" "FontCharSet"="1" "FontOutlineColor"="0" "FontOutlineOpacity"="55" "FontShadowColor"="0" "FontShadowOpacity"="25" "IconMin"="32" "IconMax"="96" "ZoomWidth"="5" "ZoomTicks"="200" "AutoHideTicks"="101" "AutoHideDelay"="101" "ZoomFlat"="0" "IconQuality"="1" "LangID"="0" "HideLabels"="0" "LockIcons"="1" "AutoHide"="1" "zOrderMode"="0" "MouseActivate"="0" "UberIconFX"="0" "Monitor"="0" "Side"="0" "Offset"="0" "OptionsTabIndex"="1" ;--------------------------------------------------------------------------------Create the Dock [HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons] "0-FileName"="Icons\\Other\\zzMyPNGs\\WindowsExplorer.png" "0-Title"="Windows Explorer" "0-Command"="C:\\WINDOWS\\explorer.exe" "0-Arguments"="" "0-WorkingDirectory"="%HOMEDRIVE%%HOMEPATH%" "0-ShowCmd"="0" "0-IsSeparator"="0" "0-UseContext"="0" "0-DockletFile"="" "1-FileName"="Icons\\Orbs\\XPOrbs1\\Control_Panel_Orb.png" "1-Title"="Control Panel" "1-Command"="::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}" "1-Arguments"="" "1-WorkingDirectory"="" "1-ShowCmd"="0" "1-IsSeparator"="0" "1-UseContext"="0" "1-DockletFile"="" Each dock entry requires nine (9) separate values created in proper sequence. This AutoIt routine fills out the missing picture: #NoTrayIcon Dim $quote = '"', $increase1 = 1, $increase2 = 1, $increase3 = 1, $increase4 = 1, $increase5 = 1, $increase6 = 1, $increase7 = 1, $increase8 = 1, $increase9 = 1 ;--------------------------------------------------------------------------------Extract Dock files to Program Files directory Sleep(1500) RunWait( @ScriptDir & "\RocketDock.exe") ;--------------------------------------------------------------------------------Create shortcut under Accessories on Start Menu Sleep(1500) FileCreateShortcut(@ProgramFilesDir & "\RocketDock\RocketDock.exe", @ProgramsCommonDir & "\Accessories\RocketDock.lnk") ;--------------------------------------------------------------------------------Copy data.ini to Temp dir and begin building DirCreate( @WindowsDir & "\Temp\dock") Sleep(500) FileCopy(@ScriptDir & "\data.ini", @WindowsDir & "\Temp\dock\") Sleep(1500) If FileExists(@ProgramFilesDir & "\Common Files\AOL\Launch\aollaunch.exe") Then IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value1() & "-FileName" & $quote, '"Icons\\Orbs\\MiscOrbs3\\AIM_Orb_Blue.png"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value2() & "-Title" & $quote, '"AIM Triton"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value3() & "-Command" & $quote, '"C:\\Program Files\\Common Files\\AOL\\Launch\\aollaunch.exe"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value4() & "-Arguments" & $quote, '"/d suiteid=TritonGM /d locale=en-US ee://aol/imApp"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value5() & "-WorkingDirectory" & $quote, '"C:\\Program Files\\Common Files\\AOL\\Launch"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value6() & "-ShowCmd" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value7() & "-IsSeparator" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value8() & "-UseContext" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value9() & "-DockletFile" & $quote, '""') EndIf If FileExists(@ProgramFilesDir & "\Windows Media Player\wmplayer.exe") Then IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value1() & "-FileName" & $quote, '"Icons\\Orbs\\MiscOrbs2\\MP10_2.png"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value2() & "-Title" & $quote, '"WMP11"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value3() & "-Command" & $quote, '"C:\\Program Files\\Windows Media Player\\wmplayer.exe"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value4() & "-Arguments" & $quote, '"/prefetch:1"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value5() & "-WorkingDirectory" & $quote, '""') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value6() & "-ShowCmd" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value7() & "-IsSeparator" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value8() & "-UseContext" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value9() & "-DockletFile" & $quote, '""') EndIf If FileExists(@ProgramFilesDir & "\Notepad2\Notepad2.exe") Then IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value1() & "-FileName" & $quote, '"Icons\\Orbs\\MiscOrbs3\\Draw12.png"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value2() & "-Title" & $quote, '"Notepad2"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value3() & "-Command" & $quote, '"C:\\Program Files\\Notepad2\\Notepad2.exe"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value4() & "-Arguments" & $quote, '""') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value5() & "-WorkingDirectory" & $quote, '"C:\\Program Files\\Notepad2"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value6() & "-ShowCmd" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value7() & "-IsSeparator" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value8() & "-UseContext" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value9() & "-DockletFile" & $quote, '""') EndIf ;yadayadayada - more entries ending with Recycle Bin IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value1() & "-FileName" & $quote, '"Icons\\Other\\zzMyPNGs\\Recycle Bin Empty.png"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value2() & "-Title" & $quote, '"Recycle Bin"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value3() & "-Command" & $quote, '"::{645FF040-5081-101B-9F08-00AA002F954E}"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value4() & "-Arguments" & $quote, '""') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value5() & "-WorkingDirectory" & $quote, '""') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value6() & "-ShowCmd" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value7() & "-IsSeparator" & $quote, '"0"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value8() & "-UseContext" & $quote, '"1"') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", $quote & _value9() & "-DockletFile" & $quote, '""') IniWrite(@WindowsDir & "\Temp\dock\data.ini", "HKEY_CURRENT_USER\Software\RocketDock-v0.9.4\Icons", '"count"', $quote & _count() & $quote) Sleep(1500) ;--------------------------------------------------------------------------------Create the Registry file from the .ini file FileMove(@WindowsDir & "\Temp\dock\data.ini", @WindowsDir & "\Temp\dock\data.reg") Sleep(1500) ;--------------------------------------------------------------------------------Merge the Registry file RunWait ( @Comspec & ' /C regedit /S ' & @WindowsDir & "\Temp\dock\data.reg", '', @SW_HIDE ) Sleep(1500) ;--------------------------------------------------------------------------------Remove temporary files DirRemove( @WindowsDir & "\Temp\dock", 1) ;--------------------------------------------------------------------------------Remove Office 2003 Icons from Desktop if they exist FileDelete( @DesktopDir & "\Outlook.lnk") Sleep(500) FileDelete( @DesktopDir & "\Word.lnk") Sleep(500) FileDelete( @DesktopDir & "\Excel.lnk") Sleep(500) FileDelete( @DesktopDir & "\PowerPoint.lnk") Sleep(500) FileDelete( @DesktopDir & "\Publisher.lnk") Sleep(500) FileDelete( @DesktopCommonDir & "\Outlook.lnk") Sleep(500) FileDelete( @DesktopCommonDir & "\Word.lnk") Sleep(500) FileDelete( @DesktopCommonDir & "\Excel.lnk") Sleep(500) FileDelete( @DesktopCommonDir & "\PowerPoint.lnk") Sleep(500) FileDelete( @DesktopCommonDir & "\Publisher.lnk") Sleep(1500) Exit Func _value1() $increase1 = $increase1 + 1 Return $increase1 EndFunc Func _value2() $increase2 = $increase2 + 1 Return $increase2 EndFunc Func _value3() $increase3 = $increase3 + 1 Return $increase3 EndFunc Func _value4() $increase4 = $increase4 + 1 Return $increase4 EndFunc Func _value5() $increase5 = $increase5 + 1 Return $increase5 EndFunc Func _value6() $increase6 = $increase6 + 1 Return $increase6 EndFunc Func _value7() $increase7 = $increase7 + 1 Return $increase7 EndFunc Func _value8() $increase8 = $increase8 + 1 Return $increase8 EndFunc Func _value9() $increase9 = $increase9 + 1 Return $increase9 EndFunc Func _count() $increase1 = $increase1 + 1 Return $increase1 EndFunc ;EOF Great! The entries are appended to the information that already exists in data.ini and the count is correct. In fact, the .ini file looks like a mirror image of an actual registry file ready to be merged as part of the install routine, quote marks and all. So "moving" the .ini file has the effect of renaming it as a .reg file. From there it is merged! If anyone has any comments regarding cleaning up the code, I'm all ears, as my experience with declarations and loops extends only to love of the opposite sex and breakfast cereal. And my many thanks to everyone who has contributed to the AutoIt project and offered comments on this board and other boards (MHz, you are an inspiration).
  11. Thanks as well from this newbie, Bill. I will most definitely make use of this in our elementary school environment. You, sir, are a scholar and a gentleman and we thank you.
×
×
  • Create New...