Managing Microsoft Provisioning Framework from the command line

Although most functionality in Microsoft® Provisioning Framework (MPF) is implemented using XML, you can implement some functionality directly from the command line. Command-line support includes the setup, administration, and testing of MPF.

Installing MPF from the command line

You can perform an unattended setup of MPF from the command line.

The Microsoft Provisioning Framework Software Development Kit (SDK) contains additional resources and information about performing an unattended setup of MPF from the command line. For more information on the SDK and how to use it, see Microsoft Provisioning Framework SDK.

Registering a namespace from the command line

To register a namespace, run ProvNamespace.exe. The command format is as follows: ProvNamespace NamespaceFile. The provisioning engine checks the configuration database for namespace changes every five minutes or on restart of the provisioning engine COM+ application in Component Services.

You can also import a namespace from one MPF configuration to another. The Microsoft Provisioning Framework Software Development Kit (SDK) contains additional resources and information about importing a namespace from one MPF configuration to another. For more information on the SDK and how to use it, see Microsoft Provisioning Framework SDK.

Using the ProvTest.Exe utility

You can use ProvTest.exe to test a custom provider. ProvTest.exe is a utility that submits sample requests to the MPF. You use it primarily to test clients and custom providers prior to deployment. You can run it from any computer on which core components and service providers are installed.

You can use ProvTest.exe to do the following tasks:

ProvTest.exe is located at Program Files\Microsoft Provisioning\Tools\ProvTest.exe

Command syntax

ProvTest.exe uses the following syntax.

ProvTest [/tn] [/rn] [/e] [/m] [/xn]
		 [/q] [/qu] [/qa queue ID] [/qd queue ID] [/qr queue ID]
		 [/qs queue ID] [/qc parent queue ID, child queue ID]
		 [/n:namespace /p:procedure]
		 [/i[s][a]:server] [/bu:user] [/bp:password]
		 [/a /d:unique ID /u:return URL] request .xml

Arguments

ProvTest.exe supports the following command-line switches, all of which are optional:

/tn Starts n execution threads to execute the request. Used to test the multi-threading capabilities of a provider. If not specified, only one thread is created. The maximum value for n is 64. By default, only one request is sent per thread. To send multiple requests, specify the /r switch.
/rn Repeats the request n times per thread. If not specified, the request is sent only once. By default, there is only one execution thread. For multi-threading, specify the /t switch.
/e Displays the error description. If not specified, only the HRESULT and execution time appear. When specified together with the /t switch, the /r switch, or both, error responses appear. If not specified, error responses do not appear.
/m Measures and displays the execution time for the request. This option is automatically implemented whenever you specify the /t switch, the /r switch, or both.
/xn Formats successive element levels of XML output using either a tab (n = 0) or the number of spaces specified by n (1 = n = 8).
/q Submits the request to the queue managers.
/qu Submits the request as suspended to the queue managers.
/qa queue ID Activates the specified queued request.
/qd queue ID Deletes the specified queued request.
/qr queue ID Displays the result of the specified queued request.
/qs queue ID Checks the status of the specified queued request.
/qc parent queue ID, child queue ID Establishes a parent/child relationship between queued requests.
/n:namespace /p:procedure

Submits the request as nontrusted to the specified namespace procedure. This option overrides the default behavior of ProvTest.exe, which is to submit trusted requests.

/i:server Executes a request to a remote server as a nontrusted SOAP (Simple Object Access Protocol) request using the SubmitRequest method of the IProvEngine interface. This option must be specified together with the /n and /p switches.
/is:server Same as /i except that the transport protocol is HTTPS instead of HTTP.
/ia:server Same as /i except that authentication is basic authentication instead of anonymous.
/bu:user /bp:password Specifies a user name and password for basic authentication. This option requires the /ia switch.

To view the complete syntax for ProvTest.exe, at a command prompt, type:

ProvTest /?
or
ProvTest /h

Important

The Microsoft Provisioning Framework Software Development Kit (SDK) contains additional resources and information about ProvTest.exe and the IProvEngine interface. For more information on the SDK and how to use it, see Microsoft Provisioning Framework SDK.