Jump to content

Welcome to MSFN Forum
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account


Photo

Vista Guide to Integrating Updates and Hotfixes

- - - - -

  • Please log in to reply
30 replies to this topic

#1
spacesurfer

spacesurfer

    Pharmassist

  • Patrons
  • 1,668 posts
  • OS:Windows 7 x86
  • Country: Country Flag
How to Integrate Vista Updates

This guide shows you how to integrate Vista updates to the installation source, which is install.wim. Much of the credit for this guide goes to FireGeier. His site contains a lot of useful visual guides for automating Vista installations. It is found here: FireGeier's Unattended Vista Guide.

Although others have used peimg.exe, official documentation from Microsoft's WAIK is lacking. Therefore, methods described here use Package Manager. The only place peimg.exe is used in this guide is to create a text file that lists the packages that were integrated.

Requirements
  • WAIK tools (imagex.exe, pkgmgr.exe, and supporting files); you should leave these files in the install folder (%programfiles%\Windows AIK\) and not copy them to another location. Run them from their original location so all dll's that are necessary are there.
  • Vista DVD
  • ISO extractor
  • Although Windows XP is not required and you can do this in Vista, I had trouble mounting images in Vista. Therefore, I was working in Windows XP.
Preparation
  • Create a folder called 'Vista_Work'. You can call it anything you want. I have assigned it a variable %vpath% in my script so I'll refer to it as %vpath% from now on.
  • Create folders in %vpath% called Mount, Sandbox, Updates, and Current_ISO. I've assigned them the variables %vmount%, %vsandbox%, and %vupdates%, respectively.
Procedure
  • Boot to the OS that has WAIK installed. If you installed it in Vista, you'll need to run these scripts in elevated mode.
  • Extract install.wim from Vista installation DVD to %vpath%.
  • Create script file called set_variables.cmd, integrate.cmd and expand.cmd in %vpath% from the following code or download them from the links:
    • The script set_variables.cmd allows you to skip editing the scripts with your working folders path (%vpath%). They are automatically assigned based on the current working folder.
    • You may have to change the tokens value in expand.cmd, if you are not using the English version. Change tokens=5 to tokens=4 if that's the case. If you are unsure, leave it and continue, as no damage is done. Only your Integrate.xml will not be properly formed. You'll determine if it is improperly formed in a later step.
    Downloads:
    Attached File  set_variables.cmd   225bytes   353 downloads Attached File  Expand.cmd   2.7KB   288 downloads Attached File  Integrate.cmd   2.67KB   294 downloads
    set_variables.com
    :: As long as all your folders are within one folder, you shouldn't have to change
    :: these paths since this batch file will assign the paths based on where 
    :: set_variables.cmd is located. This script is called by expand.cmd & integrate.cmd
    :: Also, the Windows AIK folders are added to the path so you can run imagex, expand,
    :: and pkgmgr without pointing to those paths.
    @echo off
    CD /d %~dp0
    SET vpath=%CD%
    SET vmount=%vpath%\Mount
    SET vupdates=%vpath%\Updates
    SET vsandbox=%vpath%\Sandbox
    SET path=%path%;C:\Program Files\Windows AIK\Tools\x86;C:\Program Files\Windows AIK\Tools\Servicing

    expand.cmd (courtesy of FireGeier)
    @echo off
    TITLE Vista Updates Expansion Process
    echo.
    
    :: As long as you are this script, integrate.cmd and expand.cmd are in the
    :: same folder, you will not have ot change your paths.
    
    CD /d %~dp0
    call set_variables.cmd
    echo.
    echo Your vpath is %vpath%. If this is correct, continue.
    echo.
    pause
    
    :: Create an temporary to store expanded cab and xml files from msu files.
    
    IF NOT EXIST "%vupdates%\Temp" (MKDIR "%VUpdates%\Temp")
    DEL "%vupdates%\Temp\*.*" /q
    
    PUSHD "%vupdates%"
    FOR %%i IN (*) DO (Call :Extract %%i)
    
    :: Check for older file versions created by this batch and delete if exists.
    
    IF EXIST "%vupdates%\Temp\Integrate.xml" DEL /Q "%vupdates%\Temp\Integrate.xml"
    IF EXIST "%vupdates%\Temp\Sort.txt" DEL /Q "%vupdates%\Temp\Sort.txt"
    
    :: Create the first 3 lines of Integrate.xml
    
    ECHO ^<^?xml version="1.0" encoding="utf-8"?^>^ >>%VUpdates%\Temp\Integrate.xml
    ECHO ^<^unattend xmlns="urn:schemas-microsoft-com:unattend"^>^ >>%VUpdates%\Temp\Integrate.xml
    ECHO	^<^servicing^>^ >>%VUpdates%\Temp\Integrate.xml
    
    :: Create sort.txt which is necessary for compiling Integrate.xml.
    
    PUSHD "%vupdates%\Temp"
    del *.txt
    del WSUSSCAN.cab
    Dir /OD > Sort.txt
    For /F "Tokens=5" %%i IN ('FINDSTR ".cab" Sort.txt') DO Call :WriteXML %%i
    
    :: Create the last two lines of Integrate.xml.
    
    ECHO	 ^<^/servicing^>^ >>%VUpdates%\Temp\Integrate.xml
    ECHO ^<^/unattend^>^ >>%VUpdates%\Temp\Integrate.xml
    echo.
    echo Finished extracting MSU's and compiling Integrate.xml.
    echo Check Integrate.xml to see if it is well-formed before continuing
    echo to use Integrate.cmd to begin the integration process.
    echo.
    pause
    
    ::----------------------------------------------------------------------------
    ::	 SUB PROCEDURES & PARTS EXECUTED OPTIONAL
    ::----------------------------------------------------------------------------
    
    :: Extract subroutine extracts the msu files for the necessary cab and xml files.
    
    :Extract
    START "Expand" /WAIT expand.exe %1 -f:* "%vupdates%\Temp"
    GOTO :EOF
    
    :: WriteXML subroutine writes entries into Integrate.xml, which are specified by the name of
    :: coresponding cab file. This is the command line, which will call the installation of the
    :: cab during pkgmgr procedure later.
     
    :WriteXML
    IF "%1"=="WSUSSCAN.cab" Goto :EOF
    SET Name=%1
    IF ".%Name%"=="." GOTO :EOF
    SET XML=%Name:~0,-4%.xml
    SET Cab=%Name:~0,-4%.cab
    ECHO		^<^package action="install"^>^ >>%vupdates%\Temp\Integrate.xml
    FOR /F "Tokens=*" %%i IN ('FINDSTR "assemblyIdentity" %XML%') DO (Echo			%%i >>%vupdates%\Temp\Integrate.xml)
    ECHO			^<^source location="%vupdates%\Temp\%Cab%" /^>^ >>%VUpdates%\Temp\Integrate.xml
    ECHO		^<^/package^>^ >>%vupdates%\Temp\Integrate.xml
    
    :EOF
    Integrate.cmd
    @echo off
    TITLE Vista Updates Integration Process
    
    CD /d %~dp0
    call set_variables.cmd
    echo.
    echo Your vpath is %vpath%. If this is correct, continue.
    echo.
    pause
    echo.
    echo Before beginning, please choose the version of Vista you want to update.
    echo.
    :SELECT_VER
    set choice=
    set /p choice=Choose 1 for Business, 2 for HomeBasic, 3 for HomePremium, or 4 for Ultimate: 
    if not '%choice%'=='' set choice=%choice:~0,1%
    if '%choice%'=='1' goto BUS
    if '%choice%'=='2' goto HB
    if '%choice%'=='3' goto HP
    if '%choice%'=='4' goto ULT
    echo.
    ECHO "%choice%" invalid! Try again...
    ECHO.
    GOTO SELECT_VER
    
    :BUS
    SET VERSION=1
    SET type=Business
    GOTO STEP_1
    
    :HB
    SET VERSION=2
    SET type=HomeBasic
    GOTO STEP_1
    
    :HP
    SET VERSION=3
    SET type=HomePremium
    GOTO STEP_1
    
    :ULT
    SET VERSION=4
    SET type=Ultimate
    GOTO STEP_1
    
    :STEP_1
    REM MOUNT A READ-WRITE IMAGE OF THE CHOSEN VISTA VERSION
    imagex.exe /mountrw "%vpath%\install.wim" %VERSION% "%vmount%"
    ECHO.
    ECHO Press any key to begin integration of updates. Once you start the process.
    echo you should not cancel it. Make sure you are ready before continuing.
    echo.
    PAUSE
    echo Starting integration. This can take several minutes. Please wait until it finishes.
    
    echo on
    
    START "Starting Package Manager" /WAIT pkgmgr.exe /o:"%vmount%;%vmount%\Windows" /n:"%vupdates%\Temp\Integrate.xml" /s:"%vsandbox%" /l:"%vpath%\integrate.txt"
    
    echo.
    echo The errorlevel is: %errorlevel%.
    echo.
    echo An errorlevel of 0 indicates successful integration. Press any key to save a 
    echo list of installed packages to a text file.
    ECHO.
    pause
    
    echo off
    
    peimg.exe /list /image="%vmount%\Windows" >> "%vpath%\Current_ISO\updates_installed_%version%_%type%.txt"
    echo.
    echo The Sandbox folder should be cleared whether integration was successful or not.
    echo.
    pause
    
    REM Delete, then recreate the folder
    rd "%vsandbox%" /s /q
    mkdir "%vsandbox%"
    echo.
    echo Now, we are ready to commit changes and unmount. Selection an option to  
    echo unmount while committing or not committing changes.
    echo.
    echo Once you commit, the process can take several minutes as the changes are
    echo saved to your installation source.
    ECHO.
    
    :SELECT_COMMIT
    set choice=
    set /p choice=Choose Y to commit changes. Choose N to abandon changes: 
    if not '%choice%'=='' set choice=%choice:~0,1%
    if '%choice%'=='Y' goto COMMIT
    if '%choice%'=='y' goto COMMIT
    if '%choice%'=='N' goto ABANDON
    if '%choice%'=='n' goto ABANDON
    echo.
    ECHO "%choice%" invalid! Try again...
    ECHO.
    GOTO SELECT_COMMIT
    
    :COMMIT
    imagex.exe /unmount /commit "%vmount%"
    goto END
    
    :ABANDON
    imagex.exe /unmount "%vmount%"
    goto end
    
    :END
    echo.
    echo Done. Press any key to exit.
    echo.
    Pause
  • Copy all of your MSU updates to the %vupdates% folder.
  • Execute expand.cmd.
    • Expand.cmd will extract the .cab and .xml files from the .msu files in a temporary folder called Temp in %vupdates%. It also compiles a file called Integrate.xml, a necessary file for integration.
    • Note: do not change the spacing in expand.cmd. Some spaces are necessary to build a proper structure for Integrate.xml.
  • Examine this file (Integrate.xml) using Notepad. It should have as many entries as there are updates of the following nature:

    Integrate.xml sample (partial)
    <?xml version="1.0" encoding="utf-8"?> 
    <unattend xmlns="urn:schemas-microsoft-com:unattend"> 
       <servicing> 
    	   <package action="install"> 
    		   <assemblyIdentity  name="Package_for_KB928089" version="6.0.1.1" language="neutral" processorArchitecture="x86" publicKeyToken="xxxxxxxxxxxxxxx"/> 
    		   <source location="E:\Vista_Work\Updates\Temp\Windows6.0-KB928089-x86.cab" /> 
    	   </package>
    ...
    and so on
    If your file is bare, you may need to change tokens=5 to tokens=4 in expand.cmd.

  • Execute integrate.cmd once you determine your xml is good. It will prompt you through the steps.
    • Note that if you were successful, you should get an errorlevel of 0.
    • The script will also create a file called Updates_Installed_%#%_%type%.txt, where # and type correspond to the Vista version number (1 to 4) and type (Business, Home Basic, Home Premium, or Ultimate), respectively. This is only for the purpose of auto-generating a text file that shows all the updates. The official way of checking integrated updates is described in step 8.
    • NOTE: You will have to install updates to each version of Vista separately. So, you can repeat integrate.cmd for each version by running integrate.cmd and choosing to mount a different version.
    • NOTE: You don't have to repeat expand.cmd for each version, only integrate.cmd. The script empties the Sandbox folder automatically but does not delete the cab files that are expanded in Temp folder. You can manually delete the cab files later if you prefer.
  • Start WSIM and open your updated install.wim. If you are asked to create a new catalog file as the current one is missing or outdated, go ahead and create a new catalog file.
    • You will see your packages automatically assigned as either hotfixes, updates, or security updates in the directory structure of Packages.
    • NOTE: This is the official method to check whether your packages were installed. We used peimg only to make a text file that does that automatically for step 9.
    • You'll have to create a new catalog file for each version of Vista if you want to update it in your ISO.
  • Inject install.wim back into the ISO if you committed changes to finish the process. You may also inject updates_installed_#_type.txt if you want to know which updates are contained in the ISO image.
    • You can also use Microsoft's utility to rebuild the bootable ISO but that involves extracting ALL the files from the DVD, not just install.wim. Therefore, it's easier to use an ISO utility than Microsoft's utility.
    • Injecting the catalog file is options as it is not used by setup.

Edited by spacesurfer, 16 May 2007 - 08:11 PM.

_____________________________________________________________________
[Modify Office 2007 / 2010 Ribbon UI] [Javascript Guide] [Methods of Typing in Gujarati] [My Math Pages]
[Boot Windows 7 from VHD] [Multi-boot Vista/XP and other OSes with Grub Menu] [Boot XP and Vista Independently]


Gigabyte GA-P35-DS3L, Intel Core 2 Duo E6550 2.33 GHz, ASUS Radeon EAH3450 256 MB, 6 GB Corsair RAM, Maxtor 300 GB + Seagate 400 GB HDDs, Windows 7 Ultimate 64-bit
IBM T42 Intel Pentium M 1.7 GHz, 1.5 GB RAM, Radeon Mobility 7500, 160 GB HDD, Windows 7 Ultimate 32-bit


How to remove advertisement from MSFN

#2
maxXPsoft

maxXPsoft

    MSFN Master

  • Developer
  • 2,883 posts
  • OS:Windows 7 x64
  • Country: Country Flag
Every bit of this is covered here in FireGeier links and in fact most is a copy of that http://www.msfn.org/...showtopic=95462
Download ++> Windows 7 + 8 Unattended DVD + App Installer + Services Disabler + Load All Button + XML Creator
Jump2Reg - Registry: - Oct 4, 2013 - Version 3.0.4 - 98, ME, NT, 2K, XP, VISTA, Seven, Windows 8+ and 32 or 64 bit

XP Unattended CD/DVD creator - Version 4.1.7
Sample xml + Setupcomplete + Add Right click .wim Windows 7 or Windows 8/8.1

#3
spacesurfer

spacesurfer

    Pharmassist

  • Patrons
  • 1,668 posts
  • OS:Windows 7 x86
  • Country: Country Flag

Every bit of this is covered here in FireGeier links and in fact most is a copy of that http://www.msfn.org/...showtopic=95462


I credited him for that. I got his permission as well. It's all in one place, however.

Thanks.
_____________________________________________________________________
[Modify Office 2007 / 2010 Ribbon UI] [Javascript Guide] [Methods of Typing in Gujarati] [My Math Pages]
[Boot Windows 7 from VHD] [Multi-boot Vista/XP and other OSes with Grub Menu] [Boot XP and Vista Independently]


Gigabyte GA-P35-DS3L, Intel Core 2 Duo E6550 2.33 GHz, ASUS Radeon EAH3450 256 MB, 6 GB Corsair RAM, Maxtor 300 GB + Seagate 400 GB HDDs, Windows 7 Ultimate 64-bit
IBM T42 Intel Pentium M 1.7 GHz, 1.5 GB RAM, Radeon Mobility 7500, 160 GB HDD, Windows 7 Ultimate 32-bit

#4
prathapml

prathapml

    Follow the rules please :-)

  • Patrons
  • 6,791 posts
  • OS:Windows 8 x64
  • Country: Country Flag
Concise to read, and quick to execute :thumbup
Posted ImageCheers !!!   Donate to MSFN and Help Keep This Site Running
||Please Read the Forum Rules||  Etiquette   || Welcome to MSFN - Forum Basics || Before posting
prathapml :: MSFN Supermod :: Private Message me if you ever have a problem while at MSFN

#5
spacesurfer

spacesurfer

    Pharmassist

  • Patrons
  • 1,668 posts
  • OS:Windows 7 x86
  • Country: Country Flag
I've modified the original post so the instructions are clear and I've included the batch files for download.
_____________________________________________________________________
[Modify Office 2007 / 2010 Ribbon UI] [Javascript Guide] [Methods of Typing in Gujarati] [My Math Pages]
[Boot Windows 7 from VHD] [Multi-boot Vista/XP and other OSes with Grub Menu] [Boot XP and Vista Independently]


Gigabyte GA-P35-DS3L, Intel Core 2 Duo E6550 2.33 GHz, ASUS Radeon EAH3450 256 MB, 6 GB Corsair RAM, Maxtor 300 GB + Seagate 400 GB HDDs, Windows 7 Ultimate 64-bit
IBM T42 Intel Pentium M 1.7 GHz, 1.5 GB RAM, Radeon Mobility 7500, 160 GB HDD, Windows 7 Ultimate 32-bit

#6
neo

neo

    Microsoft MVP - Windows Expert Consumer

  • Member
  • PipPipPipPipPipPip
  • 1,251 posts
  • OS:Windows 7 x64
  • Country: Country Flag
Most of things are copied
But much easier with cmd scripts ...Nice

#7
arablizzard2413

arablizzard2413

    Member

  • Member
  • PipPip
  • 104 posts
expand.cmd
Dir /OD > Sort.txt
For /F "Tokens=5" %%i IN ('FINDSTR ".cab" Sort.txt') DO Call :WriteXML %%i

Wouldn't this work?
For /F %%i IN ('Dir /B /OD *.cab') DO Call :WriteXML %%i
Then there'd be no need for Sort.txt
Perhaps the Most Truthful: on Microsoft marketing:
"There won't be anything we won't say to people to try and convince
them that our way is the way to go."

#8
FireGeier

FireGeier

    Advanced Member

  • Member
  • PipPipPip
  • 405 posts
Hello arablizzard2413!

Yes, you're right that should be an easier solution and it should work. I'm not the "king" of batch programers, so it could be that there is further code which could be more simplified.

Thanks for your input! Will try out and change, if it's working fine finaly.

Regards,
Martin

#9
arablizzard2413

arablizzard2413

    Member

  • Member
  • PipPip
  • 104 posts
If you don't mind I've created my own version that's cleaned up and a little more automated. I've only tested it on Windows XP.

The process is the same as above with the following exceptions:
1) Folder paths with spaces don't cause errors (can be used from folder on Desktop)
2) Paranoid file finding measures to prevent any missing file errors later on
3) Automatically integrates each image, if an error occurs the process stops asking if you want to continue
4) No need to change the tokens value (it was removed)
5) for x86 only, but can be easily modified for x64

set_dirs.cmd
@IF "%1"=="" GOTO INFO:: Set the variables used in run.cmd, names with spaces supported:: Set working dirsSET vpath=%CD%SET vmount=%vpath%\MountSET vsbox=%vpath%\SandboxSET vupdates=%vpath%\UpdatesSET vtemp=%vupdates%\Temp:: Set paths to tools:: Distrust %PATH%; errors with %PATH%s which are too longSET expand=%ProgramFiles%\Windows AIK\Tools\Servicing\Expand.exeSET pkgmgr=%ProgramFiles%\Windows AIK\Tools\Servicing\pkgmgr.exeSET imagex=%ProgramFiles%\Windows AIK\Tools\x86\imagex.exeSET peimg=%ProgramFiles%\Windows AIK\Tools\PETools\peimg.exeGOTO EOF:INFO@ECHO Edit the file paths using notepad@ECHO Then start Hotfix.cmd.@PAUSE:EOF

Hotfix.cmd
@ECHO OFFTITLE Vista Hotfix IntegrationECHO.:: Hotfix.cmd & set_dirs.cmd must be together, you'll get an "Files missing." otherwise.:: Dirs with spaces are supported ;-) set them in set_dirs.cmdCD /d %~dp0SET KILL=ECHO Windows Vista x86 Hotfix Integration tool ^| 5-22-2007ECHO     ---- by AraBlizzard2413ECHO     Original versions by FireGeier and spacesurferECHO.:: Begin paranoid file checkIF EXIST set_dirs.cmd (CALL set_dirs.cmd 1) ELSE (GOTO ERR)FOR %%E IN ("%pkgmgr%" "%imagex%" "%peimg%") DO IF NOT EXIST %%E SET KILL=1IF NOT EXIST "%expand%" SET expand=%WINDIR%\System32\Expand.exeIF NOT EXIST "%vupdates%\*" MKDIR "%vupdates%"IF NOT EXIST "%vpath%\install.wim" SET KILL=1IF "%KILL%"=="1" GOTO ERRECHO Your working path is:ECHO %vpath%ECHO.ECHO If this is correct, press any key to continue.PAUSE>NUL:: Cleaning & safeguardIF NOT EXIST "%vtemp%\*" MKDIR "%vtemp%"DEL "%vtemp%\*.*" /q:: Check for bad mount or filesIF EXIST "%vmount%\Windows\*" "%imagex%" /unmount "%vmount%"IF EXIST "%vmount%\*.*" RD "%vmount%" /s /qIF NOT EXIST "%vmount%\*" MKDIR "%vmount%"IF NOT EXIST "%vsbox%\*" MKDIR "%vsbox%"IF NOT EXIST "%vupdates%\*.msu" GOTO ERR:: Start the process!:: ExtractionPUSHD "%vupdates%"FOR %%M IN (*.msu) DO CALL :EXTRACT %%M:: Don't bother deleteing, overwrite Integrate.xmlECHO.ECHO Creating Integrate.xml...(ECHO ^<?xml version="1.0" encoding="utf-8"?^>ECHO ^<unattend xmlns="urn:schemas-microsoft-com:unattend"^>ECHO     ^<servicing^>) >"%vtemp%\Integrate.xml":: Sort cab files by date and add lines to Integrate.xmlPUSHD "%vtemp%"FOR /F %%I IN ('DIR /B /OD *.cab') DO CALL :ENTRYXML %%I:: Finish Integrate.xml(ECHO      ^</servicing^>ECHO ^</unattend^>ECHO.) >>"%vtemp%\Integrate.xml"ECHO File Created.ECHO.ECHO Check Integrate.xml for errors.PAUSE:: There are 7 versions of Vista in install.wim, 8 is not usedSET counter=1SET max=8ECHO Now Integrating...:INTSET type=IF %counter%==%max% GOTO EXITIF %counter%==1 SET type=BUSINESSIF %counter%==2 SET type=HOMEBASICIF %counter%==3 SET type=HOMEPREMIUMIF %counter%==4 SET type=ULTIMATEIF %counter%==5 SET type=HOMEBASICNIF %counter%==6 SET type=BUSINESSNIF %counter%==7 SET type=STARTER"%imagex%" /mountrw "%vpath%\install.wim" %counter% "%vmount%"ECHO Starting integration for %type%, do not close this window!...START "Starting Package Manager" /WAIT "%pkgmgr%" /o:"%vmount%;%vmount%\Windows" /n:"%vtemp%\Integrate.xml" /s:"%vsbox%" /l:"%vpath%\integrate_%counter%_%type%":: If ErrorLevel = 0 build & repeat for next image, if not ask.IF %ERRORLEVEL%==0 ECHO No errors foundIF NOT %ERRORLEVEL%==0 GOTO RESUME:BUILD"%peimg%" /list /image="%vmount%\Windows" >> "%vpath%\updates_installed_%counter%_%type%.txt"RD "%vsbox%" /s /qMKDIR "%vsbox%""%imagex%" /unmount /commit "%vmount%"SET /A counter=%counter%+1GOTO INT:: Subprocesses:EXTRACTECHO.ECHO %1 extraction in progress...START "Expand" /WAIT "%expand%" %1 -f:*-x86.* "%vtemp%"ECHO File finished.GOTO EOF:ENTRYXMLIF "%1"=="" GOTO EOFSET KB_=%1SET KB_=%KB_:~0,-4%ECHO         ^<package action="install"^> >>"%vtemp%\Integrate.xml"FOR /F "Tokens=*" %%L IN ('FINDSTR "assemblyIdentity" "%vtemp%\%KB_%.xml"') DO (ECHO             %%L >>"%vtemp%\Integrate.xml")(ECHO             ^<source location="%vtemp%\%KB_%.cab" /^>ECHO         ^</package^>) >>"%vtemp%\Integrate.xml"GOTO EOF:RESUMEECHO Error Level: %ERRORLEVEL%SET choice=SET /p choice=If you still want to continue, choose Y. To abort choose N:IF NOT '%choice%'=='' SET choice=%choice:~0,1%IF '%choice%'=='Y' goto BUILDIF '%choice%'=='y' goto BUILDIF '%choice%'=='N' goto UNMOUNTIF '%choice%'=='n' goto UNMOUNTECHO.ECHO "%choice%" invalid!ECHO.GOTO RESUME:ERRECHO.ECHO Files missing.@ECHO ON@GOTO EOF:UNMOUNT"%imagex%" /unmount "%vmount%":EXITECHO.ECHO Process Finished.PAUSE@ECHO ON:EOF

Attached Files


Perhaps the Most Truthful: on Microsoft marketing:
"There won't be anything we won't say to people to try and convince
them that our way is the way to go."

#10
FireGeier

FireGeier

    Advanced Member

  • Member
  • PipPipPip
  • 405 posts
Hello arablizzard2413!

Well, what you're doing with your set_dirs.cmd is done by perpelab.cmd of my Vista Batch Modules. Have a look at the build_menu.cmd, which is creating the menu by install.wim index. Thats more flexible instead fo checking for "Business", "Ultimate" etc..

Regards,
Martin

#11
stellarzork

stellarzork

    Newbie

  • Member
  • 14 posts
Hello,

To integrate Hotfixes very easy, I use "Vista Update Integrator" and go to this site to take them : http://www1.webng.com/xpsp3/

#12
spacesurfer

spacesurfer

    Pharmassist

  • Patrons
  • 1,668 posts
  • OS:Windows 7 x86
  • Country: Country Flag
For /F %%i IN ('Dir /B /OD *.cab') DO Call :WriteXML %%i
Great tip. Thanks, I'll have to modify mine.

Edited by spacesurfer, 23 May 2007 - 02:33 PM.

_____________________________________________________________________
[Modify Office 2007 / 2010 Ribbon UI] [Javascript Guide] [Methods of Typing in Gujarati] [My Math Pages]
[Boot Windows 7 from VHD] [Multi-boot Vista/XP and other OSes with Grub Menu] [Boot XP and Vista Independently]


Gigabyte GA-P35-DS3L, Intel Core 2 Duo E6550 2.33 GHz, ASUS Radeon EAH3450 256 MB, 6 GB Corsair RAM, Maxtor 300 GB + Seagate 400 GB HDDs, Windows 7 Ultimate 64-bit
IBM T42 Intel Pentium M 1.7 GHz, 1.5 GB RAM, Radeon Mobility 7500, 160 GB HDD, Windows 7 Ultimate 32-bit

#13
arablizzard2413

arablizzard2413

    Member

  • Member
  • PipPip
  • 104 posts

Have a look at the build_menu.cmd, which is creating the menu by install.wim index. Thats more flexible instead fo checking for "Business", "Ultimate" etc..


The "Business", "Ultimate" etc checks are only used for naming the log files, so it's not something vital. I just wanted to make it easier to understand which version the log file belonged to. All the image.wim files I've seen use the same numbers for the images, so I didn't think it would be a problem.

Edited by arablizzard2413, 24 May 2007 - 12:12 AM.

Perhaps the Most Truthful: on Microsoft marketing:
"There won't be anything we won't say to people to try and convince
them that our way is the way to go."

#14
geo411m

geo411m

    Junior

  • Member
  • Pip
  • 78 posts
does this method really slipstream hotfixes? i've been using peimg to add hotfixes but my install grows when i add the hotfixes. i believe the method i'm using is similar to SVCPACK.INF Method for XP. is there a way of real slipstreaming?

#15
FireGeier

FireGeier

    Advanced Member

  • Member
  • PipPipPip
  • 405 posts
AFAIK it does slipstream the updates / hotfixes. It's normal behaviour of install.wim that it's growing, once you change something. If you want to reduce the size of install.wim after doing changes, you need to export install.wim to a new .wim file.

Regards,
Martin

#16
geo411m

geo411m

    Junior

  • Member
  • Pip
  • 78 posts
i do export my .wim file. it seems to grow by i don't know like 40% of hotfix size. exp 100mb hotfixes = 40mb wim increase. thats just an example not my real numbers. also i use peimg instead of pkgmr with a two step process.

peimg /import=c:\updates\*.cab c:\mount\windows
and the
peimg /install=*Package* c:\mount\windows

Edited by geo411m, 24 May 2007 - 11:05 AM.


#17
AHRIMANSEFID

AHRIMANSEFID

    Junior

  • Member
  • Pip
  • 94 posts
Hi Me Need Code For Extract install.wim from Vista installation DVD to %vpath%.
Thank you
thank you for software
Posted Image

#18
FireGeier

FireGeier

    Advanced Member

  • Member
  • PipPipPip
  • 405 posts
Hello AHRIMANSEFID!

You just need to copy the install.wim from your Vista DVD \sources directory to a directory on your HD. Than you put the location of this directory to the line:

SET vpath=%CD%

for example:

SET vpath=D:\VistaDVD

That requires that you've copied the Vista DVD to the VistaDVD folder on your D: drive (D:\VistaDVD).

All the rest is done by the batch.

Regards,
Martin

#19
AHRIMANSEFID

AHRIMANSEFID

    Junior

  • Member
  • Pip
  • 94 posts
Thank You But Me Need Extract install.wim All File Need For Edit.
thank you for software
Posted Image

#20
FireGeier

FireGeier

    Advanced Member

  • Member
  • PipPipPip
  • 405 posts
Ok...

than look here.

Regards,
Martin

#21
weegrim

weegrim
  • Member
  • 2 posts
hi guys, i need a bit of help

i have followed the instructions down to Integrate.cmd when i run this and get to the part where it is trying to mount install.wim, it fails because it says access is denied, i have tried to take ownership of the install.wim, and the containing folder useing "takeown" in cmd and from the properties window for both again, and i cant seem to get access, the file and the folder both claim to be in my ownership, but it will not work.

Thanks.

Attached Files



#22
sp00f

sp00f

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 733 posts
I use this to do it :

VISTA32 hotfix-TOOL

Or you can use vlite 1.1

#23
spacesurfer

spacesurfer

    Pharmassist

  • Patrons
  • 1,668 posts
  • OS:Windows 7 x86
  • Country: Country Flag
Are you running your scripts in Elevated Privileges mode?

I think that error occurs because of that - Vista will not mount images unless you run in elevated mode. It really sucks.
_____________________________________________________________________
[Modify Office 2007 / 2010 Ribbon UI] [Javascript Guide] [Methods of Typing in Gujarati] [My Math Pages]
[Boot Windows 7 from VHD] [Multi-boot Vista/XP and other OSes with Grub Menu] [Boot XP and Vista Independently]


Gigabyte GA-P35-DS3L, Intel Core 2 Duo E6550 2.33 GHz, ASUS Radeon EAH3450 256 MB, 6 GB Corsair RAM, Maxtor 300 GB + Seagate 400 GB HDDs, Windows 7 Ultimate 64-bit
IBM T42 Intel Pentium M 1.7 GHz, 1.5 GB RAM, Radeon Mobility 7500, 160 GB HDD, Windows 7 Ultimate 32-bit

#24
weegrim

weegrim
  • Member
  • 2 posts
I was thinking that i was running them in elevated mode, im telling the scripts to run as administrator, by right clicking on them. and again i just get the same problem.

Im not too sure about using that "VISTA32 hotfix-TOOL" because im running the 64bit version (sorry if thats got nothing to do with it, im assuming because it says vista32 that its 32bit)

#25
JuMz

JuMz

    Advanced Member

  • Member
  • PipPipPip
  • 466 posts
Nice guide! Thanks!




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users



How to remove advertisement from MSFN