3.12.4.1.9 PathName (Opnum 15)

The PathName method is received by the server in an RPC_REQUEST packet. In response, the server sets the path name that identifies the Queues that are represented by this object.

 [propput] HRESULT PathName(
   [in] BSTR bstrPathName
 );

bstrPathName: A BSTR that contains the UNC or DNS path name of the queue.

Return Values: The method MUST return S_OK (0x00000000) on success or an implementation-specific error HRESULT on failure.

When processing this call, the server MUST follow these guidelines:

  • Set the QueuePathName instance variable to the bstrPathName input parameter.

  • The server MUST generate a Get Queue Format Name From Pathname event (section 3.1.6.2) with the following inputs:

    • iPathName = the bstrPathName input parameter

  • If the rStatus return value is not equal to MQ_OK (0x0000000), the server MUST return an error HRESULT, and take no further action.

  • The server MUST set the QueueFormatName to the value of the FormatName return value.

  • Set the DirectoryPath instance variable to NULL.

  • If the DestinationOpenQueueDescriptor instance variable is not equal to NULL, reopen the object as follows:

    1. Call the MSMQDestination::Close method.

    2. Call the MSMQDestination::Open method.

  • Return S_OK (0x00000000), and take no further action.