Второй параметр метода Open служит
Второй параметр метода Open служит для разделения доступа к одной очереди между процессами и при отправке может быть только MQ_DENY_NONE
Set q = FindQueOnLabel(strQueLbl).Open(MQ_SEND_ACCESS, MQ_DENY_NONE)
Создаем новый объект “сообщение”. MSMQMessage входит в ActiveX-интерфейс сервера сообщений.
Dim msg As New MSMQMessage
Задаем свойства сообщения. Обычно, когда в одну очередь поступает много сообщений, предусматривающих различный характер прикладной обработки, программист может использовать Label и AppSpecific в качестве отличительных признаков типа сообщения. Поясним наглядно. Пусть некая процедура занимается обработкой выписки по какому-то заранее известному счету. Отводить по очереди на каждого клиента в общем-то неэкономно (хотя в принципе ограничений нет), поэтому выписки по всем счетам падают в общую очередь приема. В этом случае разумно вынести номер счета в метку сообщения, чтобы наша процедура не отвлекалась на чтение тела сообщения, если этот счет ей заведомо неинтересен.
msg.Label = strMsgLbl
msg.AppSpecific = lngAppSpec
msg.Body = varBodyText
Если требуется ответ, указываем MSMQQueueInfo очереди, в которой мы были бы счастливы его видеть:
If strRespQueLbl <> “” Then
Set msg.ResponseQueueInfo = FindQueOnLabel(strRespQueLbl)
End If
Сообщение msg сформировано. Можно смело отослать его в ранее открытую для отправки очередь q:
msg.Send q
По умолчанию все сообщения отсылаются (и принимаются) в контексте текущей транзакции Microsoft Transaction Server. Если соблюдение транзакционной целостности не требуется для вашего приложения, вы можете сэкономить время и ресурсы, отключив участие в транзакции параметром MQ_NO_TRANSACTION. Если текущая транзакция началась не на MTS, а на каком-то внешнем XA-совместимом координаторе транзакций, вы можете указать это MSMQ c помощью объекта MSMQTransaction.
q.Close
End Sub
Проверим нашу процедуру в действии. Создадим на втором сервере (независимом клиенте) очередь с именем InteractionQueue:
CreateMQPublQue “InteractionQueue”, “ntalexejs”
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий