You can submit the requests locally from the command line using the provtest.exe utility in the \Program Files\Microsoft Provisioning\Tools subdirectory.
If you want to submit XML requests to a remote data center, you must first install the MPF Client COM object on the computer from which you are submitting the request. To install the COM object, use the custom installation option in Microsoft Provisioning Framework (MPF).
To submit a request from the command line:
The provtest.exe utility submits your request to MPF. MPF will return a response if one is associated with the procedure you submit. If errors occur, MPF will return them in the response to the command line.
The command-line syntax used by the provtest utility is:.
ProvTest [/t<n>] [/r<n>] [/e] [/m] [/x<n>] [/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>] <request.xml file>
The following table explains each of the provtest parameters:
|/t<n>||Starts n execution threads to execute the request. Used to test a provider's multi-threading capabilities. 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. If a request is executed multiple times, only execution time is displayed.|
|/r<n>||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. If a request is executed multiple times, only execution time is displayed.|
|/e||Displays the error description. If not specified, only the HRESULT and execution time display. When specified together with the /t switch, the /r switch, or both, error responses are displayed. If not specified, error responses are not displayed.|
|/m||Measures and displays the execution time for the request. Automatically enabled when the /t switch, the /r switch, or both, are specified.|
|/x<n>||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 manager.|
|/qu||Submits the request as suspended to the queue manager.|
|/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 non-trusted to the specified namespace procedure. Used to override the default behavior of ProvTest.exe, which is to submit trusted requests. Procedure names that consist of multiple words must be encased in quotes (for example, "Simple Procedure").|
|/i:<server>||Executes a request to a remote server as a non-trusted Simple Object Access Protocol (SOAP) request using the IProvEngine interface. 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. Requires the /ia switch.|
|<request.xml file>||ProvTest.exe accepts any XML file, with any name, as long as it is a well-formed MPF request.|