How to install my AVSTREAM minidriver of a PCI device in INF file?

Discussion in 'Windows Vista Drivers' started by eraser, Apr 9, 2009.

  1. eraser

    eraser Guest

    I've written a AVSTREAM minidriver for my Video Capture & MPEG-4
    Compress Card and it has been installed successfully as a PCI device
    with the ID of VEN_16f4&DEV_8000, the Address and Interrupt resources
    have no conflict. I use WINDBG to debug the install process and the
    AddDeive routine and StartDevice routine is processing well.
    But when I want to use Gragh Edit to run my minidriver as a filter, I
    can't find my driver in the WDM Stream Capture Device. My minidriver
    follows the Avshws example in WINDDK.
    In INF I write this:

    [Manufacturer]
    %CaptureDevice% = CaptureDevice


    [CaptureDevice]
    %Captures.DeviceDesc%=Captures,PCI\VEN_16f4&DEV_8000
    ..
    ..
    ..
    [Captures.RunOnce.AddReg]
    HKLM, %RunOnce%, "Captures.Reader.Capture",,"rundll32.exe
    streamci,StreamingDeviceSetup %Captures.DeviceId%,%KSSTRING_Filter%,
    %KSCATEGORY_CAPTURE%,%01%\Captures.inf,Captures.Reader.Install"
    ..
    ..
    ..
    [Captures.Reader.Install]
    AddReg = Captures.Reader.AddReg


    [Captures.Reader.AddReg]
    HKR,,CLSID,,%Proxy.CLSID%
    HKR,,FriendlyName,,%Captures.FriendlyName%
    ..
    ..
    ..
    [Strings]
    RunOnce = "Software\Microsoft\Windows\CurrentVersion
    \RunOnce"
    Proxy.CLSID = "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
    Captures.DeviceId = "VEN_16f4&DEV_8000"
    KSCATEGORY_CAPTURE = "{65E8773D-8F56-11D0-A3B9-00A0C9223196}"
    KSSTRING_Filter = "{9B365890-165F-11D0-A195-0020AFD156E4}"


    Is there any problem in my INF file or other problems exist?
    Robin
     
    eraser, Apr 9, 2009
    #1
    1. Advertisements

  2. eraser

    eraser Guest

    I installed the minidriver by right-click the PCI device to install.
    This may cause the

    [DefaultInstall]
    CopyINF = Captures.inf
    AddReg = Captures.RunOnce.AddReg

    [Captures.RunOnce.AddReg]
    HKLM, %RunOnce%, "Captures.Reader.Capture",,"rundll32.exe
    streamci,StreamingDeviceSetup %Captures.DeviceId%,%KSSTRING_Filter%,
    %KSCATEGORY_CAPTURE%,%01%\Captures.inf,Captures.Reader.Install"

    cannot be called correctly.
    I checked the device, and found that only the .sys driver is
    installed, the Capture.inf is not copied to the object system. Maybe
    this cause the driver cannot be found in the GraphEdit.
    Can a PCI device be installed by right-click the INF file to install?
     
    eraser, Apr 10, 2009
    #2
    1. Advertisements

  3. eraser

    Tim Roberts Guest

    No, of course not. PCI drivers are plug-and-play, and must be installed
    through the plug-and-play mechanism.

    Is your device currently plugged in to a slot? If so, when you go in to
    Device Manager, what driver is installed for it?

    You need to do "Update Driver" in Device Manager in order to let PnP do its
    thing.
     
    Tim Roberts, Apr 11, 2009
    #3
  4. eraser

    eraser Guest

    Thank you for your information!
    I've succeeded in install my minidriver and in GraghEdit there is my
    filter, your suggestion is very helpful!
     
    eraser, Apr 13, 2009
    #4
  5. eraser

    eraser Guest

    Thank you for your information!
    I've succeeded in installing my minidriver by following your
    suggestion.
     
    eraser, Apr 13, 2009
    #5
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.