Jito463 Posted September 15, 2004 Share Posted September 15, 2004 (edited) Greetings. I've been kind of lurking here recently, helping out when I can, now I wonder if I could get some help myself. I've recently discovered this command that lets you centralize your $OEM$ directories for network installs, requiring only one instead of several:[unattended]OEMFilesPath="\\server\preinstall\generic"Where Generic would be the directory containing the $OEM$ directory. While I'm sure this works for a network install using WinPE, I'm trying to use it to combine them on my multi-boot DVD. Here is my current directory structure (using only XP Pro just to avoid wasting time):\ROOT|_1PPR (Pro Preinstall boot folder)|_1OPR (Pro OEM boot folder - non preinstall)|_Setup|___XPPro|_____OEM|_______$OEM$ (used strictly for SATA drivers)|_______i386 (etc, all other related directories included)|_____Preinstall|________$OEM$ (full preinstall directory)|________i386 (same as above)|___XPHome|_____OEM|_______$OEM$ (used strictly for SATA drivers)|________i386 (same as above)|_____Preinstall|________$OEM$ (full preinstall directory)|________i386 (same as above)The reason for having a split OEM and Preinstall directories is so I can use the same DVD to do a regular repair install or to do a preinstall (I don't want the $OEM$ directory parsed during a repair install). The downside is, I have multiple files now that aren't needed. My preferred directory structure:\ROOT|_1PPR|_1OPR|_Setup|___XPPro|_____i386|___XPHome|_____i386|___Preinstall|_____$OEM$ (full preinstall OEM Dir for all installs)|___OEM|_____$OEM$ (SATA drivers loading)This would benefit me two ways.1) Only a single i386 directory taking up space on my DVD2) Only one $OEM$ directory to make modifications to when I change my preinstallI've tried the following in my winnt.sif:[unattended]OEMFilesPath="\Setup\Preinstall" (from root of drive)[unattended]OEMFilesPath="..\Setup\Preinstall" (from boot dir, move up one folder then switch)[unattended]OEMFilesPath="%CurrentDrive%\Setup\Preinstall" (However, %CurrentDrive% wasn't a set variable)[unattended]OEMFilesPath="/Setup/Preinstall" (thinking maybe for local files it had to be /, worth a shot).So far, nothing has worked. I'll keep fiddling with it, but if anyone can make a suggestion that will get this working I would greatly appreciate it. Thanks for your time. I've also posted in the MS Preinstall newsgroup and waiting to hear back from there. If they post something before I hear from here, I'll let you guys know. I'm sure there are others who would find this equally useful.*EDIT*If I get this part working, I'll explain what I did to create batch files so I can create standalone iso's even with the directories stretched out like they are But it's a moot point if this doesn't work in the first place. Edited September 18, 2004 by Jito463 Link to comment Share on other sites More sharing options...
airmr Posted September 17, 2004 Share Posted September 17, 2004 Heyas,Dunno if this ist what you want to achieve, but i will try to explain my way of having different $OEM$ Paths.I use a new winnt.sif for every PC with different Drivers, etc. I have a winnt.sif for my first, my second PC with different OEMFilesPaths. I use another winnt.sif for a clean XP Install without third party drivers.My DISKEMU.cmd main part looks like this:printprint ------------------------------------------------------------------------------print XP BOOT CDprint print ------------------------------------------------------------------------------print F1=Helpprint print 1) WINXP PRO MR SP1 UA (K7S5A/SBLive/Detonator 5214/AT2500TX NIC)print 2) WINXP PRO MR SP1 UA FLAT (K7S5A/SBLive/Detonator 5214/AT2500TX NIC)print 3) WINXP PRO MR2 SP1 UA (KK7VTA3/AC97/Detonator 5214/Compex NIC)printprint 4) WINXP PRO SP1 Standard Unattendedprint 5) WINXP PRO SP1 Standard Unattended FLAT !!print 6) WINXP PRO SP1 Standardprintprintprint 9) Windows 98 Bootdiskprint b) Ghost Boot CD MRprint c) Ghost Boot CD MR2printprint g) Ghost Toolsprint q) Quit to command promptprint r) Rebootprintprint Esc) Boot first harddiskprintprint Hit the key of choice::mainkey; timeout is 30 seconds, default key is escapegetkey 30 esconkey 1 run XPP1.DATonkey 2 run XPF1.DATonkey 3 run XPP2.DATonkey 4 run XPP3.DATonkey 5 run XPF3.DATonkey 6 run XPP4.DATonkey 9 run 98SE.imaonkey b run gmr.IMAonkey c run gmr2.IMAonkey g goto ghostonkey x goto devonkey q quitonkey r rebootonkey f1 goto helponkey esc boot 80I dunno if this goal can be achieved more easily, but this works fine for me, and you can easily change the diskemu.cmd to add more different driver paths. As far as i know the installation only parses the oemfilespath included in the winnt.sif. If not, my whole typing work for these configurations was just a waste of time Link to comment Share on other sites More sharing options...
Jito463 Posted September 17, 2004 Author Share Posted September 17, 2004 (edited) Umm, I already know how to do multiple versions of WinXP on the same disc. What I'm referring to is using one $OEM$ directory for all the preinstalls.*EDIT*I suppose, looking at my chart above, I may not have been fully clear. The two $OEM$ directories were one for Preinstall and one not preinstall. The two $OEM$'s could then be shared between XP Home OEM, XP Pro OEM, XP Home Retail and XP Pro Retail without having 8 different $OEM$ directories between them. Edited September 18, 2004 by Jito463 Link to comment Share on other sites More sharing options...
Jito463 Posted September 18, 2004 Author Share Posted September 18, 2004 Well, I finally got my answer from MS. Erik (SBST - System Builder Support Team) told me in order to specify a location that's not through the network, I have to give a drive letter. So, I'd have to specify D:\Setup\Preinstal and make sure that there was only one HDD and one optical drive. I may still do it, but I'm not sure if it's worth the hassle. We'll see. Link to comment Share on other sites More sharing options...
idle.newbie Posted September 18, 2004 Share Posted September 18, 2004 i've do some tests for OEMFilesPath, with these settings in WINNT.SIF[Unattended]OEMFilesPath="Geek"OemPreinstall = Yesor[Unattended]OEMFilesPath="\Geek"OemPreinstall = Yesor[Unattended]OEMFilesPath="..\Geek"OemPreinstall = Yesthe sample directory structure as attached picture.make sure every $1 directory has a text file with full-path-to-text-file in it.by use of OemPreinstall=Yes and $OEM$\$1, if OEMFilesPath works on CD install, after XP setup complete there should be at least one text file in %SystemDrive%, and we can check the content of the text file to know which directory XP setup use.unfortunately, there's no text file as it should be there. this test comply with your answer, on a CD install OEMFilesPath without a drive letter.after that i go with multiple $OEM$ directory. Link to comment Share on other sites More sharing options...
Jito463 Posted September 18, 2004 Author Share Posted September 18, 2004 I have OEMPreinstall=Yes in all my Winnt.sif files, unfortunately it doesn't seem to recognize my $OEM$ dir no matter where I put it if I don't specify the drive letter. I actually don't even need to let it finish installing to find out. During the file copy phase, when it does recognize the $OEM$ (using traditional structure) it gets to 100% then I see it copy my additional files. If I don't see them copy, then I know it failed. I'm going to try now to specify D:\Setup\Preinstall and see if that works. Link to comment Share on other sites More sharing options...
Redman Posted October 3, 2004 Share Posted October 3, 2004 He Guys,There is a little util that give you the cdrom letter see attached file.Now you can set the %CDROM% variable easy with following code:@echo offclsfor /f "Tokens=*" %%a in ('getcd.exe') do set CDROM=%%ahope this helps.Redmangetcd.exe Link to comment Share on other sites More sharing options...
Jito463 Posted October 3, 2004 Author Share Posted October 3, 2004 And how, praytell, do you get this batch file to run before the file copy phase? Link to comment Share on other sites More sharing options...
khostri Posted October 5, 2004 Share Posted October 5, 2004 Try one of those things:1) as OEMFilesPath parameter write that:[Unattended]OEMFilesPath=".:\Setup\Preinstall"OemPreinstall = Yes2) Try to move all $OEM$ directories into coresponding i386 directories and delete OEMFilesPath parameter form winnt.sifSo your structure should look like that:\ROOT|_1PPR (Pro Preinstall boot folder)|_1OPR (Pro OEM boot folder - non preinstall)|_Setup|___XPPro|_____OEM|_______i386 (etc, all other related directories included)|_________$OEM$ (used strictly for SATA drivers)|_____Preinstall|________i386 (same as above)|__________$OEM$ (full preinstall directory)|___XPHome|_____OEM|________i386 (same as above)|__________$OEM$ (used strictly for SATA drivers)|_____Preinstall|________i386 (same as above)|__________$OEM$ (full preinstall directory)and in winnt.sif in [unattended] section use just that OemPreinstall = Yesref.chm file says that:OemFilesPathSpecifies the path to the \$OEM$ folder (containing OEM files) if it does not exist under the i386 folder of the distribution share point.Hope it will work Link to comment Share on other sites More sharing options...
prathapml Posted October 5, 2004 Share Posted October 5, 2004 @khostriHave you tested what is said above? If it works, I'm all ears! Well, the location refers to hard-disk. I must've tried this hundreds of times - doesn't work on CD!OEMFilesPath=".:\Setup\Preinstall"That path will get interpreted as C:\.:\Setup\PreinstallNopes, the only solution was to keep the multiple $OEM$ folders, and optimize the CD-image. Link to comment Share on other sites More sharing options...
khostri Posted October 11, 2004 Share Posted October 11, 2004 Nope, didn't try. Just wanted to add some possible ways to work it out. Didn't try that second way?If I understand that explanation from ref.chm fiel rightOemFilesPathSpecifies the path to the \$OEM$ folder (containing OEM files) IF it does not exist under the i386 folder of the distribution share point.It should mean, that if there is any $OEM$ folder inside i386 and there is no path specified in winnt.sif, it should be copied normaly as $OEM$.Just another way "I have heard something but didn't try" Link to comment Share on other sites More sharing options...
RedVyper Posted October 11, 2004 Share Posted October 11, 2004 Something slightly different then what you have been doing but it just might work. Tell me what you think i'm considering trying the same on my CDInstead of booting to the text based portion of setup and letting that run how about a windows PE install. So maybe something like this. Create an HTA file to run inside of windows PE giving you the different options for install example1.) Windows XP Pro Unattended2.) Windows XP Pro OEMetcbut just before the line of winnt32.exe / make it call the getcd.exe first thus giving you the correct drive letter? Link to comment Share on other sites More sharing options...
Jito463 Posted October 11, 2004 Author Share Posted October 11, 2004 Well, what I finally ended up doing was to create a directory structure like so:\|_1OHO <-- OEM Home Setup|_1OPR <-- OEM Pro Setup|_1PHO <-- Preinstall Home Setup|_1PPR <-- Preinstall Pro Setup|_Setup|___XPHome|______$OEM$|______I386|___XPPro|______$OEM$|______I386Then, in my 1OHO, 1OPR, 1PHO and 1PPR directories, I either placed or did not place a winnt.sif to do a preinstall. However, regardless of whether OEMPreinstall is set to yes, the cmdlines.txt is parsed, so I added this command at the top of my batch file:IF NOT EXIST %SystemRoot%\DITOEM GOTO ENDblah, blahblah, blah:ENDEXITWhere DITOEM is a file that I had it copy from the $OEM$\$1 directory if OEMPreinstall was set to yes. If set to no, it would not be copied, so the batch file would just exit without trying to run the installers.Not quite a "single" $OEM$ directory, but as close as I'm going to get without straining myself. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now