Help - Search - Members - Calendar
Full Version: DriverInjection GUI
The CD Forum > Bart's PE Builder > OfflineSysPrep
Pages: 1, 2
Zetup-EXE
Hi there,

first of all i want to introduce myself. My Name is Zetup-EXE and i use PEBuilder and stuff for about some years. I allways read the forum for solving problems, getting new ideas and so on. And now i think it's time to give something back (Hopefully rolleyes.gifsmile.gif ).

First the download link (before i overwrite my clipboard)
DriverInjection.7z

Now the (hopefully understandable) description what this tool doing:
With DriverInjection you can, like the name let you expect, inject MassStorageDriver into an offline WindowsXP / Windows Server 2003 System (Just 32Bit tested!).

Mainscreen

Choose 3rd-Party Controller driver

Let me give you an example what the intention of this tool is:
Imaging you must change your motherboard because it broke (suddenly) or you applied an image to a new computer. So you didn't have time / possibility to install the correct harddisk controller driver. Often Windows will quit its bootprocess with a 0x0000007B Error. Now the most used possibility is to boot the new computer with a BartPE-CD/DVD or installing the harddisk into a second computer as additional drive. Then searching the internet for the correct driver and registryentries.

Another example:
Someone asks you to setup his/her's PC with a fresh install of Windows. Your time is rather short, so you decide to setup the pc within i.e. vmware workstation. However you don't know the correct motherboard of the target system nor you know the correct controllertype. The rest is imagine.... whistling.gif and so on...

With this tool you must only provide the correct "F6" Driver or if you want to inject the standard ide driver you'll have to specify only the system hive of the target system (the system with the 0x0000007B error).

Because this tool is like an assistant, here are some remarks you should know:
# Tested from BartPE(WinXP Source), WinXP and Win2003 Server (all 32Bit) to WinXP and Win2003 Server (32Bit)
# Target system was setup from an original setup cd (not modified by nlite or something)
# Target system was not particularly modified (i.e. deleted or moved driver.cab*, expand.exe must be in the systempath i.e \WINNT\system32\)
# Target system must be offline!
# You must have access to the target harddisk within BartPe or your helper system
# All 3rd party driver (only the "F6" driver accepted) are in the same directory like the txtsetup.oem (maybe you must copy them from subdiretories)
# 32Bit version of devcon.exe should (needn't) be in the same directory like the tool it self (Search google for it)
# reg.exe must be in the systempath of your rescuemedia (i.e. X:\I386\System32\ or C:\WINNT\system32\)

*) if necessary you'll be asked where the driver.cab is stored, or whether you'll provide the driverfiles (atapi.sys, intelide.sys, pciide.sys, pciidex.sys) from another location


Note: The download archiv contains the german language.ini file. if you want to get the english language.ini file do the following:
- delete the language.ini within the application directory
- start the application with the /language parameter (i.e.: DriverInjection.exe /language)
(You need write permissions at your %tempdir% AND your application dir)

Ok, that's it for now, hope you enjoy my work.

cu..

Zetup-EXE

To-Do: Implementing VISTA/2008 Support
sanbarrow
Wow - looks nice - I'll start some tests now.

By the way - I see you use rapidshare - if you want I can host it for you at sanbarrow.com - just send a PM if you interested

Ulli
sanbarrow
happy65.gif thumbup.gif

Wow - looks very nice.
Wow - for not automating the process.
Wow - for display of actions during work.
Wow - for logical and self-explaining GUI

Little suggestion: please assume devcon.exe is in the path - then it is not required to have a second copy of devcon.exe in the programs dir.

Big suggestion: not required but every user that now uses VMware Converter would love it ...
You now have one preset: install standard IDE
If not asked to much please add "install standard VMscsi" and "install LSI-scsi"

Anyway - thanks a lot - what an entrance for a 1 post - great

Ulli
sanbarrow
Hmmm ... trying to add a thirdparty driver now.
Whichever txtsetup.oem I try I get

"Notice 12x1
The selected controller could not be found"

Am I doing something wrong ?
nuMe
QUOTE (sanbarrow @ Jan 12 2009, 01:50 PM) *
Am I doing something wrong ?

Obviously hysterical.gif
sanbarrow
nume - do you feel better now ?

Zetup-exe
everything is fine - I was only puzzled by the wording of the english language file - may I suggest some changes ?
- I'll send you an edited one. Some more entries sound strange to me if I compare them with the german one.
sanbarrow
Little walkthrough
after launch

select an option

show path to the txtsetup.oem file
select driver - if there are multiple choices
show path to the system hive



check if summary looks good


during process

final screen


Zetup-exe - this is great - I love it
Thanks a lot for sharing

Ulli
Galapo
Thanks for sharing -- looks good!

Regards,
Galapo.
Zetup-EXE
hi there,

nice to hear that you enjoy my work. rolleyes.gif


@sanborrow: could you summarize your posts please. it's late now, and it seems to me i am not able to figure out what your concers are wacko.gif

cu...

Zetup-EXE

P.S.: the originally language was german. because my time is rather short (like anyone else here, i assume rolleyes.gif ) i used google to help me translating it quick and dirty. email: check fileproperties!
sanbarrow
Hi

Please assume devcon.exe is in the path so that it is not necessary to copy it into the driverinjection-program dir.
Everything else is fine so far - simply ignore the other requests - they are not necessary at all.

I'll send you some suggestions for english language.ini via email soon

Ulli
Nuno Brito
Very professional work, thanks for the screenshot session - really helps to get an idea of the tool.

This seems a good tool to carry around LiveXP from USB to add drivers if necessary.

Maybe Zetup could add these screenshots from sanbarrow on the first topic?

smile.gif
sanbarrow
This is very nice for In-place P2V.
Go to a machine - make a snapshot of its disk - patch the system in the snapshot and then run it as VM.
With this tool its easier and faster than ever before - I just made a test run - after 3 or 4 minutes I could already launch the local system as VM
jaclaz
VERY good work! thumbsup.gif

If I may have a wish (besides hoping nuMe could get a life whistling.gif) would it be possible to add to the "default" UNIATA:
http://alter.org.ua/en/soft/win/uni_ata/
unsure.gif
(or has anyone had the occasion whether it works "as-is" or needs any tweak)?

jaclaz
sanbarrow
Jaclaz - this tool is a neat 300kb executable which comes without any library.
Create your own collection of drivers as you see fit.

You can even download F6-driver-floppy-images a minute before using them with this tool.
If you think you need that driver occasionally - just add it to your collection.
jaclaz
QUOTE (sanbarrow @ Jan 14 2009, 12:18 AM) *
Jaclaz - this tool is a neat 300kb executable which comes without any library.
Create your own collection of drivers as you see fit.

You can even download F6-driver-floppy-images a minute before using them with this tool.
If you think you need that driver occasionally - just add it to your collection.


Good evening, Monsieur LaPalice, hope you are well smile.gif:
http://en.wikipedia.org/wiki/Jacques_de_la_Palice

Thank you for your kind reply, I was misled by the actual image, you see, I KNOW that F6 drivers must NOT be injected near the central hub of the disk, they go on the outer side.....and I also though that being UNIATA a "tough driver" with LOTS of 1's it could not be injected normally....whistling.gif

jaclaz
sanbarrow
huh.gif ??? huh.gif
hilander999
QUOTE (sanbarrow @ Jan 13 2009, 07:15 PM) *
huh.gif ??? huh.gif
laugh.gif Ditto. rolleyes.gif
http://en.wikipedia.org/wiki/Ditto
ilko
Thanks for sharing this, it is very handy indeed.

Two quick questions- does it add all HardwareIDs from txtsetup.oem, or just the detected one from devcon.exe?
Does it add HWID to CriticalDevicesDatabase+Service for the injected driver, or you are using something else?
jaclaz
QUOTE (sanbarrow @ Jan 14 2009, 01:15 AM) *
huh.gif ??? huh.gif

Comeon, you know how 1's are worst than 0's in cables, same thing applies to syringe needles as well.....wink.gif
http://www.911cd.net/forums//index.php?sho...21827&st=23
happy71.gif

Seriously, I could see by myself that the app is a good selfstanding thingy.

And as well, I could get as far as:
QUOTE
Create your own collection of drivers as you see fit.

I simply asked if I could have a wish, or if anyone had already triesd successfully this tool with UNIATA....


jaclaz
sanbarrow
Hi Jaclaz

your remark about Monsieur LaPalice completely got me off guard.

Please keep in mind for next time that I maybe blonde - so please don't make such tricky jokes with me rolleyes.gif

Ulli
jaclaz
QUOTE (sanbarrow @ Jan 14 2009, 11:58 PM) *
your remark about Monsieur LaPalice completely got me off guard.

Well, that was rather intentional...whistling.gif

QUOTE (sanbarrow @ Jan 14 2009, 11:58 PM) *
Please keep in mind for next time that I maybe blonde - so please don't make such tricky jokes with me rolleyes.gif


No comment, an image is worth hundred of words wink.gif.



jaclaz
Zetup-EXE
Hi there,

first @ilko: it depends on what devcon.exe is recognizing. if one pci\venID from txtsetup.oem matches with one that devcon.exe found, than this pci#venID will be added to the criticaldevicedatabase, else it will add the name of the service found in the txtsetup.oem. will improve this on next release (it will than add the other non matching pci\venID!)

@all: due to the huge response i decided to develope the tool further. today i finished the vista/server 2008 standard ide driver issue. rolleyes.gif

thanks a lot for your very positive responsives happy71.gif !!!

@sanbarrow: what a about the new english language.ini file? wink.gif

cu...
stephan
sanbarrow
QUOTE
today i finished the vista/server 2008 standard ide driver issue.


thumbup.gif - sounds great

QUOTE
what a about the new english language.ini file?


Should be ready tomorrow evening - will that do ?

Ulli
cdob
QUOTE (Zetup-EXE @ Jan 15 2009, 09:02 PM) *
it depends on what devcon.exe is recognizing. if one pci\venID from txtsetup.oem matches with one that devcon.exe found, than this pci#venID will be added to the criticaldevicedatabase, else it will add the name of the service found in the txtsetup.oem. will improve this on next release (it will than add the other non matching pci\venID!)

That's nice, thanks. Supporting HardwareID from offline hardware.

This is better than fix_hdc.cmd. http://www.911cd.net/forums//index.php?showtopic=20464
Fix_hdc uses txtsetup.sif and current hardware only.
And a nicer gui too.

Another quesiton:
do you integrate registry settings from txtsetup.oem too?

Yes, go ahead.
sanbarrow
Stephan
I got a question

string51 = Der ausgewählte Kontroller konnte im System nicht gefunden werden.
string51 = The selected controller could not be found.

Does this mean ?
string51 = Der von Ihnen ausgewaehlte Kontroller scheint in DIESEM System nicht vorhanden zu sein
string51 = The selected controller does not seem to be present in THIS system


In my first tests I misjudged this as an error - message but I guess it is info only ?
Or do we have to use this tool on a box which should have the same controllers as the offline system we are going to patch will have in future ?

Ulli

Small wish:
your tool is very shy rolleyes.gif - once it goes to the background because you activate a different windows on the desktop it is hard to make it reappear.
Please add something like a setonTop attribute to the window.
Zetup-EXE
@cdob: no registry setting are imported from the txtsetup.oem

@sanbarrow: i know my tool is shy, well it's just three month old and first time alone in this big world. so hope you'll have patience with this young one hysterical.gif but i will tell him not to be to shy on his next birthday (release).

cu...

Zetup-EXE
cdob
QUOTE (Zetup-EXE @ Jan 17 2009, 07:45 PM) *
no registry setting are imported from the txtsetup.oem

Can you add this feature: import registry settings?

Do you pocess a nforce hardware at AHCI mode?

sata_ide\txtsetup.oem
QUOTE
[Config.BUSDRV]
value = parameters\PnpInterface,5,REG_DWORD,1

Nvgts.sys does require PnpInterface setting.
Zetup-EXE
@cdob: could you tell me, what's your intention is?

@all: well, i know i am new here, but i'll apologize myself that i'll not be able to answer as fast as i did the last few days. reason for that is, i am currently lost in programming vista/2008 3rd-Party injectionroutines and i was a little bit green to believe i could do that quickly wacko.gif

so please be patient with me, ok?

by the way: i started a bug.txt for myself, where i notice some bug's that i found while i am programming the vista/2008 thing. if you find some bugs, please let me know. I'll try to fix them with the next release. thank you.

cu...
Zetup-EXE
sanbarrow
QUOTE
so please be patient with me, ok?

Sure - we are already happy with what you gave us right now - I for one was looking for this tool since 2 years now - it exactly fits my needs for P2V and advanced VMware stunts.

Don't feel pressed - follow your own quality standards
Regards and thanks

Ulli
cdob
QUOTE (Zetup-EXE)
could you tell me, what's your intention is?

Intention: enhance DriveInjection GUI to support as much hardware as possible.

Nvgts.sys is a exeption:
http://www.911cd.net/forums//index.php?s=&...st&p=143741
http://www.msfn.org/board/index.php?showtopic=127381

Can you parse txtsetup.oem
QUOTE
[Config.BUSDRV]
value = parameters\PnpInterface,5,REG_DWORD,1

and write to offline registry:
HKLM\offline_SYSTEM\ControlSetNNN\Services\nvgts\Parameters\PnpInterface,5,REG_DWORD,1


Another example iastor.sys txtsetup.oem
QUOTE
[Config.iaStor]
value = "", tag, REG_DWORD, 1b
value = "", ErrorControl, REG_DWORD, 1
value = "", Group, REG_SZ, "SCSI Miniport"
value = "", Start, REG_DWORD, 0
value = "", Type, REG_DWORD, 1
Parse section and write to HKLM\offline_SYSTEM\ControlSetNNN\Services\iastor\

General request:
parse txtsetup.oem [Config.*] and add settings to offline registry.
Zetup-EXE
@cdob: i am sorry to disappoint you (at the moment wink.gif ), but this tool was made for those who needs to get their windows quick, easy and fast online again or would you tell me that you've a BSOD and the injection didn't work for you?
amalux
@Zetup-EXE,

Thank you for this great tool! thumbup.gif

The version I downloaded from your link is German lang only. Did I miss sth or...

Re-read first post, worked great - thanks again!

@Ulli,

Does the English .ini your working on address the above? I notice your screenshots are in English, is that from your .ini or is there an Enlish version already available, if so where?


Thanks guys thumbsup.gif
Galapo
Yes, 'nvgts' requires PnpInterface setting even at txtmode. It was basically the first driver I think to alert us to the issue. There's a few more now as reported at DriverPacks forum. So yes, the setting is crucial for some drivers.

Regards,
Galapo.
cdob
QUOTE (Zetup-EXE @ Jan 20 2009, 08:50 PM) *
i am sorry to disappoint you (at the moment wink.gif ), but this tool was made for those who needs to get their windows quick, easy and fast online again

Then let me rephrase the request: a quick and easy approach.
Add PnpInterface=5 at suspicious drivers.

Curtain mass device drivers are a child to scsiport.sys or storport.sys.
All scsiport.sys or storport.sys child driver txtsetup.oem contain PnpInterface=5. At least I haven't found a exeption so far.
This are suspicious drivers. These driver may require PnpInterface=5.

A batch example
CODE
rem add PnpInterface for scsiport.sys and storport.sys storage subsystems
findstr.exe /m /I "scsiport.sys storport.sys" "%target_root%\system32\drivers\!driver!.sys" && (
echo.
echo [HKEY_LOCAL_MACHINE\loaded_SYSTEM\%ControlSet%\Services\!driver!\Parameters\PnpInterface]
echo "5"=dword:00000001)>>"%temp%\fix_hdc.reg"



QUOTE (Zetup-EXE @ Jan 20 2009, 08:50 PM) *
or would you tell me that you've a BSOD and the injection didn't work for you?

No I can't tell this myself, because I don't own a AHCI nforce hardware.

Does anybody use AHCI nforce hardware and can test?


http://us.download.nvidia.com/Windows/nFor...tional_whql.exe
There is \IDE\WinXP\sata_ide\txtsetup.oem and all files are at \IDE\WinXP\sata_ide\.
All files are expaned by default already.

DriverInjection 0.99.1 BETA:
driver "NVIDIA nForce Storage Controller (required)" selected.

Injection failed: file not found

Can you try yourself?


QUOTE (Galapo @ Jan 20 2009, 09:25 PM) *
Yes, 'nvgts' requires PnpInterface setting even at txtmode. It was basically the first driver I think to alert us to the issue.
PnpInterface has been reported over the last years at some ocassions. This has been ignored widely because of seldom used hardware.
Yes nvgst alerted us first, because that's a mainstream driver.
Galapo
QUOTE (cdob @ Jan 21 2009, 08:35 AM) *
All scsiport.sys or storport.sys child driver txtsetup.oem contain PnpInterface=5. At least I haven't found a exeption so far.

That's correct. I haven't found an exception either.

QUOTE
QUOTE (Zetup-EXE @ Jan 20 2009, 08:50 PM) *
or would you tell me that you've a BSOD and the injection didn't work for you?

No I can't tell this myself, because I don't own a AHCI nforce hardware.

Does anybody use AHCI nforce hardware and can test?

For those that have testing team access to DriverPacks, here's some research on the issue by Debugger: http://forum.driverpacks.net/viewtopic.php?pid=26105#p26105. Couple of results: either no HDD detected, or black screen with blinking cursor at boot.

Note: peimg.exe from WAIK does a fantastic job at injecting drivers direct from INF, registry entries specified in INF inclusive. Version 2 of OfflineSysPrep will use it to inject user-provided drivers into offline system, but I've also played around and found a way to do it to the running system also. Since peimg.exe does the job well, I couldn't be bothered fooling around coding what it does anyway, just provide the gui front-end and the necessary tweaks to get it to work on non-Vista systems.

Regards,
Galapo.
Zetup-EXE
Hi there,

@cdob: Congratulations biggrin.gif you found a really annoying bug. The Injection fails because of the postition from the catalog = d1, nvata.cat entry within the txtsetup.oem. workarround to solve this litte annoying problem is. copy the entry to the end of the filelist under the section [Files.scsi.BUSDRV], so that the last entry is the catalog entry.

i fixed this bug, so in the next release THIS workarroung isn't necessary anymore.

i am sorry.

cu..

Zetup-EXE
Zetup-EXE
QUOTE
Note: peimg.exe from WAIK does a fantastic job at injecting drivers direct from INF, registry entries specified in INF inclusive. Version 2 of OfflineSysPrep will use it to inject user-provided drivers into offline system, but I've also played around and found a way to do it to the running system also. Since peimg.exe does the job well, I couldn't be bothered fooling around coding what it does anyway, just provide the gui front-end and the necessary tweaks to get it to work on non-Vista systems.


@galapo: you're right, peimg.exe does a great job. but there are things to keep in mind: to patch a winxp system you must test and consider different things and also know what you do. That's not easy for people who are not so familiar with the systeminternals and so on. it's also no option if you have trouble and, like always, no time to get a system back to life (if you have to change the physical system). that's why "DriverInjection" was made, just to inject drivers and nothin' more.

cu..
Zetup-EXE
Rolf Wetjen
Hi Zetup-EXE,

great work and many thanks form me.
But one issue: I got an AutoIt Error message box as soon as I select the driver:
Line -1:
Error: Array variable has incorrect number of subscripts dimension range exeeded.

This is my txsetup.oem for a sil3112 sata controler:
CODE

; This file installs the SiI 3x12 SATARaid driver as part of text
; mode setup on Windows NT, Windows 2000, Windows XP, Windows Server 2003, and Windows Vista.
;
; Copyright © 2002-2007 by Silicon Image, Inc.
; All rights reserved



[Disks]
disk1 = "Silicon Image SiI 3x12 SATARaid Driver Installation Disk",\Si3112r.sys,\

[Defaults]
SCSI = Si3112r_XP

[SCSI] ; HwComponent section
Si3112r_XP = "Silicon Image SiI 3x12 SATARaid Controller for Windows XP/Server 2003/Vista"
Si3112r_NT = "Silicon Image SiI 3x12 SATARaid Controller for Windows NT 4.0 and 2000"

[Files.SCSI.Si3112r_XP]
driver = disk1,si3112r.sys, Si3112r
driver = disk1,SiWinAcc.sys, SiFilter
inf = disk1,Si3112r.inf
dll = disk1,SilSupp.cpl
catalog = disk1, Si3112r.cat


[Files.SCSI.Si3112r_NT]
driver = disk1,si3112r.sys, Si3112r
inf = disk1,Si3112r.inf
dll = disk1,SilSupp.cpl
catalog = disk1, Si3112r.cat

[HardwareIds.SCSI.Si3112r_XP]
id = "PCI\VEN_1095&DEV_3112&SUBSYS_61121095", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_611215D9", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_34228086", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_B0031458", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0111019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0121019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0131019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0141019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0151019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1014147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_100B147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1402147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1404147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1802147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1804147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1C00147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_5930107D", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_249510F1", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_809D1043", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0270A0A0", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_044DA0A0", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_044CA0A0", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_92011905", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_92151905", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_904C1905", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_904B1905", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A41810FD", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A41910FD", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A71910FD", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_90171695", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_C2001297", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_C2011297", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_15D40035", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_340217F2", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_100415BD", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_F641270F", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C0F105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C13105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C58105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C40105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C41105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C42105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C43105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C44105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C22105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C2A105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_2A1E103C", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_65121095", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_B0031458", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1014147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1021147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_100B147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1C06147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1C00147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1C03147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1C04147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1406147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1407147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_90191695", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_C2021297", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_C2031297", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_C2041297", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_534D108E", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_02B71014", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_02C51095", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_2A1E103C", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_91451462", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_006C1025", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_010D1025", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_0010182D", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_436E1002", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_0A44174B", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_0A45174B", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_00301462", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_A43110FD", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_F3631297", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_07201462", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_B0031458", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_92691509", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_5005148C", "Si3112r"
id = "PCI\VEN_1002&DEV_4379&SUBSYS_43791002", "Si3112r"
id = "PCI\VEN_1002&DEV_437A&SUBSYS_437A1002", "Si3112r"
id = "PCI\VEN_1002&DEV_4379&SUBSYS_3009103C", "Si3112r"
id = "PCI\VEN_1002&DEV_437A&SUBSYS_3009103C", "Si3112r"

[HardwareIds.SCSI.Si3112r_NT]
id = "PCI\VEN_1095&DEV_3112&SUBSYS_61121095", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_611215D9", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_34228086", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_B0031458", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0111019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0121019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0131019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0141019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A0151019", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1014147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_100B147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1402147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1404147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1802147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1804147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_1C00147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_5930107D", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_249510F1", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_809D1043", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0270A0A0", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_044DA0A0", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_044CA0A0", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_92011905", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_92151905", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_904C1905", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_904B1905", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A41810FD", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A41910FD", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_A71910FD", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_90171695", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_C2001297", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_C2011297", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_15D40035", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_340217F2", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_100415BD", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_F641270F", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C0F105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C13105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C58105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C40105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C41105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C42105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C43105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C44105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C22105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_0C2A105B", "Si3112r"
id = "PCI\VEN_1095&DEV_3112&SUBSYS_2A1E103C", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_65121095", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_B0031458", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1014147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1021147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_100B147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1C06147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1C00147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1C03147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1C04147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1406147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_1407147B", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_90191695", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_C2021297", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_C2031297", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_C2041297", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_534D108E", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_02B71014", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_02C51095", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_2A1E103C", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_91451462", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_006C1025", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_010D1025", "Si3112r"
id = "PCI\VEN_1095&DEV_3512&SUBSYS_0010182D", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_436E1002", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_0A44174B", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_0A45174B", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_00301462", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_A43110FD", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_F3631297", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_07201462", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_B0031458", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_92691509", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_5005148C", "Si3112r"
id = "PCI\VEN_1002&DEV_4379&SUBSYS_43791002", "Si3112r"
id = "PCI\VEN_1002&DEV_437A&SUBSYS_437A1002", "Si3112r"
id = "PCI\VEN_1002&DEV_4379&SUBSYS_3009103C", "Si3112r"
id = "PCI\VEN_1002&DEV_437A&SUBSYS_3009103C", "Si3112r"

; NOTE: In order to install Windows 2000 onto a drive that is attached
; to this controller you must delete the line that reads:
;
; value = Parameters\PnpInterface, "5", REG_DWORD, 1
;
; from the [Config.Si3112] section below.

[Config.Si3112r]
value = Parameters\PnpInterface, "5", REG_DWORD, 1
value = ProblemDevices, "", REG_SZ, ""
value = ProblemDevices, "Maxtor 4D060H3 DAK05GK0", REG_SZ, "MaxMode = UDMA-5"
value = ProblemDevices, "ST320012AS", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST330013AS", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST340017AS", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST360015AS", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST380023AS", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST3120023AS", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST340014ASL", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST360014ASL", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST380011ASL", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST3120022ASL", REG_SZ, "Mod15Write"
value = ProblemDevices, "ST3160021ASL", REG_SZ, "Mod15Write"
Zetup-EXE
Hi Rolf,

first the good news: i can reproduce the error, so i can search to fix this.

...some minutes later....

now the best news: i fixed this error in the latest release (currently only available on my harddisk) wink.gif
the reason for this error, the txtsetup.oem got more entries as i expected a txtsetup.oem could have. so the array which stores the necessary values are just to small blush.gif

workarround for this (at the moment, and in this case) is to delete some entries under the sections [HardwareIds.SCSI.Si3112r_XP] and/or [HardwareIds.SCSI.Si3112r_NT]. in this case, you'll just need these two entries like:

[HardwareIds.SCSI.Si3112r_XP]
id = "PCI\VEN_1095&DEV_3512&SUBSYS_0010182D", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_436E1002", "Si3112r"

[HardwareIds.SCSI.Si3112r_NT]
id = "PCI\VEN_1095&DEV_3512&SUBSYS_0010182D", "Si3112r"
id = "PCI\VEN_1002&DEV_436E&SUBSYS_436E1002", "Si3112r"

because DriverInjection doesn't care about the &SUBSYS_.... it should be adequate.

thx. for your testing.

cu..
Zetup-EXE
Rolf Wetjen
Hi Zetup-EXE,

thanks for your advice. This was my assumption too and I tried it.
But some bad news: I expected to find something like VEN_1095&DEV_3112&SUBSYS_61121095 in the offline registy after injecting the driver with a modified oem file with this string only, but nothing, not even VEN_1095. The files were copied ok but I've a WINDOWS\OEM directory on the original maschine containing the driver files too and DriverInjection didn't create this on test maschine. But I don't know whether it is needed.
Can you tell me what DriverInjection should do in detail?
Be welcome with anything I can do to support you.
Zetup-EXE
Hello,

i've some question's: is the controller you want to inject available on the machine where you want to execute the injection? did you download devcon.exe?

don't expect to find &SUBSYS_61121095 at the registry. where (full path!) did you expect the key within the registry?

In detail DriverInjection uses the txtsetup.oem file to generate the specific custom, for this driver only valid, registrysettings and copy the necessary files to the folders inf, system32 and system32\drivers. it just automating the process you do when you want to inject a thirdparty driver at your own. no magic!

cu..
Zetup-EXE
Rolf Wetjen
Hi Zetup-EXE,

good news. I did some analysis and at least tried again in a real environment with the 3112r installed and everything worked fine.
By the way: I was able to do an offline installation with devcon too:
runscanner.exe /t 0 /ac /cp /m+ /sd /y devcon.exe install D:\1.0.60.0\Si3112r.inf "PCI\VEN_1095&DEV_3112&SUBSYS_61121095"
Worked fine beside of copying the files. May be paraglider's runscanner has a switch for this too.

Thanks
Galapo
QUOTE (Rolf Wetjen @ Feb 12 2009, 05:58 PM) *
Worked fine beside of copying the files. May be paraglider's runscanner has a switch for this too.

You would need to redirect system variables to correspond to the offline system.

Alternatively, use peimg.exe to inject. Everything is copied fine.

Regards,
Galapo.
Zetup-EXE
@Rolf: Well, this is of course another way to inject the driver rolleyes.gif

in a kind of, i get slowly but surely the feeling my tool becomes misunterstood. my tool was made to inject drivers fast, quick and dirty just to bring windows XP / 2003 back to life, so people can fix further issues at the system.

'Cause a lot of people asked what exactly DriverInjection do, here is a short overview:
Depending on your decision at page2 DriverInjection do the following if you choosed Standard-IDE Driver. It asks you where the systemhive is stored on the broken system (mostly C:\Windows\system32\config\system). Then DI looks for the driver.cab file on the broken system. if found it checks whether sp1.cab, sp2.cab and/or sp3.cab also exists (to get the latest driverfiles). if everything goes fine, you'll view the summary page, and by clicking next DI do its job (check files, expand the four driverfiles and copy them to the targetdirectory \system32\drivers, then it generates the necessary registrysettings, loads the remote hive and inject the settings.

If you decide to inject 3rd party driver DI do mostly the same like the ide-driver injection except it tries to get the necessary registry and fileinfos from the txtsetup.oem.

hope it's more clearly now. in short: DI should be a flexible tool for 3rd party driver, and not like you had to do before, generate registry setting, copy files and so on. just quick and dirty to bring your system back to life (hopefully *g*)

cu..

Zetup-EXE
JFX
Thanks for sharing this great tool!

Please could you add a search for devcon.exe in the PATH Enviroment, so it havent to be in the same directory?

As i see you use AutoIt, you can use this to find devcon.exe.

CODE
Opt("ExpandEnvStrings",1)
$SearchPath = StringSplit("%Path%", ";")
For $x = 1 To $SearchPath[0]
    If FileExists($SearchPath[$x] & "\devcon.exe") Then
        $DevconFullPath = $SearchPath[$x] & "\devcon.exe"
    ExitLoop
    EndIf
Next
Zetup-EXE
Hi JFX,

yeah using autoit makes life much more easier blush.gif

i'll see what i can do.... but because the devcon.exe check is at the beginning i would say it should be possible.

@all: after implementing the search from jfx i'll release the vista, 2008 version which will be BETA 0.99.8! so stay tuned....!


cu...
Zetup-EXE
Zetup-EXE
Hi,

here is the new Version of DriverInjection:

DriverInjection 0.99.8 Download

Some words to it:

- Driverinjection is looking in the path and/or in its own directory for devcon.exe
- Supports now VISTA/2008 IDE-Controller Injection and a lot* of 3rd-Party controller injection via inf-file
- Some bugfixes (and maybe some new bugs created whistling.gif )
- Even if you choose consciously the "wrong" Controller THIS PCI\VEN-ID will be used instead of the servicename for the CriticalDeviceDatabase key like the version prior!

Some remarks:

- Depending on the inf-file you'll see sometimes the same controller again and again in step2 at the 3rd-Party Controller Page
i.e.: NVIDIA nForce Serial ATA Controller
NVIDIA nForce Serial ATA Controller#2
.
.
NVIDIA nForce Serial ATA Controller#12
This is because of the different PCI\VEN-ID's behind this string! In this case there will be only try and error or even peimg.exe as alternative!

- Without sysprep even DriverInjection cannot solve problems that might occur with the bcd store! solve the bcd issue and than use DriverInjection if you see the STOP 0x07B BSOD!
- VISTA/2008 path works ONLY with 32Bit Version.


*) Because of the complexity of inf-files there is a little chance that DriverInjection won't work for you in your specific case! I tested DriverInjection with over 20 diffrent inf-files and all worked fine on my system (vmware and some real hosts). Remember DriverInjection tries to get the necessary values to bring back your system to life. DriverInjection does not retrieve all values provided by inf-file (like some service parameter)

the last word for today: Try it, you have nothin' to loose wink.gif

cu..
Zetup-EXE
NoLo813
I been wanting a tool like this for past year thumbsup.gif . im going to add to my build of ubcd4win apps menu .xml and test it out with an unattended xp setup and leave some feedback.
Zetup-EXE
QUOTE (NoLo813 @ Apr 1 2009, 06:00 AM) *
I been wanting a tool like this for past year thumbsup.gif . im going to add to my build of ubcd4win apps menu .xml and test it out with an unattended xp setup and leave some feedback.



Were your tests successfully ? rolleyes.gif
Lancelot
Thank you for sharing this utility Zetup-EXE
I will try DriverInjection 0.99.8 with xp32 on my crayz sorcerer.gif jmicron raid0 disks which i was unsuccessfull with other utilities by migrating a vmware xp32 by ghost. But need quite long time to start tests again smile.gif Cu than
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2013 Invision Power Services, Inc.