MessageQueue.Create Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt eine neue Warteschlange unter dem angegebenen Pfad auf einem Message Queuing-Server.
Überlädt
Create(String) |
Erstellt eine nicht transaktionale Message Queuing-Warteschlange unter dem angegebenen Pfad. |
Create(String, Boolean) |
Erstellt eine transaktionale oder eine nicht transaktionale Message Queuing-Warteschlange unter dem angegebenen Pfad. |
Create(String)
Erstellt eine nicht transaktionale Message Queuing-Warteschlange unter dem angegebenen Pfad.
public:
static System::Messaging::MessageQueue ^ Create(System::String ^ path);
public static System.Messaging.MessageQueue Create (string path);
static member Create : string -> System.Messaging.MessageQueue
Public Shared Function Create (path As String) As MessageQueue
Parameter
- path
- String
Der Pfad der zu erstellenden Warteschlange.
Gibt zurück
Eine MessageQueue, die die neue Warteschlange darstellt.
Ausnahmen
Der path
-Parameter ist null
oder eine leere Zeichenfolge ("").
Unter dem angegebenen Pfad ist bereits eine Warteschlange vorhanden.
- oder -
Fehler beim Zugriff auf eine Message Queuing-Methode.
Beispiele
Im folgenden Codebeispiel werden öffentliche und private Warteschlangen erstellt. Es sendet eine Nachricht an ausgewählte Warteschlangen.
#using <system.dll>
#using <system.messaging.dll>
using namespace System;
using namespace System::Messaging;
// This example creates new public and private queues.
ref class MyNewQueue
{
public:
void CreatePublicQueues()
{
// Create and connect to a public Message Queuing queue.
if ( !MessageQueue::Exists( ".\\newPublicQueue" ) )
{
// Create the queue if it does not exist.
MessageQueue^ myNewPublicQueue = MessageQueue::Create( ".\\newPublicQueue" );
// Send a message to the queue.
myNewPublicQueue->Send( "My message data." );
}
// Create (but do not connect to) a second public queue.
if ( !MessageQueue::Exists( ".\\newPublicResponseQueue" ) )
{
MessageQueue::Create( ".\\newPublicResponseQueue" );
}
return;
}
// Creates private queues and sends a message.
void CreatePrivateQueues()
{
// Create and connect to a private Message Queuing queue.
if ( !MessageQueue::Exists( ".\\Private$\\newPrivQueue" ) )
{
// Create the queue if it does not exist.
MessageQueue^ myNewPrivateQueue = MessageQueue::Create( ".\\Private$\\newPrivQueue" );
// Send a message to the queue.
myNewPrivateQueue->Send( "My message data." );
}
// Create (but do not connect to) a second private queue.
if ( !MessageQueue::Exists( ".\\Private$\\newResponseQueue" ) )
{
MessageQueue::Create( ".\\Private$\\newResponseQueue" );
}
return;
}
};
// Provides an entry point into the application.
int main()
{
// Create a new instance of the class.
MyNewQueue^ myNewQueue = gcnew MyNewQueue;
// Create public and private queues.
myNewQueue->CreatePublicQueues();
myNewQueue->CreatePrivateQueues();
return 0;
}
using System;
using System.Messaging;
namespace MyProject
{
/// <summary>
/// Provides a container class for the example.
/// </summary>
public class MyNewQueue
{
//**************************************************
// Provides an entry point into the application.
//
// This example creates new public and private
// queues.
//**************************************************
public static void Main()
{
// Create a new instance of the class.
MyNewQueue myNewQueue = new MyNewQueue();
// Create public and private queues.
myNewQueue.CreatePublicQueues();
myNewQueue.CreatePrivateQueues();
return;
}
//**************************************************
// Creates public queues and sends a message.
//**************************************************
public void CreatePublicQueues()
{
// Create and connect to a public Message Queuing queue.
if (!MessageQueue.Exists(".\\newPublicQueue"))
{
// Create the queue if it does not exist.
MessageQueue myNewPublicQueue =
MessageQueue.Create(".\\newPublicQueue");
// Send a message to the queue.
myNewPublicQueue.Send("My message data.");
}
// Create (but do not connect to) a second public queue.
if (!MessageQueue.Exists(".\\newPublicResponseQueue"))
{
MessageQueue.Create(".\\newPublicResponseQueue");
}
return;
}
//**************************************************
// Creates private queues and sends a message.
//**************************************************
public void CreatePrivateQueues()
{
// Create and connect to a private Message Queuing queue.
if (!MessageQueue.Exists(".\\Private$\\newPrivQueue"))
{
// Create the queue if it does not exist.
MessageQueue myNewPrivateQueue =
MessageQueue.Create(".\\Private$\\newPrivQueue");
// Send a message to the queue.
myNewPrivateQueue.Send("My message data.");
}
// Create (but do not connect to) a second private queue.
if (!MessageQueue.Exists(".\\Private$\\newResponseQueue"))
{
MessageQueue.Create(".\\Private$\\newResponseQueue");
}
return;
}
}
}
Imports System.Messaging
' Provides a container class for the example.
Public Class MyNewQueue
' Provides an entry point into the application.
'
' This example creates new public and private
' queues.
Public Shared Sub Main()
' Create a new instance of the class.
Dim myNewQueue As New MyNewQueue()
' Create public and private queues.
myNewQueue.CreatePublicQueues()
myNewQueue.CreatePrivateQueues()
Return
End Sub
' Creates public queues and sends a message.
Public Sub CreatePublicQueues()
' Create and connect to a public Message Queuing queue.
If Not MessageQueue.Exists(".\newPublicQueue") Then
' Create the queue if it does not exist.
Dim myNewPublicQueue As MessageQueue = _
MessageQueue.Create(".\newPublicQueue")
' Send a message to the queue.
myNewPublicQueue.Send("My message data.")
End If
' Create (but do not connect to) a second public queue.
If Not MessageQueue.Exists(".\newPublicResponseQueue") _
Then
MessageQueue.Create(".\newPublicResponseQueue")
End If
Return
End Sub
' Creates private queues and sends a message.
Public Sub CreatePrivateQueues()
' Create and connect to a private Message Queuing queue.
If Not MessageQueue.Exists(".\Private$\newPrivateQueue") _
Then
' Create the queue if it does not exist.
Dim myNewPrivateQueue As MessageQueue = _
MessageQueue.Create(".\Private$\newPrivateQueue")
' Send a message to the queue.
myNewPrivateQueue.Send("My message data.")
End If
' Create (but do not connect to) a second private queue.
If Not MessageQueue.Exists(".\Private$\newResponseQueue") _
Then
MessageQueue.Create(".\Private$\newResponseQueue")
End If
Return
End Sub
End Class
Hinweise
Verwenden Sie diese Überladung, um eine nicht transaktionale Message Queuing-Warteschlange zu erstellen.
Verwenden MessageQueue Sie den Konstruktor, um eine neue instance der MessageQueue -Klasse in Ihrer Anwendung zu erstellen und an eine vorhandene Warteschlange zu binden. Rufen Sie zum Erstellen einer neuen Warteschlange in Message Queuing auf Create(String).
Die Syntax für den path
Parameter hängt vom Typ der Warteschlange ab, auf die er verweist, wie in der folgenden Tabelle gezeigt.
Warteschlangentyp | Syntax |
---|---|
Öffentliche Warteschlange | MachineName \QueueName |
Private Warteschlange | MachineName \Private$ \QueueName |
Verwenden Sie "." für den lokalen Computer. Weitere Syntax finden Sie in der Path -Eigenschaft.
Die folgende Tabelle zeigt, ob diese Methode in verschiedenen Arbeitsgruppenmodi verfügbar ist.
Arbeitsgruppenmodus | Verfügbar |
---|---|
Lokalem Computer | Ja |
Name des lokalen Computers und des direkten Formats | Ja |
Remotecomputer | Nein |
Name des Remotecomputers und des direkten Formats | Nein |
Weitere Informationen
Gilt für:
Create(String, Boolean)
Erstellt eine transaktionale oder eine nicht transaktionale Message Queuing-Warteschlange unter dem angegebenen Pfad.
public:
static System::Messaging::MessageQueue ^ Create(System::String ^ path, bool transactional);
public static System.Messaging.MessageQueue Create (string path, bool transactional);
static member Create : string * bool -> System.Messaging.MessageQueue
Public Shared Function Create (path As String, transactional As Boolean) As MessageQueue
Parameter
- path
- String
Der Pfad der zu erstellenden Warteschlange.
- transactional
- Boolean
true
, um eine transaktionale Warteschlange zu erstellen, oder false
, wenn eine nicht transaktionale Warteschlange erstellt werden soll.
Gibt zurück
Eine MessageQueue, die die neue Warteschlange darstellt.
Ausnahmen
Der path
-Parameter ist null
oder eine leere Zeichenfolge ("").
Unter dem angegebenen Pfad ist bereits eine Warteschlange vorhanden.
- oder -
Fehler beim Zugriff auf eine Message Queuing-Methode.
Beispiele
Im folgenden Codebeispiel werden öffentliche und private Transaktionswarteschlangen erstellt. Es sendet eine Nachricht an ausgewählte Warteschlangen.
#using <system.dll>
#using <system.messaging.dll>
using namespace System;
using namespace System::Messaging;
ref class MyNewQueue
{
public:
// Creates public transactional queues and sends a
// message.
void CreatePublicTransactionalQueues()
{
// Create and connect to a public message Queuing queue.
if ( !MessageQueue::Exists( ".\\newPublicTransQueue1" ) )
{
// Create the queue if it does not exist.
MessageQueue::Create( ".\\newPublicTransQueue1", true );
}
// Connect to the queue.
MessageQueue^ myNewPublicQueue = gcnew MessageQueue( ".\\newPublicTransQueue1" );
// Create a transaction.
MessageQueueTransaction^ myTransaction = gcnew MessageQueueTransaction;
// Begin the transaction.
myTransaction->Begin();
// Send the message.
myNewPublicQueue->Send( "My Message Data.", myTransaction );
// Commit the transaction.
myTransaction->Commit();
if ( !MessageQueue::Exists( ".\\newPublicTransQueue2" ) )
{
// Create (but do not connect to) second public queue
MessageQueue::Create( ".\\newPublicTransQueue2", true );
}
return;
}
// Creates private queues and sends a message.
void CreatePrivateTransactionalQueues()
{
// Create and connect to a private Message Queuing queue.
if ( !MessageQueue::Exists( ".\\Private$\\newPrivTransQ1" ) )
{
// Create the queue if it does not exist.
MessageQueue^ myNewPrivateQueue = MessageQueue::Create( ".\\Private$\\newPrivTransQ1", true );
}
// Connect to the queue.
MessageQueue^ myNewPrivateQueue = gcnew MessageQueue( ".\\Private$\\newPrivTransQ1" );
// Create a transaction.
MessageQueueTransaction^ myTransaction = gcnew MessageQueueTransaction;
// Begin the transaction.
myTransaction->Begin();
// Send the message.
myNewPrivateQueue->Send( "My Message Data.", myTransaction );
// Commit the transaction.
myTransaction->Commit();
// Create (but do not connect to) a second private queue.
if ( !MessageQueue::Exists( ".\\Private$\\newPrivTransQ2" ) )
{
MessageQueue::Create( ".\\Private$\\newPrivTransQ2", true );
}
return;
}
};
// Provides an entry point into the application.
// This example creates new transactional queues.
int main()
{
// Create a new instance of the class.
MyNewQueue^ myNewQueue = gcnew MyNewQueue;
// Create transactional queues.
myNewQueue->CreatePublicTransactionalQueues();
myNewQueue->CreatePrivateTransactionalQueues();
return 0;
}
using System;
using System.Messaging;
namespace MyProject
{
/// <summary>
/// Provides a container class for the example.
/// </summary>
public class MyNewQueue
{
//**************************************************
// Provides an entry point into the application.
//
// This example creates new transactional queues.
//**************************************************
public static void Main()
{
// Create a new instance of the class.
MyNewQueue myNewQueue = new MyNewQueue();
// Create transactional queues.
myNewQueue.CreatePublicTransactionalQueues();
myNewQueue.CreatePrivateTransactionalQueues();
return;
}
//**************************************************
// Creates public transactional queues and sends a
// message.
//**************************************************
public void CreatePublicTransactionalQueues()
{
// Create and connect to a public Message Queuing queue.
if (!MessageQueue.Exists(".\\newPublicTransQueue1"))
{
// Create the queue if it does not exist.
MessageQueue.Create(".\\newPublicTransQueue1", true);
}
// Connect to the queue.
MessageQueue myNewPublicQueue =
new MessageQueue(".\\newPublicTransQueue1");
// Send a message to the queue.
// Create a transaction.
MessageQueueTransaction myTransaction = new
MessageQueueTransaction();
// Begin the transaction.
myTransaction.Begin();
// Send the message.
myNewPublicQueue.Send("My Message Data.", myTransaction);
// Commit the transaction.
myTransaction.Commit();
if (!MessageQueue.Exists(".\\newPublicTransQueue2"))
{
// Create (but do not connect to) second public queue.
MessageQueue.Create(".\\newPublicTransQueue2", true);
}
return;
}
//**************************************************
// Creates private queues and sends a message.
//**************************************************
public void CreatePrivateTransactionalQueues()
{
// Create and connect to a private Message Queuing queue.
if (!MessageQueue.Exists(".\\Private$\\newPrivTransQ1"))
{
// Create the queue if it does not exist.
MessageQueue.Create(".\\Private$\\newPrivTransQ1", true);
}
// Connect to the queue.
MessageQueue myNewPrivateQueue =
new MessageQueue(".\\Private$\\newPrivTransQ1");
// Send a message to the queue.
// Create a transaction.
MessageQueueTransaction myTransaction = new
MessageQueueTransaction();
// Begin the transaction.
myTransaction.Begin();
// Send the message.
myNewPrivateQueue.Send("My Message Data.", myTransaction);
// Commit the transaction.
myTransaction.Commit();
// Create (but do not connect to) a second private queue.
if (!MessageQueue.Exists(".\\Private$\\newPrivTransQ2"))
{
MessageQueue.Create(".\\Private$\\newPrivTransQ2",
true);
}
return;
}
}
}
Imports System.Messaging
Public Class MyNewQueue
' Provides an entry point into the application.
'
' This example creates new transactional queues.
Public Shared Sub Main()
' Create a new instance of the class.
Dim myNewQueue As New MyNewQueue
' Create transactional queues.
myNewQueue.CreatePublicTransactionalQueues()
myNewQueue.CreatePrivateTransactionalQueues()
Return
End Sub
' Creates public transactional queues and sends a
' message.
Public Sub CreatePublicTransactionalQueues()
' Create and connect to a public Message Queuing queue.
If Not MessageQueue.Exists(".\newPublicTransQueue1") Then
' Create the queue if it does not exist.
MessageQueue.Create(".\newPublicTransQueue1", True)
End If
' Connect to the queue.
Dim myNewPublicQueue As New MessageQueue(".\newPublicTransQueue1")
' Create a transaction.
Dim myTransaction As New MessageQueueTransaction
' Begin the transaction.
myTransaction.Begin()
' Send the message.
myNewPublicQueue.Send("My Message Data.", myTransaction)
' Commit the transaction.
myTransaction.Commit()
If Not MessageQueue.Exists(".\newPublicTransQueue2") Then
' Create (but do not connect to) a second queue.
MessageQueue.Create(".\newPublicTransQueue2", True)
End If
Return
End Sub
' Creates private queues and sends a message.
Public Sub CreatePrivateTransactionalQueues()
' Create and connect to a private Message Queuing queue.
If Not MessageQueue.Exists(".\Private$\newPrivTransQ1") _
Then
' Create the queue if it does not exist.
MessageQueue.Create(".\Private$\newPrivTransQ1", True)
End If
' Connect to the queue.
Dim myNewPrivateQueue As New MessageQueue(".\Private$\newPrivTransQ1")
' Create a transaction.
Dim myTransaction As New MessageQueueTransaction
' Begin the transaction.
myTransaction.Begin()
' Send the message.
myNewPrivateQueue.Send("My Message Data.", myTransaction)
' Commit the transaction.
myTransaction.Commit()
' Create (but do not connect to) a second private queue.
If Not MessageQueue.Exists(".\Private$\newPrivTransQ2") _
Then
MessageQueue.Create(".\Private$\newPrivTransQ2", True)
End If
Return
End Sub
End Class
Hinweise
Sie können diese Überladung verwenden, um eine Transaktionswarteschlange in Message Queuing zu erstellen. Sie können eine nicht transaktionale Warteschlange erstellen, indem Sie den transactional
Parameter auf false
oder durch Aufrufen der anderen Überladung von Create(String)festlegen.
Verwenden MessageQueue Sie den Konstruktor, um eine neue instance der MessageQueue -Klasse in Ihrer Anwendung zu erstellen und an eine vorhandene Warteschlange zu binden. Rufen Sie zum Erstellen einer neuen Warteschlange in Message Queuing auf Create(String).
Die Syntax für den path
Parameter hängt vom Typ der Warteschlange ab, auf die er verweist, wie in der folgenden Tabelle gezeigt.
Warteschlangentyp | Syntax |
---|---|
Öffentliche Warteschlange | MachineName \QueueName |
Private Warteschlange | MachineName \Private$ \QueueName |
Verwenden Sie "." für den lokalen Computer. Weitere Syntax finden Sie in der Path -Eigenschaft.
Die folgende Tabelle zeigt, ob diese Methode in verschiedenen Arbeitsgruppenmodi verfügbar ist.
Arbeitsgruppenmodus | Verfügbar |
---|---|
Lokalem Computer | Ja |
Name des lokalen Computers und des direkten Formats | Ja |
Remotecomputer | Nein |
Name des Remotecomputers und des direkten Formats | Nein |