Use the following syntax and command parameters to run Device Path Exerciser.
The Device Path Exerciser command parameters have two types of prefixes.
dc2 [DeviceParameters] [TestParameters] [LogParameters] dc2 [/pd] [/?]
To specify device parameters, use the following syntax:
[/dr driver [driver...] | [/d] device | {+|/|-}rd | {+|/|-}a ] [{+|/|-}sl] [{+|/|-}y]
This parameter is valid only on Windows XP and later version of Windows.
The driver argument specifies the service name of the driver. You can specify up to ten drivers. If the service name includes spaces, enclose the name in quotation marks.
The device argument specifies the NT device name of a device, such as \device\cdrom. You can specify only one device in each Device Path Exerciser command. To display the object names of all devices on the system, use /pd.
The /d parameter is optional. Device Path Exerciser interprets any item on the command line as a device, unless it is preceded by a plus sign (+), a minus sign (-) or a forward slash (/).
This option is disabled by default. Use +rd or /rd to enable it.
This option is disabled by default. Use +a or /a to enable it.
This option is disabled by default. Use +sl or /sl to enable it.
This parameter is used when you specify a driver ( /dr ) or the random selection of a device ( /rd ).
By default, disk devices are included in tests. To exclude them, use -y.
For more information about selecting devices, see the Comments section later in this topic.
This option is disabled by default. To enable it, use /k or +k.
Because Direct Device Open Operations are an optional extension of the Synchronous Open Operations, you must use the /dd parameter with the /k parameter. Otherwise, the /dd parameter is ignored.
This option is disabled by default. To enable it, use /dd or +dd.
ControlCodeFile is the name of the input file for the Active Control Test. If you omit the path, Device Path Exerciser assumes that the file is in the current directory.
This option is disabled by default. To enable it, use /ac or +ac.
You can use the other test parameters to override the HCT Test settings. For example, to run the HCT Test without Direct Device Open Operations, use +hct -dd.
This option is disabled by default. To enable it, use /hct or +hct.
This parameter is the equivalent using both the /i and /f parameters in a Device Path Exerciser command.
This option is disabled by default. To enable it, use /k or +k.
This parameter is the equivalent of using both the /fr and /fn parameters in a Device Path Exerciser command.
This option is disabled by default. To enable it, use /i or +i.
This parameter is the equivalent of using both the /fr and /fn parameters in a Device Path Exerciser command.
This option is disabled by default. To enable it, use /f or +f.
This option is disabled by default. To enable it, use /ir or +ir
This option is disabled by default. To enable it, use /fr or +fr.
This option is disabled by default. To enable it, use /in or +in.
This option is disabled by default. To enable it, use /fn or +fn.
This option is disabled by default. To enable it, use /w or +w.
This option is disabled by default. To enable it, use /s or +s.
Because the Streams Test is an extension of the Relative Open Test, the /j parameter is valid only with the /s parameter.
This option is disabled by default. To enable it, use /j or +j.
This option is disabled by default. To enable it, use /m or +m.
While retrieving the extended attributes of a file, Device Path Exerciser passes a blank (zero-length) query and an invalid buffer address to the driver.
This parameter is valid only with the /m parameter, which adds the Miscellaneous Tests to the DC2 test session.
This option is disabled by default. To enable it, use /e or +e.
This option is disabled by default. To enable it, use /oc or +oc.
This option is disabled by default. To enable it, use /q or +q
This option is disabled by default. To enable it, use /sd or +sd.
This option is disabled by default. To enable it, use /pr or +pr.
This option is enabled by default. To disable it, use -im.
This option is disabled by default. To enable it, use /n or +n.
This option is disabled by default. To enable it, use /p or +p.
To use this option on Windows XP and earlier versions of Windows, pool tagging must be enabled on the system. To enable pool tagging, use GFlags to set the +ptg flag in the registry, and then restart the system. (For more information on GFlags, see GFlags with Page Heap Verification.)
This option is enabled by default. To disable the feature, use -al.
Low Resources Simulation, also known as fault injection.
This parameter enables the specified Driver Verifier features for all drivers that Driver Verifier is monitoring. However, this parameter does not start Driver Verifier monitoring on the driver that Device Path Exerciser is testing. Before using this feature, start Driver Verifier monitoring for the driver you are testing.
This option is disabled by default. To enable it, use /fi or +fi.
This option is disabled by default. To enable it, use /c or +c.
This option is disabled by default. To enable it, use /r or +r.
The min argument represents a decimal number. The default is 0. (The minus sign (-) prefix is not valid with dl.)
For information about the DeviceType parameter, see Defining I/O Control Codes.
The max argument represents a decimal number. The default is 200. (The minus sign (-) prefix is not valid with du.)
For information about the DeviceType parameter, see Defining I/O Control Codes.
The MinFunction argument represents a decimal number. The default is 0. (The minus sign (-) prefix is not valid with fl.)
For information about the FunctionCode parameter, see Defining I/O Control Codes.
The MaxFunction argument represents a decimal number. The default is 400. (The minus sign (-) prefix is not valid with fu.)
For information about the FunctionCode parameter, see Defining I/O Control Codes.
SeedNumber can be any positive integer. (The minus sign (-) prefix is not valid with rs.)
A seed number is the starting number for an algorithm that generates random numbers. Changing the seed number changes the "random" numbers that the algorithm generates.
Type the number of calls in decimal format. The default is 100000. (The minus sign (-) prefix is not valid with t.)
The x parameter specifies the events.
| Parameter | Description |
|---|---|
| a | t | Log all events. Records every request sent to the device.
The /lta and /ltt parameters can generate an enormous volume of data and can increase the time it takes to run a test from hours to days. To avoid prolonged testing, use this option only when performing one test. |
| g | Log events for a group of tests within a test category, such as the Random Test. |
| c | Log only events for a test category, such as the Random Test. |
| n | No logging to Dc2.log. |
The y parameter specifies the message type.
| Parameter | Description |
|---|---|
| a | I | Log information, warnings, errors, and fatal diagnostic errors. |
| w | Logs warnings, errors, and fatal errors. |
| e | Log errors and fatal errors. |
| f | Log only fatal errors. |
| n | No logging to Diags.log. |
The z parameter specifies the events.
| Parameter | Description |
|---|---|
| r | a | Log all test information required to restart a test. |
| n | No logging to Crashn.log.
If you use this option, Device Path Exerciser will not be able to skip tests completed during this test session (/r) or skip tests that crashed the system during this test session (/c). |
Device Path Exerciser can test multiple drivers or one device in each test session. If you list multiple devices in a command, Device Path Exerciser tests only the last device listed. All other devices are ignored.
If you omit all the parameters that select a driver or device to test (/dr, /d, device, /rd, /a), Device Path Exerciser prompts you for a device by displaying the name of every device in the system. To skip to a particular device during the prompt, type a forward slash (/) followed by the device name, such as /cdrom.
For descriptions of the logs, see Device Path Exerciser Logs.