MSFN Forum: Windows 7 DISM & driver packages - MSFN Forum

Jump to content


  • 3 Pages +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

Windows 7 DISM & driver packages Just can't get it working...

#21 User is offline   JohanE 

  • Group: Members
  • Posts: 2
  • Joined: 07-May 09

Posted 25 May 2009 - 07:13 AM

OK... this line works for me:

dism.exe /image:"d:\\" /sysdrivedir:"c:\\" /norestart /apply-unattend:"d:\Windows\Panther\Unattend.xml" /scratchdir:d:\uptemp

The only major difference is that I've specified the path to the driver store in the unattend file.


#22 User is offline   razormoon 

  • Little boots...!
  • PipPip
  • Group: Members
  • Posts: 216
  • Joined: 17-February 06

Posted 26 May 2009 - 07:49 PM

Here's the thing, although I do employ autounattend.xml, I have never dealt with unattend.xml. Without going into too much detail, how does one employ it if there is a difference? I see my own unattend.xml (in panther folder) and it is identical to my autounattend with a few "sensitive deletions". Does one just save autounattend as unattend?

What are the double backslashes as they apply to a DISM command?

Pardon my ignorance. :(


EDIT***

Ok, I have answered my own questions! However, what kind of code are you using to specifically in your answer file to point to path? And I only ask because I believe there were issues with drive letters once? I could be mistaken... Can you post an example...I can then take it from there.

Thanks!

This post has been edited by razormoon: 26 May 2009 - 08:37 PM


#23 User is offline   Dechy 

  • Newbie
  • Group: Members
  • Posts: 41
  • Joined: 25-February 08

Posted 01 June 2009 - 01:54 PM

Ok, back on this project again... god love the govt; getting pulled from projects and thrown onto other things only to get pushed back onto what you were oing from the get-go...

Anyways, I'm back with the damned DISM / MDT 2010 thing, seems I was wrong about MDT taking in the drivers and not DISM; when I hit the Update on my deployment folder, I get the same errors. But I'm going to leave that one alone for now.

I'm seriously lacking basic knowledge on how DISM & package integration works... but anyways; this scenario is simple! Mount WIM image, add-package for 2 tiny MS updates (KB971180 & KB970858) and the french language pack. No errors, I do the /get-packages and clearly see them there, but with the mention "install pending".

I unmount & commit changes. I then re-mount & re-check /get-packages and yep, they're definitely there. I check WAIK after reloading the WIM and I don't see the packages in there anywhere. Ok. So I copy that WIM file to my USB key & re-install from scratch. The WIM was ~125MB bigger, so another clear indication that the packages are there.

The question: how in hell do I get them to install now? Even after W7 is loaded, it didn't install them automatically (which I thought that's how it was going to do them) and they don't appear anywhere as an option to start the installs...

So yeah, there has to be something basic I'm missing here, like either in my autounattend to tell it to do the install or before closing off the offline image.

The lack of documentation on how DISM works from MS is ridiculous, I'm about to just plug in every darn thing I want to install in the offline image, close the WIM & create a big old ugly script that installs everything instead of using these new "automation tools" :realmad: It just really sucks coming from a standpoint where XP tools had no secrets to DISM/WAIK/MDT. :wacko:

#24 User is offline   razormoon 

  • Little boots...!
  • PipPip
  • Group: Members
  • Posts: 216
  • Joined: 17-February 06

Posted 01 June 2009 - 08:32 PM

So, like I'm just going to chalk it up to the RC/BETA thing...
I'm hoping to get a tip from JohanE as I have never pointed to any drivers from autounattend. That being said, it's only because of the physical drive pointer thing (if that still is an issue). I can get my audio and IR drivers to add...just not the video!

On my journey to working with things that are so-called "robust", it chaps my a** when I run into a brick wall like this. Don't get me wrong...I live to be educated!

Dechy: Have you tried DISM /image:<drive>\<path> /add-package /?

Maybe something there?

:blink:

#25 User is offline   Dechy 

  • Newbie
  • Group: Members
  • Posts: 41
  • Joined: 25-February 08

Posted 02 June 2009 - 09:49 AM

Indeed I did, there's no "install-package" or "enable-package" or something that would tell the OS on first boot (or any pass) to kick off those installs.

I just find it odd, that like you, not all my drivers work, but the ones that do, once "slipstreamed" into the .WIM using DISM, they actually "work" right away, or at least the OS is quite aware of them... but doing the same type of procedures for packages gives completely different results...

Ok, I don't find it odd, I find it frustrating.

#26 User is offline   powera 

  • Group: Members
  • Posts: 2
  • Joined: 14-November 04

Posted 14 June 2009 - 02:30 PM

check Technet Forum
http://social.technet.microsoft.com/Forums...e2-4135de8fe6b5

some files need expand cmd.

#27 User is offline   razormoon 

  • Little boots...!
  • PipPip
  • Group: Members
  • Posts: 216
  • Joined: 17-February 06

Posted 16 June 2009 - 07:53 PM

@powera

I owe you one.

Here is what I posted on that thread:

===========================================================================
"Working off of INSTALL.WIM of W7x86 7229 in c:\w7 directory.
Extracted nvidia 185.85_desktop_win7_32bit_english_whql.exe to C:\TEMP
EXPAND C:\TEMP\*.*_ C:\DRVRS\NVIDIA
Copied contents of C:\TEMP (minus *.*_) to C:\DRVRS\NVIDIA

At cmd prompt entered:

DISM /MOUNT-WIM /WIMFILE:C:\W7\SOURCES\INSTALL.WIM /INDEX:5 /MOUNTDIR:C:\TEMP
In case you're wondering, Windows 7 Ultimate resides in the 5th index of install.wim...index 4 of x64 install.wim.

DISM /IMAGE:C:\TEMP /ADD-DRIVER /DRIVER:C:\DRVRS\ /RECURSE
I also have audio and IR controller drivers in C:\DRVRS directory.../RECURSE assures that DISM will pick through each directory.

DISM /UNMOUNT-WIM /MOUNTDIR:C:\TEMP /COMMIT
======================================================================================

This post has been edited by razormoon: 16 June 2009 - 07:54 PM


#28 User is offline   Skauneboy 

  • Group: Members
  • Posts: 5
  • Joined: 17-January 08

Posted 17 June 2009 - 04:20 PM

Thanks for your efforts razormoon! I've struggled with the integration of ATI Catalyst drivers but the expand command made the difference. :thumbup Would be nice if Dism did that automatically though.

#29 User is offline   razormoon 

  • Little boots...!
  • PipPip
  • Group: Members
  • Posts: 216
  • Joined: 17-February 06

Posted 17 June 2009 - 05:29 PM

Please thank powera and expecially Andreas Weber @ TechNet for this, the missing piece was retaining the *.??_ (underscore) on the expanded files!
And I am sure that software pieces such as MaxXpSoft's Vista 7 UA and newer programmers will take advantage of this...

In eating my own words, I suppose this proves DISM's robustness....<dang it!! ...expecially>

This post has been edited by razormoon: 17 June 2009 - 05:55 PM


#30 User is offline   razormoon 

  • Little boots...!
  • PipPip
  • Group: Members
  • Posts: 216
  • Joined: 17-February 06

Posted 21 June 2009 - 05:22 PM

Pain in the butt having to expand files as soon as new drivers appear! For those of you that are interested in this driver quagmire, I have put together the following...copy and paste to notepad and save as filename.bat:

(Be sure to change the driver directory to match yours...this file can be run from anywhere regardless of driver directory)

 
REM @echo off
REM Batch file for conversion/expansion of any driver files that do not cooperate with Windows 7 DISM ADD-DRIVER due to compression.
REM This will also parse subdirectories and expand those files as well.
REM For visual confirmation, be sure to refresh your directory to view correct file sizes.

REM Location of original (untouched) driver directory	(user defined, don't forget trailing backslash)
SET DRVDIR=C:\DRIVERS\

REM Wildcard pattern to search for compressed files	(this example for nvidia, NVAPI.DL_)
SET WILDCARD=*.??_

REM Holds directory\filename of original compressed files 	(user defined, may be left unchanged)
SET DRIVERS=C:\DRVORG.TXT

REM Holds directory\filename of expanded files		(user defined, may be left unchanged)
SET EXPANDED=C:\DRVEXP.TXT

REM Creates log of commands
SET LOG=C:\COOLLOG.TXT

REM Pre-Cleanup
DEL %EXPANDED% /q
DEL %DRIVERS% /q
DEL %LOG% /q

REM  Creates standard text file with directory\filename of compressed files
for /f "tokens=1,2,3,4,5 delims= " %%A in ('dir /b /s %DRVDIR%%WILDCARD%') do echo %%A >> %DRIVERS%

REM  Creates second standard text file with directory\filename of expanded files (minus the third ext character (underscore))
for /f "tokens=1,2,3,4,5 delims=_" %%A in ('dir /b /s %DRVDIR%%WILDCARD%') do echo %%A >> %EXPANDED%

REM Expands files to same directory (expanded files now have only two character extension)
for /f "tokens=1,2,3,4,5 delims= " %%A in ('type %DRIVERS%') do EXPAND.EXE -R %%A >> %LOG%

REM Overwrites original files
for /f "tokens=1,2,3,4,5 delims= " %%A in ('type %EXPANDED%') do MOVE /Y %%A %%A_ >> %LOG%

REM Cleanup
DEL %EXPANDED% /q
DEL %DRIVERS% /q

EXIT
 


As an example, I store all my drivers in E:\driver\32 and E:\driver\64 - within each of these exists DISPLAY, AUDIO, USBUIRT, ETC. This batch will go through every directory if you point it to E:\Driver\. :)

Known issues: DO NOT add spaces to end of SET and FOR lines or anywhere else for that matter. Trust me!!
Have fun!!

This post has been edited by razormoon: 21 June 2009 - 06:14 PM


#31 User is offline   razormoon 

  • Little boots...!
  • PipPip
  • Group: Members
  • Posts: 216
  • Joined: 17-February 06

  Posted 30 August 2009 - 06:49 PM

Alright, there's obvious limitations to the batch file for this (think directory names with underscores...). I've left the batch and put something together in code for those of you that update drivers frequently, use dism and need to decompress many driver files at once.

Put the file anywhere and when prompted, point it to the ROOT directory of your drivers. It will save the driver directory for future runs and safely decompress driver files while keeping names intact.
If you want to start over (pick new root) just delete the *.ini file.

If there are any bugs to this ultra simple file, please let me know.

W7_DRVPREP

This post has been edited by razormoon: 03 September 2009 - 07:39 PM


#32 User is offline   hfeldman 

  • Group: Members
  • Posts: 2
  • Joined: 23-September 09

Posted 23 September 2009 - 08:23 AM

In case no one has figured it out yet

You have to expand the drivers first then run the inject

for example inside your driver directory run

expand *.* c:\target -- this will expand the all the files to the Directory c:\target

then run

dism /image:C:\mountpoint /add-driver /driver:"c:\target" /recurse

This worked for me. Hope it helps

Howard.

#33 User is offline   hfeldman 

  • Group: Members
  • Posts: 2
  • Joined: 23-September 09

Posted 23 September 2009 - 08:26 AM

In case no one has figured it out yet

You have to expand the drivers first then run the inject

for example inside your driver directory run

expand *.* c:\target -- this will expand the all the files to the Directory c:\target

then run

dism /image:C:\mountpoint /add-driver /driver:"c:\target" /recurse

This worked for me. Hope it helps

Howard.

This post has been edited by Tripredacus: 23 September 2009 - 02:17 PM
Reason for edit: removed url


#34 User is offline   razormoon 

  • Little boots...!
  • PipPip
  • Group: Members
  • Posts: 216
  • Joined: 17-February 06

Posted 26 September 2009 - 02:32 PM

Correct. You must uncompress files in order for DISM to behave.

#35 User is offline   maxXPsoft 

  • MSFN Master
  • Group: Developers
  • Posts: 2,747
  • Joined: 14-November 03
  • OS:Windows 7 x64
  • Country: Country Flag

Posted 03 October 2009 - 04:06 PM

then when you unmount you get
Processing 1 of 1 - Adding package Package_for_KB974332~31bf3856ad364e35~amd64~~6.1.1.1
[==========================100.0%==========================]
The operation completed successfully.


#36 User is offline   sp00f 

  • Friend of MSFN
  • PipPipPipPipPip
  • Group: Members
  • Posts: 712
  • Joined: 30-November 06

Posted 16 October 2009 - 06:01 PM

View PostmaxXPsoft, on Oct 4 2009, 12:06 AM, said:

then when you unmount you get
Processing 1 of 1 - Adding package Package_for_KB974332~31bf3856ad364e35~amd64~~6.1.1.1
[==========================100.0%==========================]
The operation completed successfully.

Thats a package, and not a driver :hello:

#37 User is offline   tomatthe 

  • Newbie
  • Group: Members
  • Posts: 27
  • Joined: 22-September 04

Posted 21 October 2009 - 07:48 AM

The thread was very helpful in sorting out video drivers for various machines. It may be nice to have the basic info from it stickied at the top of the forum.

#38 User is offline   neuropass 

  • Member
  • PipPip
  • Group: Members
  • Posts: 127
  • Joined: 09-September 08
  • OS:Windows 7 x64
  • Country: Country Flag

Posted 31 January 2010 - 07:28 PM

i don't understand... How do you expand the files???


Quote

1. downloaded nvidia installation file available at:
http://www.nvidia.co...aspx?lang=en-us
and for the GeForce 6800 driver:
http://www.nvidia.co...81.71_beta.html

2. doubleclick the file: 181.71_geforce_win7_32bit_international_beta.exe
extract the files to a temp dir like C:\temp\nvidia
close/finish the install program

3. expand all files with an underscore to a seperate directory *.??_
C:\temp\nvidia>expand.exe NvPVEnc.ax_ C:\temp\nvextr\NvPVEnc.ax_
C:\temp\nvidia>expand.exe nvcpl.cp_ C:\temp\nvextr\nvcpl.cp_
C:\temp\nvidia>expand.exe nvapi.dl_ C:\temp\nvextr\nvapi.dl_
... etc. (36 *.??_ files in 181.71_geforce_win7_32bit_international_beta.exe)

but beware to let the extension with the underscore untouched. After
extraction it should be the same name => *.??_
This is the expected name for the integration defined in nv_disp.inf

Copy the rest of the uncompressed files (files with no underscore) to the dir
where the expande files resides and use that path with /add-driver like:

dism.exe /image:C:\temp\mountdir /add-driver /driver:C:\temp\nvextr

(see below)


But now I have a big problem with the commit command. First I type:

dism.exe /mount-wim /wimfile:install.vim /index:1 /mountdir:G:\pub\win7mnt

and the vim file is mounting. After that I type

dism.exe /image:G:\pub\win7mnt /add-driver /driver:G:\pub\nvextr


#39 User is offline   MrJinje 

  • Tool™ Developer
  • Group: Developers
  • Posts: 942
  • Joined: 14-October 09
  • OS:none specified
  • Country: Country Flag

  Posted 01 February 2010 - 02:58 AM

View Postneuropass, on Jan 31 2010, 07:28 PM, said:

i don't understand... How do you expand the files???


Easy way is to install them into a live OS, then use something like Driver Magician Lite to export them. Here is the link for the portable version.
http://www.drivermag...PortableDML.zip

#40 User is offline   neuropass 

  • Member
  • PipPip
  • Group: Members
  • Posts: 127
  • Joined: 09-September 08
  • OS:Windows 7 x64
  • Country: Country Flag

Posted 01 February 2010 - 08:57 PM

Thanks for your reply i got it to work..

Share this topic:


  • 3 Pages +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

2 User(s) are reading this topic
0 members, 2 guests, 0 anonymous users



All trademarks mentioned on this page are the property of their respective owners
Copyright © 2001 - 2013 msfn.org
Privacy Policy