Microsoft KB Archive/178660

From BetaArchive Wiki

SAMPLE: Dumppci.exe Shows How To Dynamically Load/Unload Driver

Q178660



The information in this article applies to:


  • Microsoft Win32 Device Driver Kit (DDK) for Windows NT, versions 3.51, 4.0





SUMMARY

Dumppci.exe is a sample Win32 application and kernel-mode drive that demonstrates how to dynamically load or unload a driver, scan all the PCI devices in the system, and display the PCI configuration space for each device.



MORE INFORMATION

The following file is available for download from the Microsoft Download Center:


Dumppci.exe

For additional information about how to download Microsoft Support files, click the article number below to view the article in the Microsoft Knowledge Base:

Q119591 How to Obtain Microsoft Support Files from Online Services

Microsoft used the most current virus detection software available on the date of posting to scan this file for viruses. Once posted, the file is housed on secure servers that prevent any unauthorized changes to the file.


Dumppci.exe and Pcidumpr.sys

This is a sample driver that demonstrates the following:

  1. How to dynamically load or unload a driver using the Service Control Manager APIs. These APIs allow you to load a driver without having to modify the registry and reboot the system.
  2. How to scan the PCI slots and locate PCI devices.
  3. How to send data from a kernel-mode driver to a Win32 console mode application.

To run the sample:


  1. Build the driver and the Win32 application. See the DDK documentation for details on creating drivers and Win32 applications from the DDK Build Environment.
  2. Insure that the driver (Pcidumpr.sys) and the Win32 application (Dumppci.exe) are in the same directory.
  3. From a command prompt, type "dumppci" to see the options supported. Currently, you can display the PCI configuration data in either a formatted ("-f" option) or raw ("-r" option) manner.

When the program runs, the driver is automatically loaded and started. The Win32 application sends custom IOCTLs to the driver. The driver then scans all the PCI slots in the system and locates PCI devices. For each PCI device, the driver retrieves the PCI configuration space information and places it in the Win32 application's buffer.

Note that this sample will not work across a network. The driver and Win32 application must reside on the local computer.

Additional query words:

Keywords : kbfile kbsample
Issue type :
Technology : kbAudDeveloper kbWinDDKSearch kbWin32sSearch kbWin32DDKSearch kbWin32DDKNT351 kbWin32DDKNT400 kbWin32DDKNTSearch


Last Reviewed: December 6, 1999
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.