Using FFU Imaging; after Optimize-FFU it no longer works

adam sander 11 Reputation points
2021-09-05T18:51:24.903+00:00

Hi,

I installed a fresh copy of Windows Home v21H1. In audit mode, I ran installed all the Windows Updates and then ran System Prep with "System Cleanup Action > Enter System Audit mode" and shutdown the system. I then booted to WinPE and was able to successfully capture an FFU image to a network share.

I was also able to successfully deploy this image to another machine with a larger SSD.

However, anything with a small drive won't work so I ran the 'Optimize-FFU' command from the Deployment and Imaging Tools command prompt on my server which hosts the network share and that process went through successfully. My understanding is that this modifies the image so that it will work on small drive sizes.

My issue is that AFTER running this 'Optimize-FFU' the image will not deploy on ANY machines.

When I try to deploy the 'optimized' image to the same machine the original 'non-optimized' image worked OR any other machine on I get an error: 0x8000ffff

ANY IDEAS?

Here is the log file:

2021-09-05 13:56:54, Info                  DISM   PID=1488 TID=1464 Scratch directory set to 'X:\windows\TEMP\'. - CDISMManager::put_ScratchDir  
2021-09-05 13:56:54, Info                  DISM   PID=1488 TID=1464 DismCore.dll version: 10.0.22000.1 - CDISMManager::FinalConstruct  
2021-09-05 13:56:54, Info                  DISM   Initialized Panther logging at X:\windows\Logs\DISM\dism.log  
2021-09-05 13:56:54, Info                  DISM   PID=1488 TID=1464 Successfully loaded the ImageSession at "X:\windows\system32\Dism" - CDISMManager::LoadLocalImageSession  
2021-09-05 13:56:54, Info                  DISM   Initialized Panther logging at X:\windows\Logs\DISM\dism.log  
2021-09-05 13:56:54, Info                  DISM   DISM Provider Store: PID=1488 TID=1464 Found and Initialized the DISM Logger. - CDISMProviderStore::Internal_InitializeLogger  
2021-09-05 13:56:54, Info                  DISM   Initialized Panther logging at X:\windows\Logs\DISM\dism.log  
2021-09-05 13:56:54, Info                  DISM   DISM Manager: PID=1488 TID=1464 Successfully created the local image session and provider store. - CDISMManager::CreateLocalImageSession  
2021-09-05 13:56:54, Info                  DISM   DISM.EXE:   
2021-09-05 13:56:54, Info                  DISM   DISM.EXE: <----- Starting Dism.exe session ----->  
2021-09-05 13:56:54, Info                  DISM   DISM.EXE:   
2021-09-05 13:56:54, Info                  DISM   DISM.EXE: Host machine information: OS Version=10.0.22000, Running architecture=amd64, Number of processors=4  
2021-09-05 13:56:54, Info                  DISM   DISM.EXE: Dism.exe version: 10.0.22000.1  
2021-09-05 13:56:54, Info                  DISM   DISM.EXE: Executing command line: dism  /apply-ffu /ImageFile=W:\Win10-9-5-21.ffu /ApplyDrive:\\.\PhysicalDrive0  
2021-09-05 13:56:54, Error                 DISM   DISM FFU Provider: CFfuMiscHelpersT<class CEmptyType>::GetSignerInfoFromCatalog#998 failed with 0x80091008.  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider: -------- Security Header ----------------------------------  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:                     Size = 32  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:                Signature = SignedImage   
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:            ChunkSizeInKB = 128  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:              AlgorithmId = 32780  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:              CatalogSize = 328  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:            HashTableSize = 5505024  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider: ----------- Image Header ----------------------------------  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:                     Size = 24  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:                Signature = ImageFlash    
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:           ManifestLength = 1723  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:                ChunkSize = 128  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider: ----------- Store Header ----------------------------------  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:               UpdateType = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:             MajorVersion = 1  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:             MinorVersion = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:    FullFlashMajorVersion = 3  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:    FullFlashMinorVersion = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:               PlatformId =   
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:                BlockSize = 131072  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:     WriteDescriptorCount = 172004  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:    WriteDescriptorLength = 3440080  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:  ValidateDescriptorCount = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider: ValidateDescriptorLength = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:        InitialTableIndex = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:        InitialTableCount = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:      FlashOnlyTableIndex = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:      FlashOnlyTableCount = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:          FinalTableIndex = 0  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:          FinalTableCount = 172004  
2021-09-05 13:56:54, Info                  DISM   DISM FFU Provider:     CompressionAlgorithm = 3  
2021-09-05 13:56:55, Info                  DISM   DISM FFU Provider: Anti-theft feature is not supported on this machine.  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: (Partition) Name is not present in manifest.  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: CManifest::GetDriveLayoutInfoEx#788 failed with 0x8000ffff.  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: CFfuReader::ProcessWriteDescriptors#1260 failed with 0x8000ffff.  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: CFfuReader::PreApply#303 failed with 0x8000ffff.  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: FfuApplyInternal#477 failed with 0x8000ffff.  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: FfuApplyImage#85 failed with 0x8000ffff.  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: PID=1488 TID=1464 onecore\base\ntsetup\opktools\dism\providers\ffuprovider\dll\ffumanager.cpp:515 - CFfuManager::Apply(hr:0x8000ffff)  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: PID=1488 TID=1464 Failed to apply an FFU image to '\\.\PhysicalDrive0'. - CFfuManager::InternalCmdApply(hr:0x8000ffff)  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: PID=1488 TID=1464 "Error executing command" - CFfuManager::InternalExecuteCmd(hr:0x8000ffff)  
2021-09-05 13:56:55, Error                 DISM   DISM FFU Provider: PID=1488 TID=1464 onecore\base\ntsetup\opktools\dism\providers\ffuprovider\dll\ffumanager.cpp:224 - CFfuManager::ExecuteCmdLine(hr:0x8000ffff)  
2021-09-05 13:56:55, Error                 DISM   DISM.EXE: FfuManager processed the command line but failed. HRESULT=8000FFFF  
2021-09-05 13:56:55, Info                  DISM   DISM.EXE: Image session has been closed. Reboot required=no.  
2021-09-05 13:56:55, Info                  DISM   DISM.EXE:   
2021-09-05 13:56:55, Info                  DISM   DISM.EXE: <----- Ending Dism.exe session ----->  
2021-09-05 13:56:55, Info                  DISM   DISM.EXE:  

129385-img-3382.jpg

I restarted the system but no change. In the screenshot below you can see I successfully applied the image called OOBE.ffu. I then ran the dism /optimize command from the Windows 10 machine that has SSD for the shared network folder where the FFU file is saved. (See screenshot) the optimization completes successfully. Then on the target machine, I attempt to apply this 'optimized' image and it outright fails. The only change is this 'optimize' command. I can't see what I'm missing.

129354-img-3388.jpg

129415-img-3389.jpg

Windows 10 Setup
Windows 10 Setup
Windows 10: A Microsoft operating system that runs on personal computers and tablets.Setup: The procedures involved in preparing a software program or application to operate within a computer or mobile device.
1,949 questions
{count} votes

2 answers

Sort by: Most helpful
  1. Limitless Technology 39,686 Reputation points
    2021-09-07T07:30:14.317+00:00

    Hello Adamsander

    The error 0x8000ffff or "Catastrophic Failure" during a Windows deployment generally speaks about the exhaustion of RAM or Disk resources. Since you are mentioning specifically the "smaller ***", I suspect that the ammount of space needed to do the FFU install is not enough.

    As you know, the Optimized FFU will shrink or expand partitions so either the free space on the partition (after expanding as much as much possible) is not enough, or the program runs in a problem to expand the partition. In case you don't have any other data partition besides Windows partition, the size available would be the issue.

    In case you have a data parition on the drives:

    About expanding, I would run a defrag tool in one of the affected machines, for troubleshooting purpose. *** doesn't need defrag for performance, but in case of Expanding a partition, loose chunks of data may prevent the expansion to full.

    Other option after is to, instead of shrinking or expanding Windows partition, run a diskpart and choose the data partition to be the one shrinking or expanding to allow the space.

    Example:
    Dism /Optimize-FFU /ImageFile:flash.ffu /PartitionNumber:2

    Ad described here: https://learn.microsoft.com/en-us/windows-hardware/manufacture/desktop/deploy-windows-using-full-flash-update--ffu#optimize-an-ffu

    Ah... just to check.. you haven't run FFU Optimization over an image that was installed using an optimized FFU, right?

    Hope it helps in your case,
    Best regards,


  2. Didier Dupont 0 Reputation points
    2024-07-19T08:46:48.81+00:00

    Hi,

    Its ok for me, with an error for restauration:

    Capt_Optimize_Ffu_1.PNG

    Capt_Optimize_Ffu_2.PNG

    Capt_Optimize_Ffu_3.PNG

    Capt_Optimize_Ffu_10.PNG

    Capt_Optimize_Ffu_22.PNG

    Capt_Optimize_Ffu_25.PNG

    Capt_Optimize_Ffu_32.PNG

    dism_RestaurationImageOptimisee.log.txt

    Capt_Restauration_ImageOptimisee_19.PNG

    Capt_Restauration_ImageOptimisee_20.PNG

    At the end of restoration, there is an error 0x80041002, but image is restored, boot is ok and windows partition is not optimized (i use virtualbox 7.0.20 environment, with personal modified personal tool Dism-Gui).

    Thanks and regards.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.