Is it possible in conjunction with SETUPCOPYOEM.EXE? To pre-copy oem inf files with a batch file...
#1
Posted 08 April 2006 - 09:25 AM
I'll ask directly.Is it possible to pre-copy the inf files which are in driverpacks (7zipped or else doesnt matter) to windows/inf folder and again pre-add those inf entries into the registry just before setup ends by a prepared silent winrar sfx ? The reason why I am asking this is that, everytime ı install windows to a system, it takes so much time to integrate the infs to the installation and setupcopyoeminf.exe integrates every inf file one by one very very slowly.
I mean it would be great if we can prepare a winrar silent sfx so to install these infs quickly and silently and add the registry entries as needed.By the way, I know that everytime I change my driverpack content, I must re-prepare this winrar sfx again but I only want to know is it enough only to put the oem infs and reg entries and add the sfx comment? Or should I first make a virtual pc clean installation and then after setup, gather all infs, Or should I just gather the infs from the driverpacks directly?
Plase I wanna decrease the time of my setup and want also all the drivers recognized and integrated after windows windows setup.
Thanks in advance..
#2
Posted 08 April 2006 - 12:04 PM
I did a full reinstall on my wife's laptop about a month ago, and just today I decided to try this out and worked perfectly. My method does not use setupcopyoeminf.exe. Instead I simply copy over the drivers to %SystemRoot%\D and run SetDevicePath.exe against that directory. The script will even cab up the compressable files if you want.
One benefit is that you can easily come back to the computer a month or however long later, delete the driver directory, run my script again and you'll now have builtin support for the latest drivers. I'm not too comfortable with the way that setupcopyoeminf.exe works so I came up with this method.
#3
Posted 09 April 2006 - 01:59 AM
RogueSpear, on Apr 8 2006, 12:04 PM, said:
I did a full reinstall on my wife's laptop about a month ago, and just today I decided to try this out and worked perfectly. My method does not use setupcopyoeminf.exe. Instead I simply copy over the drivers to %SystemRoot%\D and run SetDevicePath.exe against that directory. The script will even cab up the compressable files if you want.
One benefit is that you can easily come back to the computer a month or however long later, delete the driver directory, run my script again and you'll now have builtin support for the latest drivers. I'm not too comfortable with the way that setupcopyoeminf.exe works so I came up with this method.
Thanks for the info and forwarding me to to your page.I believe your script is useful and I will try to use it in the future but my point was to pre-copy especially the pnf files, which I suppose includes the path information to the drivers.Let me explain more precisely;
For example, suppose I have my drivers in c:\windows\d folder, precopied by windows setup.At the end of setup I do not want to use setupcopyoeminf.exe because it takes so much time.And for this reason I setup windows to a virtual machine and setupcopyoeminf.exe does its job for me for once.And after that I figure out the oem<sequence number>.inf and oem<sequencenumber>.pnf files and prepare a silent sfx so that instead of setupcopyoeminf.exe, it extracts all the pnf and inf files to windows\inf dir.
My point is exactly as above.
#6
Posted 09 April 2006 - 06:30 PM
One of the problems I have with setupcopyoeminf.exe is recovering from it. It doesn't seem so easily reversed.
#7
Posted 12 April 2006 - 04:28 AM
donjuan, on Apr 9 2006, 01:59 AM, said:
For example, suppose I have my drivers in c:\windows\d folder, precopied by windows setup.At the end of setup I do not want to use setupcopyoeminf.exe because it takes so much time.And for this reason I setup windows to a virtual machine and setupcopyoeminf.exe does its job for me for once.And after that I figure out the oem<sequence number>.inf and oem<sequencenumber>.pnf files and prepare a silent sfx so that instead of setupcopyoeminf.exe, it extracts all the pnf and inf files to windows\inf dir.
It might work, however you will not have the .cat files (driver signature) in your %windir%\system32\CatRoot\{GUID} directory and there will be errors in %windir%\setupapi.log, because the API call SetupCopyOEMInf (that's why this tool has its strange name
Hopefully we will see an improved version of setupapi.dll that will handle the API call SetupCopyOEMInf faster in XP SP3.
#8
Posted 12 April 2006 - 04:58 AM
RogueSpear, on Apr 9 2006, 06:30 PM, said:
...
One of the problems I have with setupcopyoeminf.exe is recovering from it. It doesn't seem so easily reversed.
The API call SetupCopyOEMInf (part of setupapi.dll) will do the following things:
- copy the INF file to %windir%\inf\oem<sequencenumber>.inf
- create %windir%\inf\oem<sequencenumber>.PNF
PNF files are very important because they contain the path to the original location of the INF file. That's the way Windows finds the driver files when it wants to install the driver.
- update the %windir%\inf\INFCACHE.1
INFCACHE.1 is an Index file that will allow Windows PnP to find a driver very quickly
PLUS if it is a signed driver:
- copy the CAT file to %windir%\system32\CatRoot\<GUID>\oem<sequencenumber>.CAT
- update the Signature Catalogs %windir%\system32\CatRoot2\.......
This is the official way how Microsoft wants OEMs to integrate their device drivers in Windows 2K/XP/2K3. Not all OEMs do it this way, though
To recover from SetupCopyOEMInf.exe means to:
- delete the correct %windir%\inf\oem<sequencenumber>.inf
- delete the corresponding %windir%\inf\oem<sequencenumber>.PNF
- delete the corresponding %windir%\system32\CatRoot\<GUID>\oem<sequencenumber>.CAT (if it is a signed driver)
I'm not sure about a mechanism that will clean %windir%\inf\INFCACHE.1 and the Signature Catalogs. Maybe when Windows will install a driver it will clean up those.
This post has been edited by schalti: 12 April 2006 - 05:02 AM
#9
Posted 12 April 2006 - 06:31 AM
- update the Signature Catalogs %windir%\system32\CatRoot2\.......
- update the %windir%\inf\INFCACHE.1
maybe there are some dllcalls or so? If i remember right shalti you had some .bat files that were doing the SetupCopyOemInf procedure that was later on taken by pyron with his program.
@shalti Hope you can give us much info as you can on this. Maybe then i could implement it in my Hardware Installer program.
#10
Posted 12 April 2006 - 06:59 AM
MadBoy, on Apr 12 2006, 06:31 AM, said:
- update the Signature Catalogs %windir%\system32\CatRoot2\.......
- update the %windir%\inf\INFCACHE.1
maybe there are some dllcalls or so? If i remember right shalti you had some .bat files that were doing the SetupCopyOemInf procedure that was later on taken by pyron with his program.
@shalti Hope you can give us much info as you can on this. Maybe then i could implement it in my Hardware Installer program.
I don't think it is possible to rewrite SetupCopyOEMInf because it is an API call of setupapi.dll. You would have to disassemble setupapi.dll and write your own optimized DLL/EXE which is almost impossible. The reason why I asked Pyron to write the tool was because he already had written the tool SetDevicePath.exe which also crawls through a subdirectory structure looking for INF files. So he could use most of his existing source code. What he does in SetupCopyOEMInf.exe is to call SetupCopyOEMInf with every INF file instead of writing the path of every INF file in a list and put the list in HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DevicePath as REG_EXPAND_SZ.
This whole setupapi.dll is like a black box and all we can do is to use the documented API call SetupCopyOEMInf (MSDN on SetupCopyOEMInf).
The batch files that were online for a while are useless because they call the very same API in the end but in an even slower manner. They build an INF file and in the [DefaultInstall] Section use the INF-command CopyINF (WHDC on CopyINF) which as you can see in the documentation uses the very same API call SetupCopyOEMInf in the end. So it is even slower to use this method, and you cannot speed it up.
Bad news, I know, maybe M$ will speed up the SetupCopyOEMInf API call in XP SP3 or Vista/Longhorn Server, although I hear that there are new methods for driver integration in Vista.
This post has been edited by schalti: 12 April 2006 - 07:01 AM
#11
Posted 12 April 2006 - 08:10 AM
#12
Posted 12 April 2006 - 10:12 AM
MadBoy, on Apr 12 2006, 08:10 AM, said:
SetDevicePath.exe is a different story
SetupCopyOEMInf is an API call in the Windows DLL setupapi.dll.
Shell script / pseudo code like this:
for /F "usebackq delims=" %%i in (`dir /S /B "%~dp0*.inf"`) do call setupapi.dll->SetupCopyOEMInf(%%i)
So you run the API call SetupCopyOEMInf from setupapi.dll with each INF file you find in the subdirectory structure. That's how Pyron's SetupCopyOEMInf.exe works.
It is possible to do an API call to a windows DLL from inside an AutoIt Script (DllOpen, DllCall, DllClose), so you can integrate SetupCopyOEMInf in your tool. I can hardly wait to see if it will be faster but I doubt it.
Like this:
$dll = DllOpen("setupapi.dll")
<loop through all INF files>
$result = DllCall($dll, "int","SetupCopyOEMInf", "<INF-Filename including path>", "", 1, 8, "", 0, 0, "")
<loop next>
DllClose($dll)
Please follow the "MSDN on SetupCopyOEMInf"-Link in the other post to find out about the parameters for the API call.
BOOL WINAPI SetupCopyOEMInf(
PCTSTR SourceInfFileName, <--- important
PCTSTR OEMSourceMediaLocation, <--- NULL
DWORD OEMSourceMediaType, <--- important, set flag SPOST_PATH (1)
DWORD CopyStyle, <--- important, set at least flag SP_COPY_NOOVERWRITE (8)
PTSTR DestinationInfFileName, <--- NULL
DWORD DestinationInfFileNameSize, <--- NULL
PDWORD RequiredSize, <--- NULL
PTSTR DestinationInfFileNameComponent <--- NULL
);
See also here:
pinvoke on SetupCopyOEMInf
Hope this helps and you will get the idea
This post has been edited by schalti: 12 April 2006 - 10:35 AM
#13
Posted 12 April 2006 - 11:01 AM
BOOL SetupUninstallOEMInf(
PCWSTR InfFileName,
DWORD Flags,
PVOID Reserved
);
#14
Posted 12 April 2006 - 01:39 PM
DllCall($dll_exe, "int","SetupCopyOEMInf", $full_path_to_inf, "", 1, 8, "", 0, 0, "")
I'll try to work it out tommorow but any suggestions are welcome ;p
#15
Posted 12 April 2006 - 03:22 PM
MadBoy, on Apr 12 2006, 01:39 PM, said:
DllCall($dll_exe, "int","SetupCopyOEMInf", $full_path_to_inf, "", 1, 8, "", 0, 0, "")
I'll try to work it out tommorow but any suggestions are welcome ;p
Oops i just checked the syntax of DllCall again, it seems you have to pass the datatype with each parameter also.
Try the following:
DllCall($dll_exe, "int", "SetupCopyOEMInf", "str", $full_path_to_inf, "str", "", "int", 1, "int", 8, "str", "", "int", 0, "int", 0, "str", "")
If it doesn't work try to play with the datatype, the first "int" might be "none", "str" might be "wstr" if you are using Unicode.
#16
Posted 13 April 2006 - 02:45 AM
[10:30:53] - Detecting Windows version - Windows XP x32 [10:30:53] - Detecting number of devices in system. [10:30:53] - Found 134 devices without any problems. [10:30:53] - Checking for drivers directory existance. [10:30:53] - Drivers directory (e:\Drivers) exist. [10:30:54] - Manual start used - Waiting for orders. [10:30:55] - Integrating drivers with SetupCopyOemInf method. [10:31:00] - Advanced Output: Inf integrated failed: e:\Drivers\1SA207WW\SMAXWDM\SE\SMWDMALI.INF [10:31:00] - Advanced Output: Inf integrated failed: e:\Drivers\1SA207WW\SMAXWDM\W2K_XP\SMWDMALI.INF [10:31:02] - Advanced Output: Inf integrated failed: e:\Drivers\1SRO15WW\WIN2K\B57W2K.INF [10:31:03] - Advanced Output: Inf integrated failed: e:\Drivers\1SRO15WW\WINXP\B57XP32.INF [10:31:04] - Advanced Output: Inf integrated failed: e:\Drivers\1YG409WW\tp4win2k.inf [10:31:09] - Advanced Output: Inf integrated failed: e:\Drivers\70CN23WW\RSTRCLMG.INF [10:31:11] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\dk.inf [10:31:13] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\fi.inf [10:31:15] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\fr.inf [10:31:16] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\gr.inf [10:31:17] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\it.inf [10:31:18] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\jp.inf [10:31:19] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\ne.inf [10:31:20] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\no.inf [10:31:21] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\sp.inf [10:31:22] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\sv.inf [10:31:23] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EKEYAGT\us.inf [10:31:25] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\EZBTNS\JP\EZBTNS.INF [10:31:26] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\FLPTOUCH\Flptouch.inf [10:31:28] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\DK.INF [10:31:29] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\FI.INF [10:31:30] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\FR.INF [10:31:31] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\GR.INF [10:31:32] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\IT.INF [10:31:34] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\JP.INF [10:31:35] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\NE.INF [10:31:36] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\NO.INF [10:31:37] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\SP.INF [10:31:38] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\SV.INF [10:31:39] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\OSD\US.INF [10:31:41] - Advanced Output: Inf integrated failed: e:\Drivers\75VU08WW\ZOOM\TpScrEx.inf [10:31:42] - Advanced Output: Inf integrated failed: e:\Drivers\AUDIO\SMWDMALI.INF [10:31:44] - Advanced Output: Inf integrated failed: e:\Drivers\MODEM\AGRMDWXP.INF [10:31:45] - Advanced Output: Inf integrated failed: e:\Drivers\NETWORK\AEIWLNIC.INF [10:31:46] - Advanced Output: Inf integrated failed: e:\Drivers\NETWORK\WIN2K\B57W2K.INF [10:31:49] - Advanced Output: Inf integrated failed: e:\Drivers\NETWORK\WINXP\B57XP32.INF [10:31:50] - Advanced Output: Inf integrated failed: e:\Drivers\OTHER\BLUTOOTH.INF [10:31:51] - Advanced Output: Inf integrated failed: e:\Drivers\OTHER\IBMPMDRV.INF [10:31:52] - Advanced Output: Inf integrated failed: e:\Drivers\OTHER\IBMTPLCD.INF [10:31:53] - Advanced Output: Inf integrated failed: e:\Drivers\OTHER\TP4WIN2K.INF [10:31:54] - Advanced Output: Inf integrated failed: e:\Drivers\VIDEO\CX_06991.INF [10:31:55] - Advanced Output: Inf integrated failed: e:\Drivers\VIDEO\CX_06992.INF [10:31:56] - Advanced Output: Inf integrated failed: e:\Drivers\VIDEO\PHILDECN.INF [10:31:58] - Advanced Output: Inf integrated failed: e:\Drivers\VIDEO\WIN2K\GARTNT.INF [10:31:59] - Advanced Output: Inf integrated failed: e:\Drivers\VIDEO\WINXP\GARTNT.INF [10:32:00] - Advanced Output: Inf integrated failed: e:\Drivers\1OMA23WW\nt4\agrmdnt4.inf [10:32:00] - Advanced Output: Inf integrated failed: e:\Drivers\1OMA23WW\w2kxp\AGRMDwxp.inf [10:32:05] - Advanced Output: Inf integrated failed: e:\Drivers\1OMA23WW\w98\AGRMDvxd.inf [10:32:06] - Advanced Output: Inf integrated failed: e:\Drivers\1OMA23WW\wme\AGRMDMEE.inf [10:32:11] - Advanced Output: Inf integrated failed: e:\Drivers\1OMA23WW\wme\AGRMDMEM.inf [10:32:13] - Advanced Output: Inf integrated failed: e:\Drivers\1RD631WW\DRIVER\2KXP_INF\C2_21425.INF [10:32:15] - Advanced Output: Inf integrated failed: e:\Drivers\1RD631WW\DRIVER\2KXP_INF\CX_21425.INF [10:32:16] - Advanced Output: Inf integrated failed: e:\Drivers\1RD631WW\PHILDEC\WDM_2K\PHILDEC.INF [10:32:17] - Advanced Output: Inf integrated failed: e:\Drivers\1RD631WW\PHILDEC\WDM_XP\PHILDECN.INF [10:32:17] - TheENd
Hehe fixed it.. call me id*** ;p Timeings for this log are for inf's that are already integrated. But timeings in my last post gives like 1 inf per second (keep in mind that i have USB 1.1 with drivers so it slows down the whole process a lot i think). Anyway it needs testing
[10:42:39] - Integrating drivers with SetupCopyOemInf method. [10:42:42] - Advanced Output: Inf integrated ok: e:\Drivers\1SA207WW\SMAXWDM\SE\SMWDMALI.INF [10:42:42] - Advanced Output: Inf integrated ok: e:\Drivers\1SA207WW\SMAXWDM\W2K_XP\SMWDMALI.INF [10:42:43] - Advanced Output: Inf integrated ok: e:\Drivers\1SRO15WW\WIN2K\B57W2K.INF [10:42:43] - Advanced Output: Inf integrated ok: e:\Drivers\1SRO15WW\WINXP\B57XP32.INF [10:42:44] - Advanced Output: Inf integrated ok: e:\Drivers\1YG409WW\tp4win2k.inf [10:42:44] - Advanced Output: Inf integrated ok: e:\Drivers\70CN23WW\RSTRCLMG.INF [10:42:45] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\dk.inf [10:42:45] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\fi.inf [10:42:45] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\fr.inf [10:42:45] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\gr.inf [10:42:45] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\it.inf [10:42:45] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\jp.inf [10:42:46] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\ne.inf [10:42:46] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\no.inf [10:42:46] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\sp.inf [10:42:46] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\sv.inf [10:42:46] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EKEYAGT\us.inf [10:42:46] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\EZBTNS\JP\EZBTNS.INF [10:42:46] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\FLPTOUCH\Flptouch.inf [10:42:46] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\DK.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\FI.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\FR.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\GR.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\IT.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\JP.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\NE.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\NO.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\SP.INF [10:42:47] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\SV.INF [10:42:48] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\OSD\US.INF [10:42:48] - Advanced Output: Inf integrated ok: e:\Drivers\75VU08WW\ZOOM\TpScrEx.inf [10:42:48] - Advanced Output: Inf integrated ok: e:\Drivers\AUDIO\SMWDMALI.INF [10:42:48] - Advanced Output: Inf integrated ok: e:\Drivers\MODEM\AGRMDWXP.INF [10:42:48] - Advanced Output: Inf integrated ok: e:\Drivers\NETWORK\AEIWLNIC.INF [10:42:49] - Advanced Output: Inf integrated ok: e:\Drivers\NETWORK\WIN2K\B57W2K.INF [10:42:49] - Advanced Output: Inf integrated ok: e:\Drivers\NETWORK\WINXP\B57XP32.INF [10:42:49] - Advanced Output: Inf integrated ok: e:\Drivers\OTHER\BLUTOOTH.INF [10:42:49] - Advanced Output: Inf integrated ok: e:\Drivers\OTHER\IBMPMDRV.INF [10:42:50] - Advanced Output: Inf integrated ok: e:\Drivers\OTHER\IBMTPLCD.INF [10:42:50] - Advanced Output: Inf integrated ok: e:\Drivers\OTHER\TP4WIN2K.INF [10:42:50] - Advanced Output: Inf integrated ok: e:\Drivers\VIDEO\CX_06991.INF [10:42:50] - Advanced Output: Inf integrated ok: e:\Drivers\VIDEO\CX_06992.INF [10:42:50] - Advanced Output: Inf integrated ok: e:\Drivers\VIDEO\PHILDECN.INF [10:42:51] - Advanced Output: Inf integrated ok: e:\Drivers\VIDEO\WIN2K\GARTNT.INF [10:42:51] - Advanced Output: Inf integrated ok: e:\Drivers\VIDEO\WINXP\GARTNT.INF [10:42:51] - Advanced Output: Inf integrated ok: e:\Drivers\1OMA23WW\nt4\agrmdnt4.inf [10:42:51] - Advanced Output: Inf integrated ok: e:\Drivers\1OMA23WW\w2kxp\AGRMDwxp.inf [10:42:51] - Advanced Output: Inf integrated ok: e:\Drivers\1OMA23WW\w98\AGRMDvxd.inf [10:42:52] - Advanced Output: Inf integrated ok: e:\Drivers\1OMA23WW\wme\AGRMDMEE.inf [10:42:52] - Advanced Output: Inf integrated ok: e:\Drivers\1OMA23WW\wme\AGRMDMEM.inf [10:42:52] - Advanced Output: Inf integrated ok: e:\Drivers\1RD631WW\DRIVER\2KXP_INF\C2_21425.INF [10:42:52] - Advanced Output: Inf integrated ok: e:\Drivers\1RD631WW\DRIVER\2KXP_INF\CX_21425.INF [10:42:53] - Advanced Output: Inf integrated ok: e:\Drivers\1RD631WW\PHILDEC\WDM_2K\PHILDEC.INF [10:42:53] - Advanced Output: Inf integrated ok: e:\Drivers\1RD631WW\PHILDEC\WDM_XP\PHILDECN.INF [10:42:53] - TheENd
#17
Posted 13 April 2006 - 04:41 AM
PCWSTR InfFileName,
DWORD Flags,
PVOID Reserved
);
Now since the SetupOemInf is working maybe SetupUninstall should be done too. Just not sure how the script should know what's the name of script to unninstall inf's. Maybe i should run it on all Oem.inf's and if those aren't used it would unninstall them?
#18
Posted 13 April 2006 - 01:34 PM
Is there any new way of integrating those infs faster than setupcopyoeminf method????
#19
Posted 13 April 2006 - 02:51 PM
donjuan, on Apr 13 2006, 01:34 PM, said:
No there isn't
Both the AutoIt-Application from MadBoy and SetupCopyOEMInf.exe from Pyron use the very same API call and this API call is the one M$ wants you to use when integrating drivers in 2K/XP/2K3. Simply copying the files by script won't do the job correctly.
THANK YOU M$ again for this stupid driver signature stuff
In NT 4.0 you could do whatever you wanted with the setup and the drivers.
In Vista 64Bit Version it isn't even possible anymore to install unsigned drivers!
The whole setup process (setupapi.dll) is a black box already and it will be even worse in the future. All you can do is to use the API calls and if it is slow you cannot do anything about it.
#20
Posted 13 April 2006 - 03:02 PM
- ← D-Link 5-Port USB 2.0 PCI Adapter (DU-520)
- Device Drivers
- URGENT:: Drivers needed for KOB 810 DSMT →



Help

Back to top









