• Content count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About Necros

  1. I'm working on KTool 1.2d to handle ZIP or 7z files. My software database is on a external hard drive, and I may use it on untrusted maybe infected computers. Therefore, I'm storing each driver or software in a zip file to protect my files against viruses. I'm about to test some new instructions in INI file to use 7Za.exe to unzip a software in a temp folder, and then run an EXE or MSI file. Do you feel theses changes useful ?
  2. Hello I'm downloading all hotfixes for Windows 2003 Server. One of them is for Windows 2000. It seems that's a hyperlink error. Hotfix KB943485 for 2003 Server
  3. @all Hi, many time elapsed since my last post. I dont' have any tool to ensure windows installs the most appropriate driver. I'd like to try hwphp but all my attempts to install a device driver with this tool failed. Maybe I don't understand how it works. :s Can an bartPE expert coud explain how to install a driver with this tool, from the command line ?
  4. @kickarse Hi, I may use REG.EXE to set driver signing policy to ignore and restore it's previous state. I think that's the best way. WatchDriverSigningPolicy is intended to be used with unattended setup, and you're right, I may need it when installing drivers a T-13 step. sigverif.exe is intended to be used to check if a driver has been signed or not. I may use it with a wish to install only signed drivers. However, I don't know how to detect if a driver has been designed for a specific windows version. Driver install.php installed yesterday a SiS AGP driver for windows XP on Windows 2K. I expected windows 2K refuse to install it anyway. @all I need to find a workaround to detect which windows a driver is designed for... I keep this issue open, If we find a suitable workaround for both win 9x and 2K and later systems...
  5. I'm thinking about drivers packed in a installer software (AND chipset, and ATI + Nvidia video drivers). I have to code a new feature able to detect pnp ID from a specified INF file and add a commandline to start a specific installer with the silent option. @all Did you try installing nvidia drivers from a inf file ? Are Nvidia softwares correctly installed and working (nvidia audio and video especially) I tried to install SiS chipset drivers. I found these issues: ISSUE 1 ===== - hardware PnP ID for SiS IDE and AGP controllers in .inf files are not telling SubSys part PCI\VEN_1039&DEV_5513;f:\drivers\01_chipset\SiS\95 98 Me NT 2K XP 2003 XP-64 2003-64\R204a\IDE\win2k\SISIDE.INF PCI\VEN_1039&DEV_0001;f:\drivers\01_chipset\SiS\95 98 Me NT 2K XP 2003 XP-64 2003-64\agp121\AGP\current\WIN2000\sisagp.inf I added a third column in the database to ignore SubSys ID when comparing the current line from database with a PnP ID found in the host computer. PCI\VEN_1039&DEV_5513;f:\drivers\01_chipset\SiS\95 98 Me NT 2K XP 2003 XP-64 2003-64\R204a\IDE\win2k\SISIDE.INF;no_subsys PCI\VEN_1039&DEV_0001;f:\drivers\01_chipset\SiS\95 98 Me NT 2K XP 2003 XP-64 2003-64\agp121\AGP\current\WIN2000\sisagp.inf;no_subsys I don't know if devcon may report a hardware PnP ID without SubSys part. I suppose that will never happen. I added the third column by hands. I will suppress this column by checking each PnP ID for SubSys ID, If not present, then trim SubSys ID from the detected PnP ID before comparison. ISSUE 2 ===== devcon may enforce installation of a driver designed for windows XP on windows 2000. With the IDE driver, a prompt appeared because the driver is not signed. The AGP driver is installed silently, but the computer cannot reboot properly (I had to go back to the last good known configuration) I have to find how to detect each compatible windows for a given INF file, or specify for each .inf file which windows are compatible.
  6. @IcemanND you're right.... but I stopped programming with VB long ago. I made a little batch file to launch my php scripts, now I have to add "driver install.php" in runonce during windows setup. I may launch it directly a T-13 step; but converting into VB may fail if VB scripting components are not already available. I have to try php.exe alone, without any extension or other stuff. If this works, then I will have something similar to AutoIt. I may also code with php4 and use a software to "compile" the script into a single executable containing both php.exe and my script
  7. Hi all ! I'm about testing a couple of little php script using devcon.exe and pnpids.exe. One script associates PnPID to the inf file describing a driver, and the second script uses the previously build database (CSV format) to update drivers if a compatible hardware exists on the system. I coded these scripts quickly and if you thinks they are useful, I may enhance them to build an online database. (after a much proper re-coding) Downloads available at the end of this post My work is intended to make easier unattended driver setup, without hacking windows setup, and without using registry (directly or indirectly) to store driver path. I think using devcon.exe to update device drivers and pnpids.exe are the best way to respect the windows internal procedure. Features planned: -Automatic creation of a file containing [sysprepMassStorage] -easy to maintain method for both unattended setup and master image management with sysprep -Maintaining an online database with data about each PnPID (sometimes I find unknown hardware and I must search for a manufacturer without having his name) -specific hardware handling: nvidia ethernet adapter are not defined with a PnP ID in inf files (I found a DOS batch file with a workaround; an other workarond is needed to Hercules fortissimo drivers too) Overview of csv file created by the first script PCI\VEN_1069&DEV_0050&SUBSYS_00541069;D:\Multi_dvd\sysprep\drivers\04_controller\Mylex LSI Logic\AcceleRAID 160, 170, 352, ExtremeRAID 2000, 3000\2K\ar160.inf PCI\VEN_1069&DEV_0050&SUBSYS_00521069;D:\Multi_dvd\sysprep\drivers\04_controller\Mylex LSI Logic\AcceleRAID 160, 170, 352, ExtremeRAID 2000, 3000\2K\ar170.inf PCI\VEN_1069&DEV_0050&SUBSYS_00501069;D:\Multi_dvd\sysprep\drivers\04_controller\Mylex LSI Logic\AcceleRAID 160, 170, 352, ExtremeRAID 2000, 3000\2K\ar352.inf PCI\VEN_1069&DEV_BA56&SUBSYS_00401069;D:\Multi_dvd\sysprep\drivers\04_controller\Mylex LSI Logic\AcceleRAID 160, 170, 352, ExtremeRAID 2000, 3000\2K\exr2000.inf PCI\VEN_1069&DEV_BA56&SUBSYS_00301069;D:\Multi_dvd\sysprep\drivers\04_controller\Mylex LSI Logic\AcceleRAID 160, 170, 352, ExtremeRAID 2000, 3000\2K\exr3000.inf PCI\VEN_1095&DEV_3112&SUBSYS_31121095;D:\Multi_dvd\sysprep\drivers\04_controller\Silicon Image\sil 3112\SI3112.inf PCI\VEN_1095&DEV_3112&SUBSYS_34238086;D:\Multi_dvd\sysprep\drivers\04_controller\Silicon Image\sil 3112\SI3112.inf PCI\VEN_1095&DEV_3112&SUBSYS_311215D9;D:\Multi_dvd\sysprep\drivers\04_controller\Silicon Image\sil 3112\SI3112.inf PCI\VEN_1095&DEV_3112&SUBSYS_B0021458;D:\Multi_dvd\sysprep\drivers\04_controller\Silicon Image\sil 3112\SI3112.inf To use these scripts you need php 5.1.2; use it as a command line script interpreter I tried to run with success php interpreter in a folder containing only php.exe and php5ts.dll (without any path pointing to the full version of php in the %path% environment variable) To download devcon.exe goto To get Sysprep 1.1 for windows 2000;displaylang=en For windows XP find in your original XP cdrom. update your environment variable %path% to your php interpreter create a folder (anywhere you want) containing devcon.exe and pnpids.exe download into this folder the php scripts to fill the csv file used as database open a command prompt and type php -f "driver detect.php" <Driver_Collection> <Driver_Collection> is a path to a folder containing a driver pack. each subfolder is scanned for inf file. Each inf file is read with pnpids.exe. To update your system open a command prompt and type php -f "driver install.php" If a hardware PnPID is detected in both your computer and the csv file, devcon.exe will update your driver. I will test my work on several computers deployed with sysprep, unattended installations with either drivers from CD or drivers from a network share success: CSV generation from a folder with few mass storage drivers, and chipset drivers from NVidia, SiS, ALI hardware detection and installation on a scsi card Test to do: -CSV generation from a huge drivers collection (never used Bâshrat the Sneaky's driver pack, but I think it will work) -device detection and installation on a "driverless" windows (clean install) (need your help guy because there are so many different configuration !) (tests runnings with SiS drivers) HISTORY Added support for partial PnP ID comparison, need manual csv edit (automatic handling of this case planned) Little bugfix in driver install.php Added several drivers install for a single hardware instance (experimental) (I wish the most up to date driver on the host system) Downloads: Driver_Detect.php Driver_Install.php
  8. A little note to those who want download hotfixes for 2K or XP I don't know if this has been posted somewere on MSFN forums Windows 2K SP4 and XP SP2 download hotfixes automatically. You can find them in %windir%\SoftwareDistribution\Download You will find as many subfolders as downloaded hotfixes automatically downloaded. These hotfixes are unpacked and ready to use with ktool or a batch script. After a fresh installation, windows downloads 2 hotfixes to update BITS. After installing and rebooting others hotfixes willl be downloaded. Let windows update himself, when he doen't find any hotfix anymore, you just have to save the content of the given folder earlier. On several installations, the autogenerated foldernames under %windir%\SoftwareDistribution\Download keep the same name and content. If this is really true, it is easy to update a hotfixes collection. Maybe they are ready to slipstream with some batch script into your windows installation files; but I will not test that because it is a too complex method to be reliable (search on microsoft's website, a KB give all step of this method. Hope this will be useful to the community ; and sorry if my english is as crappy as windows
  9. A little question about *.ini files and ktool I see in the documentation file something like this [MSI Test] MSI = file.msi" /qb REBOOT=Suppress MSI = Microsoft Virtual PC 2004.msi" /qb Can someone explain why there is only ONE double quote ? Where is the second one ? P.S.: Thanks ! this tool is exactly what I need !!!
  10. Hi all ! I'm seraching a solution to install device drivers from DVD without adding useless inf files. Pyron's method is excellent but I can't make it run suddently... For sure i do an error somewere. But the registry key is limited to 4096 characters. I want as many drivers as possible on my DVD, I will quickly explode the 4096 chars limit Device driver compression has the same limit, I tried to rewrite some parts if his script to merge compressed drivers on few folders (system, net, hdc...) [big parenthesis] Other features i tried tu add -some chipset drivers (Ali) have many folders Win2000 ans WinXP as example, with the same INF file but a different set of files. a file mising, not required for 98 and required for Win2K is present only in the Win2000 subfolder => converted error : file missing into warning - support fort CAB Files un SourceDiskNames and SourceDiskFiles sections => Matrox Parhelia drivers have a .cab file with required files inside I failed to rewrite the script. on a large set of drivers, the script must parse some lines with a ampersand character (&) (not sure for his name ) and it is recognized as a command separator in FOR /F () command. I believe I reached the limit of batch scripting for winNT [/big parenthesis] I think it may be a good idea to write a inf file for each inf file found in my driver folder structure. All of these created inf files will be located in a unique folder, and will contain the HWID of his corresponding inf file. I want that the created inf file, by the PnP mecanism, install the original inf file and forces his execution by asking windows to rescan his host system. Because I never analyzed a lot the inf file structure my first tries failed. Even with using other inf files as example. (rundll32 says that installation failed, but I don't know why) I don't want to use the driver pack method because it increases the disk space needed by windows (drivers on HD) , and my DVD may not be available if a friend uses my disk and install a new piece of hardware later (drivers on CD). I'm sure someone can give me some advices.
  11. Hi ! If you're installing Windows XP, check if your installation includes SP2. When you install Intel driver on a "standard" way a file included only in SP2 is nedded to install USB 2 drivers. I suppose you are installing your intel driver with a XP our XP SP1 installation