Visual Basic Code Example: Enforcing Encryption
This example provides a Sub procedure that creates a queue that enforces encryption. Encryption is enforced by setting the MSMQQueueInfo.PrivLevel property of the destination queue to MQ_PRIV_LEVEL_BODY.
|The MSMQQueueInfo.PrivLevel property can be set when the queue is created or later by calling MSMQQueueInfo.Update. If this property is set after the queue is created, the new setting only applies to those messages sent after the queue property is changed.|
To enforce encryption when creating a queue
Declare the MSMQQueueInfo variable for the queue.
Create a new MSMQQueueInfo object and assign it to the variable.
Set the MSMQQueueInfo.PathName property to the UNC or DNS path name of the queue.
Set optional queue properties. This example sets the following optional properties.
MSMQQueueInfo.PrivLevel: Enforces encryption.
MSMQQueueInfo.Label: Specifies label for queue.
Call MSMQQueueInfo.Create to create the queue.
The following code example can be run on all versions of Message Queuing.
Sub EnforceEncryption( _ strPathName As String, _ lPrivLevel As Long _ ) Dim qinfo As MSMQQueueInfo ' Create a new MSMQQueueInfo object. Set qinfo = New MSMQQueueInfo ' Specify the path name of the queue. qinfo.PathName = strPathName ' Set optional queue properties. qinfo.Label = "TestQueue" qinfo.PrivLevel = lPrivLevel ' Create a queue. On Error GoTo ErrorHandler qinfo.Create MsgBox "Created queue that accepts private messages only." Exit Sub ErrorHandler: MsgBox "Error " + Hex(Err.Number) + " was returned." _ + Chr(13) + Err.Description End Sub