[wimlib-imagex] From 16299.64 to 16299.125 leaves WinSxS\Temp\ files?

Page 1 of 2 12 LastLast

  1. Posts : 18
    .
       #1

    [wimlib-imagex] From 16299.64 to 16299.125 leaves WinSxS\Temp\ files?


    I'm trying to create a clean and updated Windows 10 Pro installation and updated an official 16299.64 build to 16299.125 using wimlib-imagex.

    All went fine but after inspecting the resulting install.wim's file/folder structure i noticed that the update process created many \WinSxS\Temp\InFlight\ files (there's also a WinSxS\pending.xml) and some \Windows\servicing\Sessions\ .xml's (also a Sessions.xml and Sessions.back.xml) .

    Now i'm wondering if there's a way to clean this all up, because MSFT apparently knows how to release ISO's/ESD's without any temp WinSxS files present.

    Thank you in advance!

    (for your information: both Pending(Deletes/Renames) folders are empty, and TransformerRollbackData is non-existing)
      My Computer


  2. Posts : 4,571
    several
       #2

    The updates are pending. That is normal when installing updates into a wim.
      My Computer


  3. Posts : 18
    .
    Thread Starter
       #3

    Hmm, peraps that's the reason why i noticed a sh*tload of BackgroundTask processes/instances at first boot.
    But.. Microsoft delivers updated ISO/ESD releases without these temp/pending files. I want to achieve that too ;-/
      My Computer


  4. Posts : 4,571
    several
       #4

    Either d/l the updated version, or install, sysprep and capture your existing wim.

    There is some kind of issue with store apps with sysprep/generalise on win10. Can't recall exactly what it is, because I don't bother doing it.
      My Computer


  5. Posts : 5,478
    2004
       #5

    Why are you using imagex?

    Not saying you shouldn't (as you wish of course) but you may find using dism (or the equivalent powershell commands) would work better. They were not deprecated a decade ago.

    I guess it is all these old MDL people with their old scripts - rather than use oscdimg they'll copy in some old rubbish from a decade ago.

    Nothing wrong with that but better write it yourself I reckon.
      My Computer


  6. Posts : 18
    .
    Thread Starter
       #6

    SIW2 said:
    Either d/l the updated version, or install, sysprep and capture your existing wim.

    There is some kind of issue with store apps with sysprep/generalise on win10. Can't recall exactly what it is, because I don't bother doing it.
    AFAIK there's no official 16299.125 ISO/ESD out. The store apps problem was resolved by a hotfix (can't recall where i found it though).

    lx07 said:
    Why are you using imagex?

    ...
    I'm using wimlib, it has some improved DISM (and imagex) functions and some new things that aren't found in DISM/imagex. I wouldn't call a DISM/imagex fork deprecated yet (it has more/better compression options/algorithms too).

    Speaking of MDL: abbodi1406's Windows 10 Updates Installer makes use of oscdimg (or cdimage), is still being worked on and has been updated very recent.
    Last edited by copyitright; 18 Dec 2017 at 09:14.
      My Computer


  7. Posts : 5,478
    2004
       #7

    I know what wimlib is. Perhaps it does do better compression - that is easy - you could use xpress:16k instead of xpress:4k or whatever.

    The easiest (clearest, supportable) way to make an ISO is like this:
    PHP Code:
    # Unmount the WinPE image
    Get-WindowsImage -Mounted -ErrorAction Stop | ForEach-Object {
        
    Dismount-WindowsImage -Path $_.Path -Save -ErrorAction Stop
    }

    # Set the correct boot argument based on availability of boot apps
    if (Test-Path  $WorkDir\fwfiles\etfsboot.com)  {
        
    $BOOTDATA="2#p0,e,b`"$WorkDir\fwfiles\etfsboot.com`"#pEF,e,b`"$WorkDir\fwfiles\efisys.bin`""
    } else { 
    $BOOTDATA="1#pEF,e,b`"$WorkDir\fwfiles\efisys.bin`"" }

    # Make ISO
    $command="$ADK\Deployment Tools\$PEArch\Oscdimg\oscdimg.exe"
    &$command  -l:$ISOLabel ----u1 -bootdata:$bootdata "$WorkDir\media" "$ISOPath
    No-one really cares how big an ISO is unles the contents will (or will not) fit under 4GB.

    I do wish we could get rid of the "2#p0,e,b" stuff though but it is required - presumably for CD's or DVD's or cassette tapes or something.
      My Computer


  8. Posts : 3,453
       #8

    "2#p0,e,b" are parameters required by IMAPI API for image creation - not related to legacy media.

    ie:
    2 = # of boot images

    e = Disables floppy disk emulation in the El Torito catalog.

    p0 = Specifies the value to use for the platform ID - 0 to represent a BIOS system.

    pEF = platform ID UEFI system.

    Not sure about the b param tho'....

    I recall having struggled getting a boot array to work in .Net until I came across some little known C++ safe-array code and had to adapt it.
      My Computer


  9. Posts : 5,478
    2004
       #9

    Superfly said:
    Not sure about the b param tho'....
    I copied the whole lot from some Italian site.

    Apparently b means this
    -blocation
    Specifies the location of the El Torito boot sector file. Do not use any spaces, for example, -bC:\Directory\Etfsboot.com
    https://docs.microsoft.com/en-us/pre...49036(v=ws.10)

    Anyway my point was it would be nice if there was a command like Make-ISO that would convert a directory with the correct structure into an ISO without having to use a command requiring gobblegook to be put into text strings like we are in 1988 not 2018.
    Last edited by lx07; 18 Dec 2017 at 12:13. Reason: fixed link
      My Computer


  10. Posts : 3,453
       #10

    lx07 said:
    I copied the whole lot from some Italian site.

    Apparently b means this https://docs.microsoft.com/en-us/pre...749036(v=ws.10)

    Anyway my point was it would be nice if there was a command like Make-ISO that would convert a directory with the correct structure into an ISO without having to use a command requiring gobblegook to be put into text strings like we are in 1988 not 2018.
    O.I.C... btw that link gives me 404 page error

    Anyway it''s not needed - this is how I create the required params - I havent got it to wor'k in PS yet.

    Code:
              
               psaBoot = Array.CreateInstance(typeof(Object), 2);
    
                FsiStream MBRbootStream,EFIbootStream;
    
                iso.ChooseImageDefaultsForMediaType(IMAPI_MEDIA_PHYSICAL_TYPE.IMAPI_MEDIA_TYPE_DISK);
                iso.FileSystemsToCreate = FsiFileSystems.FsiFileSystemUDF;
                iso.VolumeName = VolID;
    
                // Create MBR boot stream
                MBRbootStream = IBootStream(MBRbootFile);
                BootOptions MBRbootOptions = new BootOptions();
                MBRbootOptions.Manufacturer = "Microsoft";
                MBRbootOptions.PlatformId = PlatformId.PlatformX86;
                MBRbootOptions.Emulation = EmulationType.EmulationNone;
                MBRbootOptions.AssignBootImage(MBRbootStream);
    
                ///<!-- EFI boot is architecture specific -->
                // Create EFI boot stream
                EFIbootStream = IBootStream(EFIbootFile);
                BootOptions EFIbootOptions = new BootOptions();
                EFIbootOptions.Manufacturer = "Microsoft";
                EFIbootOptions.PlatformId = PlatformId.PlatformEFI;
                EFIbootOptions.Emulation = EmulationType.EmulationNone;
                EFIbootOptions.AssignBootImage(EFIbootStream);
    
                psaBoot.SetValue(MBRbootOptions, 0);
                psaBoot.SetValue(EFIbootOptions, 1);
                iso.BootImageOptionsArray = psaBoot;
      My Computer


 

  Related Discussions
Our Sites
Site Links
About Us
Windows 10 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. "Windows 10" and related materials are trademarks of Microsoft Corp.

© Designer Media Ltd
All times are GMT -5. The time now is 20:42.
Find Us




Windows 10 Forums