GreenMachine Posted February 18, 2005 Posted February 18, 2005 I know that many people install their Driver Packs by extracting them with a DetachedProgram entry. All examples that I have seen require using OEMPreinstall=YES. Has anyone managed to do this with OEMPreinstall=NO?I also know that there is a modified setup.exe, which runs a preinstall command script. That is not what I am looking for, either ...I am certainly not trying to belittle anyone's solution, but I am looking for a way to do this without modifying any Microsoft files, other than possibly DOSNET.INF or TXTSETUP.SIF. A good solution would be similar to: DetachedProgram=%CDROM%\MySetup.exeHowever, there is no CDROM variable pointing to the CDROM, and this seems to be the biggest obstacle.Any success stories out there? Any suggestions? And please ... I know what I want, so do not suggest that I use OEMPreinstall=YES, or that I hex edit, or replace, some Microsoft files.Thanks
Alanoll Posted February 18, 2005 Posted February 18, 2005 edit TXTSETUP.SIF to add an entry to a CMD file for DetachedProgram to execute. I'll be back later with more info, gotta go now
GreenMachine Posted February 18, 2005 Author Posted February 18, 2005 Isn't that just like Alanoll: comes back with a little tease, and then runs off!Yea, I think something like that may be the best solution: have TXTSETUP.SIF copy a file over to the HDD, and call it from DetachedProgram.OK, OK, I'll wait until the other shoe drops!And another thing ... Thanks!
Alanoll Posted February 18, 2005 Posted February 18, 2005 Here go:I use this in my WINNT.SIF fileDetachedProgram="%windir%\system32\themes.exe"In TXTSETUP.SIF. under the [FILES] section I addthemes.exe = 1,,,,,,,2,0,0I usually just search for bootvid.dll, then enter in the line right under or above it. Then I don't ahve to worry about EOF characters and such.The 2, is the destination directory. Search for [WinntDirectories] inside TXTSETUP.SIF to get all of them. If you don't like any of those...add a new one80 = Resources\LogonUI81 = web\wallpaperI add those to place my other files. The only limitation I've found is that the directory has to be within the %windir% directory.That should be enough for you to get started Wait...FOR %%i IN (D E F G H I J K L M N O P Q R S T U V W X Y Z) DO IF EXIST %%i:\CD.txt SET CDROM=%%i:start /wait %CDROM%\MySetup.exeShould be the CMD file, with the CMD file name replacing theme.exe and fixing the path appropriately That should be enough now
GreenMachine Posted February 18, 2005 Author Posted February 18, 2005 Thanks, Alanoll, for the other shoe!I'll play with it this weekend!
j4ever Posted February 18, 2005 Posted February 18, 2005 im not sure if this will work, but what i did :OEMPreinstall=Noi have my files in $OEM$/$1/$$.exeDetachedProgram="%systemdrive%\$$.exe"will this not work? if it doesn't.....what do i need to do to get it to work?
Alanoll Posted February 18, 2005 Posted February 18, 2005 im not sure if this will work, but what i did :OEMPreinstall=Noi have my files in $OEM$/$1/$$.exeDetachedProgram="%systemdrive%\$$.exe"will this not work? if it doesn't.....what do i need to do to get it to work?<{POST_SNAPBACK}>Won't work. Read what I said.
j4ever Posted February 19, 2005 Posted February 19, 2005 sorry but i dont understand what you wrote.where should i put my $$.exe? that is the only file i need setup to run. do i leave it in $OEM$/$1 folder? im really not sure what i need to add to txtsetup.sifalso will oempnpdriverspath still work with oempreinsall=no?
Alanoll Posted February 19, 2005 Posted February 19, 2005 sorry but i dont understand what you wrote.where should i put my $$.exe? that is the only file i need setup to run. do i leave it in $OEM$/$1 folder? im really not sure what i need to add to txtsetup.sifalso will oempnpdriverspath still work with oempreinsall=no?<{POST_SNAPBACK}>Add the file to I386.Then add to Txtsetup.sif$$.exe = 1,,,,,,,2,0,0The in WINNT.SIFDetachedProgram="%windir%\system32\$$.exe"And yes, OEMPnPDriversPath will still work with OEMPreInstall=No
j4ever Posted February 19, 2005 Posted February 19, 2005 i couldnt find [Files] but instead i found [sourceDisksFiles] and it had bootvid.dll in it. in your txtsetup.sif is bootvid.dll the first think listed in sourcedisksfiles? i had a bunch of other stuff taht i determined to be installed from nlite (when i tried using it a long time ago. i spend a long time deleting those files from my I386, but i just want to make sure that bootvid.dll was indeed the first file listed there. thanks!
Alanoll Posted February 19, 2005 Posted February 19, 2005 i couldnt find [Files] but instead i found [sourceDisksFiles] and it had bootvid.dll in it. in your txtsetup.sif is bootvid.dll the first think listed in sourcedisksfiles? i had a bunch of other stuff taht i determined to be installed from nlite (when i tried using it a long time ago. i spend a long time deleting those files from my I386, but i just want to make sure that bootvid.dll was indeed the first file listed there. thanks!<{POST_SNAPBACK}>Yeah it's the first. nLite file would probally be first if you used nLite.
GreenMachine Posted February 19, 2005 Author Posted February 19, 2005 Well, I got that part to work, however it seems that the DevicePath in the registry, which should be %systemroot%\inf;, followed by whatever it picks up from OEMPnPDriversPath only contains %systemroot%\inf, leading me to suspect that OEMPnPDriversPath does not work once OEMPreinstall is set to no (though I was/am under the impression that it should). Injecting the values into the registry would be easy enough, if, in fact, the OEMPnPDriversPath thingy won't work in this case. From what I see, the DevicePath setting is needed so that setup parses the directories, and creates the prefetch information stored in INFCACHE.1. Without that file, I think that the INF files inside will not be used when searching for drivers. Of course, all this is speculation, as I have only tried on a virtual machine.Just a status update. If you have anything to add, Alanoll, I'm all ears. Otherwise, I'll keep you posted.
Alanoll Posted February 19, 2005 Posted February 19, 2005 http://unattended.msfn.org/intermediate/fi...tDevicePath.exeI use that program to parse my driver directories appropriatly.SetDevicePath.exe %systemdrive%\DriversShould add all folders under Drivers to the DevicePath
GreenMachine Posted February 19, 2005 Author Posted February 19, 2005 I could do that ... but you know me! I use CABARC and IEXPRESS to create the SFX package, all from a Command Script that automatically scans a given directory. Easy enough to have it crate the DriversPath, and inject it with a REG command.As for the INFCACHE.1 file, it seems that is created when you start the Add Hardware Wizard for all the directories in the DevicePath registry setting.So, I'm close ...Thanks again, Alanoll.To be continued ...
GreenMachine Posted February 19, 2005 Author Posted February 19, 2005 Well, changing to OEMPreinstall=NO definitly results in OEMPnPDriverPath NOT being set in DriversPath in the registry. Next test will be to inject it at the same time as I copy over the files.
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now