Jump to content

PaulIA

Member
  • Posts

    77
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    United States

Everything posted by PaulIA

  1. Your welcome I may actually change my UA routine to use this as well. Wish I'd figured this out last week!
  2. You mean something like this: ; ------------------------------------------------------------------------------------------------- ; ; AutoIt Version: 3.1.0 ; Author: PaulIA ; ; Script Function: Download latest Intelligent Updater from Symantec ; ; ------------------------------------------------------------------------------------------------- ; Initialize status messages SplashTextOn("[Status]", "Initializing...", 500, 60, -1, @DesktopHeight/6, 1, "", 12, 600) ; As it turns out, Symantec has a file called md5-hash.txt on their web site that contains all of ; the MD5 hash information for the files on their site. I could care less about the hash info, but ; the file has a list of all of the files on the FTP site, which is what I'm after. gpDownload("md5-hash.txt", "md5-hash.txt") ; Open hash file $File = FileOpen(@ScriptDir & "\md5-hash.txt", 0) if $File = -1 then MsgBox(16 + 4096, "Error", "Unable to open hash file") Exit endif ; Parse hash file $FileName = "" $Last = "" while 1 $Line = FileReadLine($File) if @error = -1 then ExitLoop ; Check for comment if StringMid($Line, 1, 1) = "#" then ContinueLoop ; Strip MD5 hash value $N = StringInStr($Line, " ") if $N = 0 then ContinueLoop $Line = StringMid($Line, $N + 1) ; Make sure the file starts with the current year if StringMid($Line, 1, 4) <> @Year then ContinueLoop ; Make sure we're looking at the x86 installer if StringInStr($Line, "-x86.exe") = 0 then ContinueLoop ; Extract date and compare to Last $Date = StringMid($Line, 1, 12) if $Date < $Last then ContinueLoop $FileName = StringStripWS($Line, 3) $Last = $Date wend ; Close hash file FileClose($File) ; Failsafe check if $FileName = "" then MsgBox(16 + 4096, "Error", "Unable to parse hash file") Exit endif ; Get latest intelligent updater. You can change the second $FileName ; to a constant value if you want to be able to use the same file name ; in your UA script. I left the file name as it is on the FTP site for ; testing purposes. gpDownload($FileName, $FileName) ; Hide status messages SplashOff() Exit ; ------------------------------------------------------------------------------------------------- ; gpDownload : Download a file from Symantec ; ------------------------------------------------------------------------------------------------- Func gpDownload($FTP, $Local) ; Build URL $URL = "ftp://ftp.symantec.com/AVDEFS/norton_antivirus_corp/" & $FTP ; Download file with feedback InetGet($URL, @ScriptDir & "\" & $Local, 1, 1) while @InetGetActive ControlSetText("[Status]", "", "Static1", @CR & "Downloading: " & @InetGetBytesRead) Sleep(250) wend if @InetGetBytesRead = -1 then MsgBox(16 + 4096, "Error", "Unable to download file from Symantec") Exit endif EndFunc Enjoy!
  3. Start with this: Opt("TrayIconDebug", 1) Run("Nitro_PDF_Pro.exe /s") WinWaitActive("NitroPDF", "") $CLVItem = ControlListView("NitroPDF", "", "SysListView321", "FindItem", "Nitro_PDF_Pro.exe") if @error = 1 then MsgBox(16, "Error", "$CLVItem failed"); endif ControlListView("NitroPDF", "", "SysListView321", "SelectClear") ControlListView("NitroPDF", "", "SysListView321", "Select" , $CLVItem) WinWaitActive("Nitro PDF Professional - InstallShield Wizard", "The InstallShield® Wizard wi") ControlClick ("Nitro PDF Professional - InstallShield Wizard", "The InstallShield® Wizard wi", "Button1") WinWaitActive("Nitro PDF Professional - InstallShield Wizard", "&Organization:") ControlClick ("Nitro PDF Professional - InstallShield Wizard", "&Organization:", "Button5") WinWaitActive("Nitro PDF Professional - InstallShield Wizard", "I &accept the terms in the lic") ControlClick ("Nitro PDF Professional - InstallShield Wizard", "I &accept the terms in the lic", "Button3") ControlClick ("Nitro PDF Professional - InstallShield Wizard", "I &accept the terms in the lic", "Button5") WinWaitActive("Nitro PDF Professional - InstallShield Wizard", "&Complete") ControlClick ("Nitro PDF Professional - InstallShield Wizard", "&Complete", "Button5") WinWaitActive ("Nitro PDF Professional - InstallShield Wizard", "Add Nitro PDF to the Desktop.") ControlCommand("Nitro PDF Professional - InstallShield Wizard", "Add Nitro PDF to the Desktop.", "Button4", "UnCheck", "") ControlClick ("Nitro PDF Professional - InstallShield Wizard", "Add Nitro PDF to the Desktop.", "Button1") WinWaitActive("Nitro PDF Professional - InstallShield Wizard", "NewBinary1") ControlClick ("Nitro PDF Professional - InstallShield Wizard", "NewBinary1", "Button2") WinWaitActive("Nitro PDF Professional - InstallShield Wizard", "The InstallShield Wizard has s") ControlClick ("Nitro PDF Professional - InstallShield Wizard", "The InstallShield Wizard has s", "Button1") WinWaitActive("Nitro PDF", "Try Out") ControlClick ("Nitro PDF" ,"Try Out", "Afx:10000000:81") Exit I haven't run this because I don't have access to Nitro PDF, but it should be close. Now, if the script doesn't finish (the AutoIt icon is still in your system tray), hover your cursor over the AutoIt icon (the one in your system tray) and it will popup a box telling you what line on the above script it is on. From there, you can modify the script to correct the problem.
  4. A few of suggestions: 1) Use the Opt keyword to turn on debugging. Then you can put the cursor over the icon in the system tray and it will tell you what line the script is executing. 2) WinWait just waits for the window to appear. Use WinWaitActive to wait for the window to appear and become the active window. You can probably eliminate all of your sleep statements if you do this. If you need to make a window active after it appears (say some other window has grabbed the focus just after the window pops up), you can do this: WinWait("Nitro PDF Professional - InstallShield Wizard","The InstallShield® Wizard wi") WinActivate("Nitro PDF Professional - InstallShield Wizard","The InstallShield® Wizard wi") This will wait for the window to become visible and then make it the active window. My bet is this is where your problem is. 3) Get rid of all those Sleep statements. Every machine runs differently and the time for a window to appear on one machine is different on another machine. Use the technique above. 4) You need to put some error checking after: $CLVItem = ControlListView("NitroPDF","","SysListView321","FindItem","Nitro_PDF_Pro.exe") You're not checking $CLVItem or @error to see if the function succeeded before using $CLVItem in further statements. Hope this helps
  5. I've been trying to get rid of that pesky window for two weeks now. Can't help you with the resolution problem, but thanks for the AutoConfirm tip!
  6. After wading through a bunch of Google pages, it appears that bit 2 does control the hot plug icon in the system tray. This is the message that you get when you remove a piece of hardware before Windows thinks you should. That leaves bits 1 and 4 to be defined as well as determining whether the upper bits have any function. Anybody?
  7. @mazin Thanks for the link to the other thread. Nice guide by the way and I would highly recommend anybody having trouble with SAV take a look at it. I may have missed it (haven't had my morning coffee yet ) but if I'm trying to create a CD that I don't have to update prior to using it, how do I get the most recent copy of the intelligent updater? Wouldn't it have a different name in 6 months and I'd have to run LiveUpdate to get my definitions up to date? That's what I was after with trying to get the vpdn_lu to work. Oh, and the C: tip, I did the same thing in my scripts . Editting now...
  8. I was looking for a registry tweak to enable the volume icon in the system tray and found the following: ; ; Volume Control : 0000000B = Hide ; : 0000000F = Show ; [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\SysTray] "Services"=dword: 0000000F So it appears that the third bit controls the volume icon. I also saw a couple of posts on the forum referencing this key that indicated that the second bit contols the hot plug icon. Just out of curiosity, can anyone confirm what bits 1, 2 and 4 do? I've toggled them on/off and can't seem to see any changes to my system. Also, are the first 4 bits the only ones that do anything? Thanks!
  9. @elwood: The code box messed up the tweak with HTML formatting. I fixed it by putting a space right after the "hex:". Also, you need to apply this tweak when the desktop is loaded, so probably in your cleanup batch file or using the Run key. Let me know if you still can't get this to work...
  10. Same here, but I get rid of those awful long file names: KB907417.exe is much easier to type than office2003-KB907417-FullFile-ENU.exe
  11. For the NTFS issue, you could use the FileSystem key under the [unattended] section of your WinNT.sif file but I would use the Convert command line tool. Consulting Ref.chm: FileSystem Value: ConvertNTFS | LeaveAlone Specifies whether the primary partition is converted to NTFS or is left alone. This entry is provided for backward compatibility. If your manufacturing processes require that the hard disk first be formatted as FAT32, use the Oformat tool to create a FAT32 volume with clusters that are aligned in an optimal way for later conversion to the NTFS file system. Then use the Convert command-line tool to convert the file system to NTFS. You can also convert the partition during text-mode Setup by setting the FileSystem entry equal to ConvertNTFS. However, the hard drive will have better performance if you use the Convert command-line tool rather than the FileSystem entry. For the time zone, use the TimeZone key under the [GuiUnattended] section of your WinNT.sif file. For example, here is an example from my WinNT.sif file: [GuiUnattended] AdminPassword=xxxxxxxx AutoLogon=Yes OEMSkipRegional=1 OemSkipWelcome=1 TimeZone=20 TimeZone=20 is the setting for Central Time. You can find settings for other time zones by looking in the Ref.chm file. Hope this helps.
  12. Sounds like your script is still waiting for something. Maybe your in a loop somewhere waiting for something to happen or your using one of the WinWaitxxx functions. Without seeing your script, it's going to be hard to help you
  13. Here is the tweak that I have been using to set Explorer to Iconic view: ; ; Explorer View : Iconic ; [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams] "Settings"=hex: 09,00,00,00,01,00,00,00,01,00,00,00,E0,D0,57,00,73,35,CF,11,AE,69,08,00,2B,2E,12,62,04,00,00,00,04,0 0,00,00,43,00,00,00 I haven't found one for sorting by type, but I need it too if you find it I know what you mean about the Google thing. Some people are a lot more familar with using Google than I am. When I use Google, I always get the "Results 1 - 10 of about 117,000,000"
  14. Not sure if this will be of any use to anybody, but thought I would share it just in case. If you followed the above posts, you'll see that I was trying to get Outlook to use a backup copy of Outlook.pst. The problem is, it creates it's own copy the first time you log in and configure a default profile. After a few long nights, I just decided to let it do it's thing and then replace the Outlook.pst file that it created with my backup copy. I've created an AutoIt script that can be run during my unattended installed that will fire up Outlook and step through creating a default POP3 account and thereby create the default Outlook.pst file. Modify the INI file for your particular profile setup. You can also modify the script itself to create an Exchange account if you need to. You need to run this script in your cleanup section after the desktop is loaded (the Run command works well for this). After you run this script, just copy your backup Outlook.pst over the one Outlook creates. Comments/suggestions are always welcome but remember that I only started using AutoIt last week. Outlook.zip
  15. @Dave: Thanks for the reply. I finally got my problem solved thanks to mazin's help. I was trying to run the vpdn_lu.exe from the RunOnce phase of the install. After much head banging (and a few beers), I discovered as you did that it appears that the network is not loaded at this point in the install (or maybe it's just some other resource that vpdn_lu wants/needs). However, I too found out that if I take the batch file and move it to the Run or cleanup section of my install, it works just fine. What I was trying to do is create a UA that I could pull out in 6 months and run without having to update any of the files. However, I'm going to put your snippet of code (about the intelligent updater) in my personal archives, because you never know when the day will come that you'll need something like this. Thanks for the input!
  16. I just finished researching this problem a couple of days ago. You might want to take a look at this thread for more information on the problem: http://www.msfn.org/board/index.php?showtopic=75673 Look at post #14 for your answer. Based on this, I just slipstream SP2 and then apply the other patches during the UA install.
  17. If you still want to use WinRAR, I'd seriously suggest taking a look at mazin's thread. It's the same thing I was trying to explain, but he's done a much better job at describing it.
  18. Take at look at this thread: http://www.msfn.org/board/index.php?showtopic=81938 It discusses the various tools out there that will capture both registry and file changes. My personal favorite is RegShot as it's easy to use and will capture both registry and file changes.
  19. I'm not 100% sure, but I think that when Windows parses the file, it may not object to finding quotes around certain things where they aren't required. However, I've stuck with the examples from the Ref.chm file and not had any problems. Here is any example of what my WinNT.sif file looks like: [Branding] BrandIEUsingUnattended=Yes [Data] AutomaticUpdates=Yes AutoPartition=1 MsDosInitiated=0 UnattendedInstall=Yes [GuiUnattended] AdminPassword=xxxxxxxx AutoLogon=Yes OEMSkipRegional=1 OemSkipWelcome=1 TimeZone=20 [Identification] JoinWorkgroup=WORKGROUP [Networking] InstallDefaultComponents=Yes [Proxy] HTTP_Proxy_Server=localhost:8080 Proxy_Enable=1 Proxy_Override=localhost Use_Same_Proxy=1 [Unattended] DisableDynamicUpdates=No DriverSigningPolicy=Ignore OemPreinstall=Yes OemSkipEula=Yes Repartition=Yes TargetPath=\WINDOWS UnattendMode=FullUnattended UnattendSwitch=Yes WaitForReboot=No [UserData] ProductID=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx FullName="John Doe" OrgName="ACME Corporation" ComputerName=ACME1 As you can see, the only place where I used quotes was the UserData section and only because I was using a string with white space in it. I think it's one of those things that, if it works and you like it like that way, go with it.
  20. You are absolutely correct!!! Not only does this solve my Symantec problem, but also clears up a few other "glitches" that I had im my UA installation scripts. It appears that I have been trying to execute some installations in RunOnceEx that needed to be moved later on in the boot phase and putting them in the Run key works just fine. I'm guessing because, with RunOnceEx, the desktop and network aren't loaded yet? Need to do some more research on that... Thanks for the help. Wonder what it would cost to ship you a case of San Miguel?
  21. Thanks for the thought, but I'm guessing that I would run onto the same problem I had when I tried to execute this using the RunOnceEx key. What I mean is, I think it works now because I've placed the batch file in the Startup folder, which gets executed later in the boot phase than it would if I put it in RunOnceEx. I'm guessing that the Run key probably gets executed around the same time as the RunOnceEx key. Or am I completely wrong about this?
  22. I got a little further with the update problem. It seems if I take the batch file and put it in the Startup folder (say, All Users or Default, doesn't seem to matter), it works just fine. The only difference that I can see, is that the contents of the Startup folder are executed at a later time in the boot phase. So was my problem trying to execute the batch file before the network was loaded or is there something else that I'm missing? I can live with the batch file being in the Startup folder if that's the way it needs to be (it can delete itself after it's done it's thing), but it just seems odd to me. Dark beer... Never on an empty stomach!
  23. After 6 or 7, I can't tell the difference...
  24. Setting RunLiveUpdate=1 didn't seem to make any difference. Good thought though. But I did take your advice about the beer. I still have the same problem, I just don't care about it as much
×
×
  • Create New...