Jump to content

Driver Integration using autoit


JimC
 Share

Recommended Posts

Hello, I have written a gui using autoit to create a unattended cd. I used the attached utility via autoit to integrate drivers into the XP source, but i crashes all the time and it is annoying. Any who i would like to see if it can be coded to be completey done in autoit. I will explain how the process works:

You have a directory stucture that houses the drivers like: Driver/1c and subdirs containing the drivers for the chipset

/2v and subdirs containing the drivers for video

and so on for the rest of the dirvers.

Each directory contains the drivers for said devices and an .inf file for that driver(There may be more than 1 inf in each directory). The important thing is the [sourceDisksFiles] Section of the inf. This outlines the files that are necesarry for the driver to work.

1)The process is top copy this driver structure to the I386\Drivers directory

2)Search each subdir for an inf file and verify all the files in the [sourceDisksFiles] Section exists If it does it can be integrated and if not then flag dir so cant be integrated

3)for each driver the txtsetup.sif needs to be modified in the I386 directory of the xp source

a)The section [sourceDiskNames.x86] needs to be appended to with the folowing, add the following directories starting with 1001 and adding one for each directory

1001= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\6-d"

1002= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\5-m\Sp360004"

1003= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\5-m\R53654"

1004= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\5-m\R147115"

1005= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\5-m\R114200"

1006= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\5-m\R104087"

1007= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\sp34152"

1008= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\R97592"

1009= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\R97582"

1010= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\R87461"

1011= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\R66787"

1012= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\R151972"

1013= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\R133052"

1014= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\R132254"

1015= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\4-n\R116101"

1016= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\SP35475"

1017= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\SP34030"

1018= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\SP34030\KB888111"

1019= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\R99254\WDM"

1020= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\R97809"

1021= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\R90698"

1022= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\R58182"

1023= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\R56339"

1024= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\R153908"

1025= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\R122161"

1026= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\3-a\R105155"

1027= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\sp35359"

1028= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\sp35359\B_42812"

1029= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\SP33525"

1030= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\SP33525\B_34944"

1031= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R88792"

1032= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R68764"

1033= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R68764\B_10679"

1034= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R58746"

1035= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R156712\HDMI"

1036= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R156712\Graphics"

1037= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R137843"

1038= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R126991"

1039= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\2-v\R126542"

1040= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\SP33927"

1041= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R99397"

1042= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R99394"

1043= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R96614"

1044= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R96614\SP"

1045= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R153997"

1046= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R131562"

1047= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R118436"

1048= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R114084"

1049= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R114079"

1050= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R114079\SP"

1051= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R111550"

1052= %cdname%,%cdtagfilei%,,"\i386\DRIVERS\1-c\R111541"

b)You would need to append the [WinntDirectories] section of this file starting with 1001 and adding an entry for every directory

1001= "DRIVERS\6-d"

1002= "DRIVERS\5-m\Sp360004"

1003= "DRIVERS\5-m\R53654"

1004= "DRIVERS\5-m\R147115"

1005= "DRIVERS\5-m\R114200"

1006= "DRIVERS\5-m\R104087"

1007= "DRIVERS\4-n\sp34152"

1008= "DRIVERS\4-n\R97592"

1009= "DRIVERS\4-n\R97582"

1010= "DRIVERS\4-n\R87461"

1011= "DRIVERS\4-n\R66787"

1012= "DRIVERS\4-n\R151972"

1013= "DRIVERS\4-n\R133052"

1014= "DRIVERS\4-n\R132254"

1015= "DRIVERS\4-n\R116101"

1016= "DRIVERS\3-a\SP35475"

1017= "DRIVERS\3-a\SP34030"

1018= "DRIVERS\3-a\SP34030\KB888111"

1019= "DRIVERS\3-a\R99254\WDM"

1020= "DRIVERS\3-a\R97809"

1021= "DRIVERS\3-a\R90698"

1022= "DRIVERS\3-a\R58182"

1023= "DRIVERS\3-a\R56339"

1024= "DRIVERS\3-a\R153908"

1025= "DRIVERS\3-a\R122161"

1026= "DRIVERS\3-a\R105155"

1027= "DRIVERS\2-v\sp35359"

1028= "DRIVERS\2-v\sp35359\B_42812"

1029= "DRIVERS\2-v\SP33525"

1030= "DRIVERS\2-v\SP33525\B_34944"

1031= "DRIVERS\2-v\R88792"

1032= "DRIVERS\2-v\R68764"

1033= "DRIVERS\2-v\R68764\B_10679"

1034= "DRIVERS\2-v\R58746"

1035= "DRIVERS\2-v\R156712\HDMI"

1036= "DRIVERS\2-v\R156712\Graphics"

1037= "DRIVERS\2-v\R137843"

1038= "DRIVERS\2-v\R126991"

1039= "DRIVERS\2-v\R126542"

1040= "DRIVERS\1-c\SP33927"

1041= "DRIVERS\1-c\R99397"

1042= "DRIVERS\1-c\R99394"

1043= "DRIVERS\1-c\R96614"

1044= "DRIVERS\1-c\R96614\SP"

1045= "DRIVERS\1-c\R153997"

1046= "DRIVERS\1-c\R131562"

1047= "DRIVERS\1-c\R118436"

1048= "DRIVERS\1-c\R114084"

1049= "DRIVERS\1-c\R114079"

1050= "DRIVERS\1-c\R114079\SP"

1051= "DRIVERS\1-c\R111550"

1052= "DRIVERS\1-c\R111541

c) You would need to append the [sourceDisksFiles.x86] section of this file starting with 1001 and adding an entry for every file listed in the [sourceDisksFiles] of the .inf for each inf file in each driver directory

If there is a cat file that exists in the directory it needs to be added to this list as well.

AGRMDwxp.cat = 1002,,,,,,,1002,0,0

AGRMDwxp.inf = 1002,,,,,,,1002,0,0

AGRSM.sys = 1002,,,,,,,1002,0,0

agrsmdel.exe = 1002,,,,,,,1002,0,0

hpq0033m.cat = 1002,,,,,,,1002,0,0

hpq0033m.inf = 1002,,,,,,,1002,0,0

hpqZ3795.cat = 1002,,,,,,,1002,0,0

hpqZ3795.inf = 1002,,,,,,,1002,0,0

HSFHWAZL.sys = 1002,,,,,,,1002,0,0

HSFProf.cty = 1002,,,,,,,1002,0,0

HSF_CNXT.sys = 1002,,,,,,,1002,0,0

HSF_DPV.sys = 1002,,,,,,,1002,0,0

mdmxsdk.dll = 1002,,,,,,,1002,0,0

mdmxsdk.sys = 1002,,,,,,,1002,0,0

UCI32M19.dll = 1002,,,,,,,1002,0,0

UIU32m.exe = 1002,,,,,,,1002,0,0

4)The next thing you need to do is modify the doesnet.inf file in the I386 directory of the xp source

a) The [Directories] section of the file needs to be appended for entries for each directory in the driver structure starting with 1001 with a prefix of "d"

d1001= "\i386\DRIVERS\6-d"

d1002= "\i386\DRIVERS\5-m\Sp360004"

d1003= "\i386\DRIVERS\5-m\R53654"

d1004= "\i386\DRIVERS\5-m\R147115"

d1005= "\i386\DRIVERS\5-m\R114200"

d1006= "\i386\DRIVERS\5-m\R104087"

d1007= "\i386\DRIVERS\4-n\sp34152"

d1008= "\i386\DRIVERS\4-n\R97592"

d1009= "\i386\DRIVERS\4-n\R97582"

d1010= "\i386\DRIVERS\4-n\R87461"

d1011= "\i386\DRIVERS\4-n\R66787"

d1012= "\i386\DRIVERS\4-n\R151972"

d1013= "\i386\DRIVERS\4-n\R133052"

d1014= "\i386\DRIVERS\4-n\R132254"

d1015= "\i386\DRIVERS\4-n\R116101"

d1016= "\i386\DRIVERS\3-a\SP35475"

d1017= "\i386\DRIVERS\3-a\SP34030"

d1018= "\i386\DRIVERS\3-a\SP34030\KB888111"

d1019= "\i386\DRIVERS\3-a\R99254\WDM"

d1020= "\i386\DRIVERS\3-a\R97809"

d1021= "\i386\DRIVERS\3-a\R90698"

d1022= "\i386\DRIVERS\3-a\R58182"

d1023= "\i386\DRIVERS\3-a\R56339"

d1024= "\i386\DRIVERS\3-a\R153908"

d1025= "\i386\DRIVERS\3-a\R122161"

d1026= "\i386\DRIVERS\3-a\R105155"

d1027= "\i386\DRIVERS\2-v\sp35359"

d1028= "\i386\DRIVERS\2-v\sp35359\B_42812"

d1029= "\i386\DRIVERS\2-v\SP33525"

d1030= "\i386\DRIVERS\2-v\SP33525\B_34944"

d1031= "\i386\DRIVERS\2-v\R88792"

d1032= "\i386\DRIVERS\2-v\R68764"

d1033= "\i386\DRIVERS\2-v\R68764\B_10679"

d1034= "\i386\DRIVERS\2-v\R58746"

d1035= "\i386\DRIVERS\2-v\R156712\HDMI"

d1036= "\i386\DRIVERS\2-v\R156712\Graphics"

d1037= "\i386\DRIVERS\2-v\R137843"

d1038= "\i386\DRIVERS\2-v\R126991"

d1039= "\i386\DRIVERS\2-v\R126542"

d1040= "\i386\DRIVERS\1-c\SP33927"

d1041= "\i386\DRIVERS\1-c\R99397"

d1042= "\i386\DRIVERS\1-c\R99394"

d1043= "\i386\DRIVERS\1-c\R96614"

d1044= "\i386\DRIVERS\1-c\R96614\SP"

d1045= "\i386\DRIVERS\1-c\R153997"

d1046= "\i386\DRIVERS\1-c\R131562"

d1047= "\i386\DRIVERS\1-c\R118436"

d1048= "\i386\DRIVERS\1-c\R114084"

d1049= "\i386\DRIVERS\1-c\R114079"

d1050= "\i386\DRIVERS\1-c\R114079\SP"

d1051= "\i386\DRIVERS\1-c\R111550"

d1052= "\i386\DRIVERS\1-c\R111541"

:) The next thing you need to do is append the [Files] section of this file with entries in the [sourceDisksFiles] of the .inf for each inf file in each driver directory

If there is a cat file that exists in the directory it needs to be added to this list as well.

d1002,AGRMDwxp.cat

d1002,AGRMDwxp.inf

d1002,AGRSM.sys

d1002,agrsmdel.exe

d1002,hpq0033m.cat

d1002,hpq0033m.inf

d1002,hpqZ3795.cat

d1002,hpqZ3795.inf

d1002,HSFHWAZL.sys

d1002,HSFProf.cty

d1002,HSF_CNXT.sys

d1002,HSF_DPV.sys

d1002,mdmxsdk.dll

d1002,mdmxsdk.sys

d1002,UCI32M19.dll

d1002,UIU32m.exe

5) The last thing that needs to happen is that we need to compress every file in each directory in the i386\Drivers\ subdir except for the .inf and .cat files using the makecab utility

I know this sounds like a complicated process , but my big promlem is how to seach directories then search for sections in the .inf files. I thought I could use the inireadsection function but that wont work becasue these are inf.

Any help you can provide to start this would be greatly appreciated.

DriverCompressor.7z

Edited by JimC
Link to comment
Share on other sites

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
 Share

  • Recently Browsing   0 members

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