Jump to content

Recommended Posts

Posted

Hello,

I've a problem with new hardware drivers, which use a own setup for installation on W7.

For example TouchPad driver need .net 4 and a own setup.exe or a graphics driver with need a special setup too, etc.

Currently I use the "old" $oem$ method with success on several different hardware types (DELL Latitude/Optiplex/Precision, HP...)

During PE boot (boot by PXE no WDS) I check the hardware model, grab data about computername, partition sizes, local admin password, needed apps from the admin in a formular.

After this the autounattend.xml will be filled with these data and the installation will be started with the command ..\Win7Profx86enu\setup.exe and several parameters:

Script based on AutoIT, like this:


. . .
$rc = RunWait($pxeinstdir & "\Win7Profx86enu\setup.exe " _
& "/installfrom:" & $pxeinstdir & "\" & $wim_src_dir & "\install.wim " _
& "/m:" & $pxeinstdir & "\" & $WithApp & "\$oem$ " _
& "/noreboot " _
& "/unattend:" & $SYSPREPFile)
. . .

I use two different WIM files, one for 32 bit and one for 64 bit and the admin can decide, if he want to install with or without apps.

After installation of W7 we install, dependent on the site/language, differnt additional apps.

It's all working fine, except the special hardware drivers, which cannot be installed with the $oem$ method.

My idea was to add the special drivers (model dependent) as DataImage in the autounattend.xml file, but everytime I got a error message, that

"windows cannot install the data image files specified in the answer file"

I created the data image as described in MS doc: "imagex /capture C:\Data\DataFiles C:\Data\MyData.wim "MyData""

A part of my XML, example Latitude E5420:


<settings pass="windowsPE">
<component name="Microsoft-Windows-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ImageInstall>
<OSImage>
<InstallToAvailablePartition>false</InstallToAvailablePartition>
<WillShowUI>OnError</WillShowUI>
<InstallTo>
<PartitionID>2</PartitionID>
<DiskID>0</DiskID>
</InstallTo>
</OSImage>
<DataImage wcm:action="add">
<InstallTo>
<DiskID>0</DiskID>
<PartitionID>1</PartitionID>
</InstallTo>
<InstallFrom>
<Path>H:\\Out-of-Box Drivers\X86\Latitude E5420\Special\E5420.wim</Path>
</InstallFrom>
<Order>1</Order>
</DataImage>
</ImageInstall>
<UserData>
<ProductKey>
<WillShowUI>OnError</WillShowUI>
</ProductKey>
<AcceptEula>true</AcceptEula>
<Organization>faurecia</Organization>
</UserData>
</component>
</settings>
<settings pass="offlineServicing">
<component name="Microsoft-Windows-PnpCustomizationsNonWinPE" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<DriverPaths>
<PathAndCredentials wcm:keyValue="1" wcm:action="add">
<Path>H:\\Out-of-Box Drivers\X86\Latitude E5420</Path>
</PathAndCredentials>
</DriverPaths>
</component>
</settings>

Perhaps the path to the wim file is wrong or the entry is used in the wrong section of the XML or I need a additional XML (how to start it with command line?) or something else...

Or someone has a idea, how to hide the automatic deletion of the "Out-of-Box Drivers" folder from drive C: after driver installation... then I can do it like I did on XP....

Regards

ahe


Posted

Just an idea, but maybe the "special" drivers are "normal" drivers that some senseless developer :ph34r: nicely wrapped in a .Net based installer. :unsure:

I.e. maybe it is possible to extract from the "special" driver file/setup some actual "normal" driver file compatible with the $oem$ approach.

jaclaz

Posted

Indeed - I find a lot of times you can simply install the target OS on that hardware, add all drivers, and then use a tool like Driver Magician to extract those drivers to use with your deployment solution later.

Posted

Thank your for your replies and ideas.

I tried that, but the application (nVidia graphic card configuration panel, ATI graphic card configuration panel, Dell TouchPad configuration, etc.) use .net 4 functions in their GUI's... :blink:, so you get a error if you want to start their GUI's or some functions are not usable.

So I've no chance, I have to install .net 4 and then these apps, dependent of the hardware, after W7 OS base installation... like I do with other apps.

(the drivers need only 5MB, but the GUI need 150MB :wacko: plus .net 4...)

Regards

ahe

Posted

The problem with using something like Driver Magician, is that it doesn't grab the programs, just whatever files are referenced by the INF. In cases where the drivers alone are not enough, I have my deployments scripted to install the appropriate software. I only have to do this for Notebooks and motherboards with ATI or nVidia graphics.

Posted

Yes, if you do actually want those programs, you'll need to install them. You should still add the base drivers to your installation sequence, so that you at least have video or network working when you start - then use WMI filtering or other logic to install the apps post-deploy as necessary. This is how I do it, and how many others do this as well (as you can see from Trip's post).

Posted (edited)
DELL Latitude/Optiplex/Precision, HP...

I assume some are older just based on the variety and type of Dells (maybe not, just our optiplexs are 5 years old). Nonetheless, if you have not given uniextract or 7-zip a chance to extract those .exes, I would do so and see if you get lucky. Additionally I would check on the original systems to see if the driver being used is signed. You could very well spend time getting the correct driver files, only to find out they still do not play nicely during an unattended install (we only had to do that 3 or 4 times before we opted for some after install actions).

Edited by iamtheky

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...