Windows Integration Guide - murphy78

Discussion in 'Windows 8' started by murphy78, Sep 5, 2013.

  1. filox

    filox MDL Novice

    Sep 15, 2010
    16
    1
    0
    I installed Windows 8.1 Pro x64 on a PC in which using the "WHD_7.9" program I made a backup of the drivers which I have on a folder a lot of subfolders that you do with them not to install at that PC I installed the SOS

    s1ave77.
    Sorry for the line was copy and paste what I fail

    dism /online /Add-driver /driver:C:\Update\drivers\ /recurse

    Thanks for answering
     
  2. coleoptere2007

    coleoptere2007 MDL Guru

    Apr 8, 2008
    3,311
    1,938
    120
    Then you don't need to do it manually if you use WHD, this is automatic. :)
     
  3. filox

    filox MDL Novice

    Sep 15, 2010
    16
    1
    0
    Might you please tell me how to do it
     
  4. filox

    filox MDL Novice

    Sep 15, 2010
    16
    1
    0
    Please could someone tell me how the variable could be to install the updates without having to put as in the example:

    @echo off
    pushd "% ~ dp0"
    dism / image: c: \ mount / Add-Package / PackagePath:"C:\x64\update\Extr \BrowserChoice" etc.

    What would be the variable that finds all the updates that are in the "Extra" folder without having to put "C:\x64\update Extra BrowserChoice"

    I give thanks advance
     
  5. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    #465 s1ave77, May 14, 2014
    Last edited by a moderator: Apr 20, 2017
    You mean something like that ... :g::

    Code:
    for /R "C:\x64\update\Extra" %%A in (*.cab) do (
    dism /Image:"c:\mount" /Add-Package /PackagePath:"%%A"
    )
    
    
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  6. filox

    filox MDL Novice

    Sep 15, 2010
    16
    1
    0
    #466 filox, May 14, 2014
    Last edited by a moderator: Apr 20, 2017
    That's what I want

    But for other folders as:
    C:\x64\update\General
    C:\x64\update\Hotfix etc....
    I would have to put each of them:

    for /R "C:\x64\update\Extra" %%A in (*.msu) do (
    dism /Image:"c:\mount" /Add-Package /PackagePath:"%%A"
    )
    It could be another variable?
     
  7. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    Test with "C:\x64\update", afair it should find updates in subfolders :thinking:.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  8. filox

    filox MDL Novice

    Sep 15, 2010
    16
    1
    0
    Just what I wanted.

    It works perfect

    thank you very much
     
  9. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    You're welcome :D.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  10. murphy78

    murphy78 MDL DISM Enthusiast

    Nov 18, 2012
    7,389
    11,614
    240
    #470 murphy78, May 14, 2014
    Last edited by a moderator: Apr 20, 2017
    (OP)
    Just wanted to say that although this method is slower than simply pointing dism at the folder and integrating them all at once,
    it is a much better idea. Integrating them one file at a time is much more stable for the filestream and will cause much less problems if you convert to esd.
     
  11. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    Nice, wasn't aware of a shorter way but good to know mine is more foolproof, did it to be able to count them before :g:. Using it in a similiar way to get the install order for the updates from a text file and process in a loop for all indices :cool2:.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  12. filox

    filox MDL Novice

    Sep 15, 2010
    16
    1
    0
    #472 filox, May 14, 2014
    Last edited: May 14, 2014
    Could please give an example.

    thanks
     
  13. Snuffy

    Snuffy MDL Expert

    Jan 7, 2008
    1,262
    626
    60
    One of these days, im going to consolidate all my DISM cmd scripts that S1ave77 and Murphy78 have offered to help others. and publish in a nice Book.
    and everybody else who has offer scripts to help.

    Thanks Guys for all the super scripts...
    Old Dog learning new tricks. :wacko::wacko::rolleyes:
     
  14. murphy78

    murphy78 MDL DISM Enthusiast

    Nov 18, 2012
    7,389
    11,614
    240
    #474 murphy78, May 14, 2014
    Last edited by a moderator: Apr 20, 2017
    (OP)
    Proper post-update wim integration:
    Code:
    dism /mount-wim /wimfile:c:\win81x86\sources\install.wim /index:1 /mountdir:d:\mount
    dism /image:d:\mount /add-package /packagepath:E:\Win81slipstream\KBFiles\x86\KB2919355\Windows8.1-KB2934018-x86.msu
    dism /image:d:\mount /add-package /packagepath:E:\Win81slipstream\KBFiles\x86\KB2919355\Windows8.1-KB2959977-x86.msu
    dism /image:d:\mount /add-package /packagepath:E:\Win81slipstream\KBFiles\x86\KB2934520\Windows8.1-KB2934520-x86.msu
    for %%A in (E:\Win81slipstream\KBFiles\x86\*.msu) do (cmd /c "dism /image:d:\mount /add-package /packagepath:%%A")
    dism /unmount-wim /mountdir:d:\mount /commit
    Improper integration that produces apply-image failures during winpe setup:
    Code:
    dism /mount-wim /wimfile:c:\win81x86\sources\install.wim /index:1 /mountdir:d:\mount
    dism /image:d:\mount /add-package /packagepath:E:\Win81slipstream\KBFiles\x86\resetbase\Windows8.1-KB2899189-x86.msu
    dism /image:d:\mount /cleanup-image /startcomponentcleanup /resetbase
    :resetbase causes some sort of error here (not in dism, but in the wim filestream)
    dism /image:d:\mount /add-package /packagepath:E:\Win81slipstream\KBFiles\x86\KB2919355\Windows8.1-KB2934018-x86.msu
    dism /image:d:\mount /add-package /packagepath:E:\Win81slipstream\KBFiles\x86\KB2919355\Windows8.1-KB2959977-x86.msu
    dism /image:d:\mount /add-package /packagepath:E:\Win81slipstream\KBFiles\x86\KB2934520\Windows8.1-KB2934520-x86.msu
    dism /image:d:\mount /add-package /packagepath:E:\Win81slipstream\KBFiles\x86
    dism /unmount-wim /mountdir:d:\mount /commit
    When the 2nd example is exported to esd recovery compression, you will get rare errors in your boot setup, and possibly your upgrade setup.
     
  15. murphy78

    murphy78 MDL DISM Enthusiast

    Nov 18, 2012
    7,389
    11,614
    240
    Unfortunately, with the adoption of more and more cloud computing, these things will be rapidly evolving.
    Things will be changing from a slow-changing OS with a lot of offline integration, to a constantly changing online platform.

    A lot of our old tricks will no longer be necessary when most of the programs are simply ran off of servers and downloaded on demand.
    I think a lot of us old-dogs will gravitate more to server-based OSes and leave the end-users to their simple netbook-style computing.
     
  16. Flipp3r

    Flipp3r MDL Expert

    Feb 11, 2009
    1,965
    908
    60
    #476 Flipp3r, May 15, 2014
    Last edited by a moderator: Apr 20, 2017
    Is it safer to use for loop to 'add-package' individually?
    Code:
    for %%A in (E:\Win81slipstream\KBFiles\x86\*.msu) do (cmd /c "dism /image:d:\mount /add-package /packagepath:%%A")
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  17. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,575
    15,646
    270
    #477 Mr.X, May 15, 2014
    Last edited: May 15, 2014
    Sorry for double post but I want to be sure you could see it:
    Edit: I've just saw your post three above mine and I guess this is my answer (thanks to s1ave77 to point me in the right direction)... :D
    One more thing, according to Alphawaves and aboddi KB2959977 goes before KB2934018, you have the opposite, then what is the right order?
     
  18. murphy78

    murphy78 MDL DISM Enthusiast

    Nov 18, 2012
    7,389
    11,614
    240
    If MS lists 2959977 before 2934018, you should follow their advice. I have not seen any conflict between these two kb files.
    I think their advice is more for people that are unable to install 2919355 correctly, but their instructions should never be ignored.

    As far as the one at a time thing, well... It's hard to explain. I've had problems with all-at-once integration before.
    I don't know enough about the servicing to explain why it's better. I wish I did.
    If you went through the install error hell that I went through with my win8 and win8.1 esd recovery compression aio versions, you'd
    know that you should avoid anything that causes these weird errors like the plague.

    One of the things that seems to cause these weird install errors is resetbase'ing non-pending updates into your offline image.
    Another is installing a ton of updates at once without installing them one at a time.

    Back in win8, toward the end of my integration efforts on it, there was over 1gigs of compressed updates to integrate into the x64 version.
    I would integrate them all at once. As soon as I was able to export them to esd recovery compressed versions, I did so. It didn't make sense
    to use non-esd files since they were all too large to fit on fat32, and hence breaks the way most UEFI users would install it.

    There's just something about the way the all-at-once method integrates that doesn't jive with recovery compression. I don't know if it's messing
    with pointer files incorrectly, or some weird mathematical error is causing incorrect chunk verification or what. I just know that whatever causes
    these problems, is not worth the hassle of dealing with. It's much better to use a loop to integrate all *.msu or *.cab files in a folder than to
    use the whole-folder integration method.