0

SQLServerITSERVERのデータベースcjaにlog_line_queueというキューがあります。

モバイルデバイスで実行されているC#WinCEアプリケーションがあります。このアプリケーションからlog_line_queueにメッセージを送信したいと思います。

これはこれまでの私のコードです:

var myQueue = new System.Messaging.MessageQueue("FormatName:Direct=OS:itserver\\private$\\dbo.cja.log_line_queue");

myQueue.Send("My Message Data.", MessageQueueTransactionType.Automatic);

その結果、

System.Messaging.MessageQueueException: Message Queue service is not available.
   at System.Messaging.MessageQueue.MQCacheableInfo.get_WriteHandle()
   at System.Messaging.MessageQueue.StaleSafeSendMessage(MQPROPS properties, IntPtr transaction)
   at System.Messaging.MessageQueue.SendInternal(Object obj, MessageQueueTransactionType transactionType)
   at System.Messaging.MessageQueue.Send(Object obj, MessageQueueTransactionType transactionType)
   at cjaTest1.MessageQueue.FrmSendToQueue.button1_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.ButtonBase.WnProc(WM wm, Int32 wParam, Int32 lParam)
   at System.Windows.Forms.Control._InternalWnProc(WM wm, Int32 wParam, Int32 lParam)
   at Microsoft.AGL.Forms.EVL.EnterModalDialog(IntPtr hwnModal)
   at System.Windows.Forms.Form.ShowDialog()
   at cjaTest1.FrmMainForm.button9_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.ButtonBase.WnProc(WM wm, Int32 wParam, Int32 lParam)
   at System.Windows.Forms.Control._InternalWnProc(WM wm, Int32 wParam, Int32 lParam)
   at Microsoft.AGL.Forms.EVL.EnterMainLoop(IntPtr hwnMain)
   at System.Windows.Forms.Application.Run(Form fm)
   at cjaTest1.Program.Main()

私は多くのことを間違っていると確信しています。提案は大歓迎です。

4

1 に答える 1

1

System.Messaging.MessageQueueMSMQと対話するために使用されます。A queue called log_line_queue in database cja on SQL Server ITSERVERテーブルまたはサービス ブローカ キューのいずれかです。これはリンゴとオレンジです。MSMQ は SQL Server とは何の関係もありません。メッセージを SQL Server キューに送信するには、SEND T-SQL 動詞を使用する必要があり、SQL Server インスタンスに接続している必要があります。

于 2013-02-01T13:19:39.480 に答える