Jump to content

zorphnog

Member
  • Posts

    427
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    United States

Everything posted by zorphnog

  1. @Jazkal: What did you do to get the DL380-G5 network support to work? I've tried "peimg /inf=bxnd.inf mount\Windows". I've tried adding bxnd.inf to the windows\inf folder and the sys files to the windows\system32\drivers folder. Tried renaming the inf to netbxnd.inf. No luck what so ever.
  2. Just because you can map a network drive does not mean that WinPE is seeing your hard drive. What I was wondering is if you can access the C: or whatever drive on your hard disk once you get to a command prompt. PE is running from RAM-disk once you load it, so you may not necessarily be able to access your hard disk.
  3. The only solutions I can think of involve amending the code. I can look at it some more later on today, but i would suggest making a feature request as well.
  4. Perhaps I am not understanding you correctly, but it sounds like they are working the way they should be. If "A" is dependent of "B", then "B" must be selected in order to have the option to select "A". So if "B" is excluded by some other app, say "C", then there is a chain effect that causes "A" to be excluded as well. Basically, by having "C" exclude "B" there is an inherited property of "C" excluding "A" because of the dependent relationship of "A" to "B". Hope this isn't too confusing.
  5. I've never had a problem with it. Ghost 8.2 and 11 are fully functional in my PE 2.0 boot. Is it possible that Ghost and/or PE is not seeing your drives? Because that would cause a gray out.
  6. Never thought of doing it that way. Thats much cleaner.
  7. Try adding this after you format: bootsect /nt52 c: /force
  8. Make sure you have all the latest updates for XP. Especially SP2 (its not clear whether you have that or not). If you are up to date then it might be a WMI configuration issue. I'm not sure if the extractor uses any WMI objects.
  9. What exactly do you want it to do?
  10. Just in case you're interested, here is some of the code from my solution. Note that it is in an HTA, so some of the vbscript calls are a little bit different as far as syntax goes. Oh yeah, just ignore the html stuff, its just informational messages to the user. I should also mention that the needHAL variable is set to 'yes' if acpipic is detected. The main stuff is in the handleHAL Sub. '***************************************************************************************** '* restoreBuild '* starts the ghost restoration process for the selected build and method '***************************************************************************************** Sub restoreBuild Dim filename, taskCmd strTemp = "<h2>Restoring build...</h2>" general.InnerHTML = strTemp filename = cdrom & "\" & buildFilename If not objFso.FileExists(filename) Then strTemp = "<h2>ERROR: File not found " & filename & "</h2><ul>Ensure that <u><b>DISK 1</b></u> is loaded in the CD-ROM drive and click the " &_ "<i>Retry</i> button." document.buttonsForm.nextButton.value = "<u>R</u>etry" document.buttonsForm.nextButton.disabled = false document.buttonsForm.cancelButton.disabled = false general.InnerHTML = strTemp Else Select Case curMethod Case "Initial" taskCmd = "%comspec% /c ghost32.exe -sure -fdsp -clone,mode=load,src=" & filename & ",dst=1,szeL -fx > \ghost.log" objShell.Run taskCmd,0,true finishBuild Case "Windows" taskCmd = "%comspec% /c ghost32.exe -sure -fdsp -clone,mode=prestore,src=" & filename & ":1,dst=1:1,sze1=V -fx > \ghost.log" objShell.Run taskCmd,0,true finishBuild End Select End If End Sub '***************************************************************************************** '* finishBuild '* handles errors that occur during ghost and handles successful restorations '***************************************************************************************** Sub finishBuild Dim result, logFile, count Set logFile = objFso.GetFile("\ghost.log") If logFile.Size <> "0" Then Set logFile = objFso.OpenTextFile("\ghost.log") count = 1 Do While logFile.AtEndOfStream <> true result = result & count & "> " Do While logFile.AtEndOfLine <> true or logFile.AtEndOfStream <> true result = result & logFile.Read(1) Loop result = result & "<BR>" general.InnerHTML = result count = count + 1 Loop logFile.Close strTemp = "<CENTER><H1>FAILED</H1><DIV style='color:red;text-align:left'>An attempt to restore the system failed with the " &_ "following error message:<BR><BR><DIV style='position:absolute;border-style:solid;border-color:black;left:5%;" &_ "width:95%;color:black;padding:5%;border-width:1;font-family:terminal;font-size:10pt;overflow:auto'>" & result &_ "</DIV></DIV></CENTER>" warning.InnerHTML = strTemp warning.style.top = "10%" warning.style.left = "10%" warning.style.width = "80%" warning.style.height = "75%" document.buttonsForm.cancelButton.value = "E<u>x</u>it" document.buttonsForm.cancelButton.accesskey = "x" document.buttonsForm.cancelButton.disabled = false warning.style.visibility = "visible" Else strTemp = "<h2>Complete!</h2><ul><font color=orange>" & result & "</font>The restoration process has finished without any " &_ "errors." document.buttonsForm.cancelButton.value = "E<u>x</u>it" document.buttonsForm.cancelButton.accesskey = "x" document.buttonsForm.cancelButton.disabled = false general.InnerHTML = strTemp warning.style.visibility = "visible" If needHAL = "yes" Then handleHAL Else rebootMe End If End If End Sub '***************************************************************************************** '* handleHAL '* prepares the system for use with the correct HAL '***************************************************************************************** Sub handleHAL Dim sysFolder, halFolder, strDest, inFile, outFile, line, words, lword sysFolder = "C:\WINDOWS\System32" halFolder = "X:\HAL" strTemp = "<CENTER><H1>Updating HAL...</H1></CENTER>" warning.InnerHTML = strTemp objShell.Run "%comspec% /c diskpart /s X:\Windows\system32\probeParts.txt",0,true Select Case strHAL Case "acpipic" If objFso.FolderExists(sysFolder) Then strTemp = halFolder & "\halacpi.dll" strDest = sysFolder & "\hal.dll" objFso.CopyFile strTemp,strDest,true strTemp = halFolder & "\ntoskrnl.exe" strDest = sysFolder & "\ntoskrnl.exe" objFso.CopyFile strTemp,strDest,true 'Remove UpdateUPHal line from sysprep.inf strDest = "C:\sysprep\sysprep.inf" If objFso.FileExists(strDest) Then Set inFile = objFso.OpenTextFile(strDest,1,true) Set outFile = objFso.CreateTextFile(strDest & ".tmp",true) Do While inFile.AtEndOfStream <> true line = inFile.ReadLine If line <> "" Then words = split(line,"=") lword = trim(words(0)) If Lcase(lword) <> "updateuphal" Then outFile.WriteLine(line) End If Else outFile.WriteBlankLines(1) End If Loop inFile.Close outFile.Close objFso.DeleteFile strDest,true objFso.MoveFile strDest & ".tmp", strDest End If rebootMe Else strTemp = "<CENTER><H1>FAILED</H1><DIV style='color:red;text-align:left'>An attempt to update your system HAL has " &_ "failed due to an inaccessible system drive.</DIV></CENTER>" warning.InnerHTML = strTemp warning.style.top = "10%" warning.style.left = "10%" warning.style.width = "80%" warning.style.height = "75%" document.buttonsForm.cancelButton.value = "E<u>x</u>it" document.buttonsForm.cancelButton.accesskey = "x" document.buttonsForm.cancelButton.disabled = false End If Case Else rebootMe End Select End Sub '***************************************************************************************** '* rebootMe '* opens the CD tray, delays 8 seconds and reboots '***************************************************************************************** Sub rebootMe 'Open CD tray strTemp = "<center><h1>Ejecting Media...</h1></center>" warning.InnerHTML = strTemp cdrom = cdrom & "\" CreateObject("Shell.Application").Namespace(17).ParseName(cdrom).InvokeVerb("Eject") 'Give delay to allow disk to eject objShell.Run "%comspec% /c cscript X:\Windows\system32\timer.vbs",0,true 'Reboot the system strTemp = "<center><h1>Rebooting System...</h1></center>" warning.InnerHTML = strTemp objShell.Run "%comspec% /c wpeutil reboot",0,false End Sub
  11. I've tried doing it without ntoskrnl.exe and the issue will persist. The original postings I found about the issue said to replace hal.dll, ntoskrnl.exe and ntkrnlpa.exe. I've found that only hal.dll and ntoskrnl.exe need to be replaced, but you're welcome to try it out as well.
  12. Just to shed some light on the situation. I use a T60 as my baseline and originally experienced the black screen issue with T40's and T42's as well as some older panasonics. Within PE I have only seen that registry value return acpipic or acpiapic. The only time I experience the problem is when a computer shows up as acpipic.
  13. I can assure you this is not a mass storage related driver issue. The problem lies with M$'s implementation of sysprep. Using the UpdateUPHAL will only update one type of HAL. Essentially, UpdateUPHAL replaces hal.dll with halaacpi.dll. If you have a system that uses a acpipic architecture, you must load the halacpi.dll file. Sysprep sees that acpipic is a UP type architecture and replaces hal.dll with halaacpi.dll instead of the proper dll. I experienced the exact same problem you are experiencing and this is the solution i used. Capture process: 1. Created my baseline system on a ACPIAPIC_MP architecture system. 2. Sysprepped with UpdateUPHAL entry. 3. Imaged with ghost. Apply process: 1. Restore ghost image. 2. If the system is a ACPIPIC HAL then I remove the UpdateUPHAL entry from the sysprep.inf file on the restored disk, and I replace the C:\Windows\system32\hal.dll file on the restored disk with halacpi.dll (found on XP or whatever system you are using installation disk). I replace C:\Windows\system32\ntoskrnl.exe with the ntoskrnl.exe found on the installation disk. 3. Reboot and start the Windows mini-setup process. If you replace the hal.dll and ntoskrnl.exe and do not remove the UpdateUPHAL from the sysprep.inf file, the system will go through the mini-setup process until it is rebooted and the blank screen problem will happen again. This is because the mini-setup process will replace hal.dll with halaacpi.dll as I mentioned before, and why I say I am positive this is a HAL issue and not a mass storage driver issue. The halacpi.dll and ntoskrnl.exe files will be compressed on the installation disk, showing up as halacpi.dl_ and ntoskrnl.ex_. You can use the expand command to extract them.
  14. Try adding the WMI package. If that doesn't work, add WMI and XML. Should just be WMI though. peimg /install=*WMI* %winpe%\mount\Windows By the way, if you have any machines that are acpipic you will need to replace hal.dll and ntoskrnl.exe. The Windows boot screen stalls if you don't or you just get a blank screen. Oh and the master image should be taken from a ACPIAPIC_MP if you have one. The sysprep documentation is a little tricky in the wording of UpdateHAL and UpdateUPHAL. You can go from a MP to a UP, but not UP to MP. Just a tip. It took me a while to get all of our hardware platforms to work with one image. Good luck.
  15. PXE has to be on a DHCP server. You can use RIS or PXElinux. I use PXElinux you can find it information about it here.
  16. Here is what I've come up with for my ghost restore disks that use a WinPE boot. I have a HTA menu solution so its in vbscript. 'Globals Dim objShell, objFso, cdrom Set objShell = CreateObject("WScript.Shell") Set objFso = CreateObject("Scripting.FileSystemObject") Sub findCD Dim collSettings, objItem, lword 'determine cd-rom drive letter objShell.Run "%comspec% /c diskpart /s X:\Windows\system32\probeDrives.txt",0,true Set collSettings = objFso.Drives For Each objItem in collSettings If objItem.DriveType = 4 Then lword = objItem.DriveLetter If objFso.FileExists(lword & ":\sources\boot.wim") Then cdrom = lword & ":" Exit For End If End If Next 'check whether cdrom was set If cdrom = "" Then MsgBox "Could not determine CD-ROM drive letter",16,"Error" End If End Sub probeDrives.txt: rescan exit I've found that if you have an external CD/DVD drive it doesn't always pick up the drive, so the probeDrives diskpart script ensures that all drives are accounted for before you look for the drive. boot.wim is the jellybean I look for on the drive since I always use a PE boot.
  17. Well the way I would do it is either through WMI or some file parsing. I don't know exactly what to query with WMI off the top of my head, so I'll explain the file parsing. Your PE HDD should have a unique disk ID that never changes. So I would use diskpart to get the device id of disk 0. Something like, diskpart /s gethdd0id.txt > output.txt: select disk 0 detail disk Parse through output.txt to see if the disk id matches your PE HDD. If it does then the local hdd is disk 1, if not its disk 0. Then create a new diskpart script based off your results from the parsing of output.txt.
  18. Check the value of this registry entry while WPI is not running: HKEY_CURRENT_USER\SOFTWARE\WPI\ResumeInstall. It should be zero. I think your system believes it is resuming after a reboot for some reason. The only way you can receive this rb_config.js error is if you are resuming an install, otherwise it should create rb_config.js.
  19. So you finally gave in to more command lines. I've always thought that if it takes that many command lines you might as well write a script for it, but I guess the masses think otherwise. Good work none the less!
  20. Are you rebooting during the WPI installation? The rb_config.js file should only be read after a reboot during the WPI process. If you are not, my guess is that your registry still contains reboot values for WPI.
  21. What version of diskpart are you using? The diskpart that comes with XP (5.1.3565) supports scripts.
  22. The best way to accomplish this is to create a diskpart script on the fly with your variables. The diskpart script is just a simple text file with a diskpart command on each line. Apply it to the system using: diskpart /s scriptfile.txt
  23. I use PXElinux and it just seems easier to me. I can have my floppy, PE 2.0, and PE 2005 boots all in one place with a simple menu to choose which image to boot. Just my 2 cents.
  24. If you download it from softpedia in the link I provided above there is a file called setres.txt in the zip file. It fully explains how to use it. This is directly from that file:
  25. How long is very long? In my experience it usually takes 30 sec to 1 min.
×
×
  • Create New...