Jump to content

MaxWilder

Member
  • Posts

    10
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    United States

About MaxWilder

MaxWilder's Achievements

0

Reputation

  1. In case anybody is interested in the batch code I now use... I have two drivers that need to be upgraded nearly every time I upgrade from Win2k to WinXP: The NIC and the Video Card. On our systems, we have some ATI cards and some nvidia cards. Since upgrading the NIC driver will disconnect the network until restart, I started by copying over all the XP install files. If you are doing this from a CD, this obviously doesn't apply. Remember, my challenge was a mass upgrade from Win2000 to WinXP. I ran this batch file over the network from an account with Administrator privileges. After copying the setup files, the main code is :_NIC_DRIVER_ ECHO NIC set hwid= for /F USEBACKQ %%l in ( `nic.bat` ) do SET hwid=%%l ECHO Intel PRO Card hwid: >> drivers.log ECHO ^ "%hwid%" >> drivers.log ECHO. >> drivers.log SET hwid="%hwid:~0,21%" echo %hwid% if %hwid% == "" goto _SKIP_NIC_ devcon update %SetupFiles%\drivers\Network\Intel\e100b325.inf %hwid% :_SKIP_NIC_ :_NVIDIA_DRIVER_ echo NVID set hwid= for /F USEBACKQ %%l in ( `nvidia.bat` ) do SET hwid=%%l ECHO NVIDIA Card hwid: >> drivers.log ECHO ^ "%hwid%" >> drivers.log ECHO. >> drivers.log if "%hwid%" == "" goto _SKIP_NVIDIA_ SET hwid="%hwid:~0,21%" devcon update %SetupFiles%\drivers\NVIDIA\Win2KXP\66.93\nv4_disp.inf %hwid% :_SKIP_NVIDIA_ :_ATI_DRIVER_ echo ATI set hwid= for /F USEBACKQ %%l in ( `ati.bat` ) do SET hwid=%%l ECHO ATI Card hwid: >> drivers.log ECHO ^ "%hwid%" >> drivers.log ECHO. >> drivers.log if "%hwid%" == "" goto _SKIP_ATI_ SET hwid="%hwid:~0,21%" devcon update %SetupFiles%\drivers\ATI\2KXP_INF\c2_19577.inf %hwid% :_SKIP_ATI_ :_BEGIN_INSTALL_ Each of the batch files called are very small: nic.bat: The NICs in our systems are almost always some form of INTEL PRO PCI variation, so we had to really drill down to eliminate all the other INTEL lines that devcon found: @echo off devcon find * | find "PRO/" | find "PCI" nvidia.bat: The video drivers were much easier to single out. @echo off devcon find * | find "NVID" ati.bat @echo off devcon find * | find "ATI" After the drivers were updated, the install command is executed from the local directory where all the install files were copied. %SetupFiles%\i386\winnt32.exe /s:%SetupFiles%\i386 /unattend:%SetupFiles%\%AnswerFile% /udf:%ComputerName%,%SetupFiles%\%UdfFile% /syspart:C /makelocalsource /debug4:install.log As you can see I included lots of code to make logs, so I could see where things borked. Most of my upgrades run pretty smoothly now. I'm now incorporating defrags and backups of the vital WinNT folders in case of a major malfunction during the upgrade. The code just keeps expanding.
  2. In case anybody was curious, I was able to upgrade the device driver by using devcon.exe from Microsoft. The documentation kinda sucks, but my boss and I finally got it to work using the command line: devcon update <path and .inf name> <hardware id to update> ...and that was put in the .bat before winnt32 was called, so the upgraded XP was able to use the new driver. Devcon also has a bunch of other tools which may be useful, but you'll have to figure those out for yourself.
  3. Well, I finally got it to work. My boss discovered that devcon can only handle somewhere around 40 characters in the hardware id. For example, my NIC has the hardware id "PCI\VEN_8086&DEV_1229&SUBSYS_000C8086&REV_08\4&2AF9ED5&0&08F0" If you put that whole ID in the line, devcon will choke. However, it works fine if you just use PCI\VEN_8086&DEV_1229&SUBSYS_000C8086. So it finally worked when I used the line: devcon update c:\drivers\Network\Intel\e100b325.inf "PCI\VEN_8086&DEV_1229&SUBSYS_000C8086" This should solve my driver problem. I hope this can be of use to others.
  4. Another option I'm exploring is devcon.exe. I've been trying various techniques with it and the best I ever get is "devcon failed". The documentation is vague and unhelpful. I think I'm cursed.
  5. Forgive me if I'm duplicating something, but I'm going a bit crazy trying to sift through the mountain of information on this site. I'm upgrading my whole company from Win2k to XP. I've got most of it figured out, but I keep running into problems because of a NIC Device Driver. The driver currently on all the machines is incompatible with XP. I have the XP version of the driver, but I can't figure out how to get it into an UPGRADE version of an unattended install. Since I can't copy over any OEM folder, I tried to use nLite to integrate it into a .cab, but all that does is cause an error message ("Setup cannot copy the file: e100b325.inf", etc.). I don't know exactly what nLite is doing, and I can't find any information about what to do next that isn't completely inapplicable to my situation. Does anybody have a newbie's guide to cab'ing drivers? Or is it even possible for an upgrade install? BTW, the stickies in this forum are completely unintelligible for a newb like me.
  6. I'm not exactly sure what "needs" to be in there. I originally started out with a sif file designed for a clean install, so it has almost everything needed for a brand new installation. I took that file, added the line NtUpgrade=Yes and changed OemPreinstall=No. Then I commented out all mentions of custom files, anything from the OEM folder. Any other lines that are not needed are probably simply ignored. I suspect that very few other lines need to be there. Maybe just the ProductID. . . . I have since figured out that the Win2000 install was using a NIC driver that was incompatible with XP. However, it could be updated in Win 2000, then XP can upgrade just fine. So here's my new question: Is there any way to automate the upgrading of a device driver in Windows 2000, say from a batch file? Please, I don't want to maually update a driver on every machine in my office.
  7. Ok, it appears that this problem is being caused by the NIC. I just tested it without the [identification] lines to join our domain, and it installed fine. The network card is built into the motherboard, and the driver is not included on the XP install disc. Since this is an upgrade, is there any chance I could plant the appropriate drivers in the Win2k directory so that the XP installation will automatically pick up the appropriate drivers? Where would they go? I'd rather not mess around with the .cab's on the XP install disc. I tried it once with poor results. But if that's the only way I'll try it again. Suggestions?
  8. Like another member recently, I am also doing a massive rollout of Windows XP Pro. And they just decided they wanted to upgrade (from 2000 pro) instead of a clean install. Here's the problem I'm hitting, and I hope it's simple... The whole unattended upgrade worked fine using the NtUpgrade=Yes and OemPreinstall=No in my sif file. (Of course I also had to remove all mentions of custom files.) But when the new OS gets to the logon screen (ctrl-alt-del), the mouse will work, but any key pressed will cause the keyboard to lock and the mouse will stop functioning. However, the shutdown sequence initiatied by the button on the front of the case works fine. This problem didn't happen during the clean installs I was testing before. I'm thinking it might have something to do with a NIC driver that doesn't come on the xp cd. Anyone have any ideas what causes this?
  9. Well, the goal was to do all the work up front, but I guess we'll just have to type in the key for each machine as it starts. At least the Product Key is input at the beginning of the install!
  10. Hey guys, I'm assisting with a mass upgrade (clean installs actually) from Win2k to WinXP and we're trying to do it unattended style. (z: is the networked WinXP install folder) z:\i386\winnt32.exe /s:z:\i386 /unattend:winxp.sif /udf:testbox1,winxp.udf /syspart:C /makelocalsource /noreboot I've gotten most everything to work correctly while using a test ProductKey line in the answer file: ;.sif file [UserData] FullName="Company Name" OrgName="Company Name" ComputerName=* ProductKey=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx and the ComputerName in the .udf file: ;.udf file [UniqueIds] TESTBOX1=UserData [TESTBOX1:UserData] ComputerName=TESTBOX1 This works fine. But our site has individual licenses for each machine. So I moved the ProductKey from the .sif to the .udf file: .sif file [UserData] FullName="Company Name" OrgName="Company Name" ComputerName=* ProductKey=* .udf file [UniqueIds] TESTBOX1=UserData [TESTBOX1:UserData] ComputerName=TESTBOX1 ProductKey=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx This does NOT work. I get an error message soon after starting the install, saying "The setup script does not contain a valid Product ID." I'm stuck. Are we going to have to type each Product Key into the installer as it begins? Isn't this what the .udf file is for?? Am I just missing something that isn't explained anywhere on the web? I have a feeling I'm missing something obvious. Thanks for any help you can give!
×
×
  • Create New...