How to import non-plug and play device driver?

  • Thread starter Thread starter Ann
  • Start date Start date
A

Ann

I imported a non-plug and play device driver from INF file, got a
component,added to database,added to project, and then built image.When the
image ran, the driver was not installed.It seems that I only added the files
of driver into image, but I didn't install the driver.

Could anyone tell me the method to import such a driver?

Thanks and Best Regards,

Ann
 
Not seeing your driver's inf file the first question comes - have you tried
installing the driver on XP Pro?
If you have, did it work properly? If it did, you may get the driver
registry settings from HKLM\system registry hive and include them into your
driver's SLD file (of course, you may first try the registry settings on
your XPe image by importing a .reg file).

Btw, have you checked your SLD file? What you see under Resources section?
If you think only driver's files were added to the image, only Files section
would have items (files).

KM
 
I've installed the driver on both XP Pro and XPE, and it worked properly.
I checked Resource section in my SLD,and found there were two types of
items:PnP Device ID and Service Data.

It seems I added files and registry. But the service was not started.Is it
right?
Could XPE start it?

Best Regards,

Ann
 
Ann,

Why did you think (you mentioned previously) you imported an inf file of non
PnP driver?
I'm confused why you got "PnP Device ID" resource.

I don't know why your driver does not get started (started or installed?)
but you can figure this out if you know the "default" driver's settings
(files/registries/etc.). You may also check you ServiceData resource
properties - StartType should be set to a value from 1 to 3 (I've seen some
inf file imports where StartType was set improperly).
Try using a registry monitoring tool like InCtrl5 or RegSnap to catch all
driver's registry entries when you install it manually on XP Pro machine (or
even XPe image).

KM
 
KM,

Thanks for your advice.

I've tried StartType from 1 to 3,and none of them succedded. But I'm not
sure of the results at present.I'll double check it later.

Meanwhile, I considered one method: Install the driver on XPe,Outport the
registry,and then import the reg file into image. But I don't konw how to
import a reg file into my image. just import reg file in CD,then import the
SLD into database,then add the component?

As for PnP, the driver cann't be found by PnP. The driver uses PnP
Devices.Maybe that is the reason I got "PnP Device ID" resource.

Best Regards,

Ann
 
Ann,

You may import your .reg file in to the same SLD file you got from the
driver .inf import. Then you would just need to update the component in XPe
database (import SLD again).
Or you can launch "regedit /s <your.reg file> during FBA.

Btw, as a first test step you may want to import .reg file data (by using
regedit) on your currently running XPe image that has the driver component
(.inf imported) included. Reboot you image after the import and see if it
fixes your driver problems.

Regarding PnP resources.. I can't be sure since I haven't seen your .inf
file. If you wish, you can share the .inf file with us. But first I'd try to
get the driver working with proper registry settings.

KM
 
Ann,

There is always a manual method that always gives good results.
You record all changes to registry that are made during driver installation,
and then you include them in your component.

For simpler drivers you will be interested in offline registry (less info
than when XPe is loaded).
Especially at values stored in keys under:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum

Sometimes trough: Advanced Component Properties, and resources like "PnP
Device ID" and "Service Data" it is possible to setup most or even all
required values to registry.
But this will require you to manually analyze registry or inf file and to
know what changes to registry are done by these resources.

This can allow you to create prettier component at the increased expense of
time. You should investigate this is you create many different components
one after another, if you do this occasionally, well...

Have a Happy New Year !
Slobodan
 
Back
Top