Aracılığıyla paylaş


Uzaktan özel ileti sırası Script görev ile gönderme

Message Queuing (msmq olarak da bilinir), geliştiricilere uygulama programları ile hızlı ve güvenilir bir şekilde ileti alma ve gönderme kurmasını kolaylaştırır.Bir ileti sırası, yerel veya uzak bir bilgisayarda bulunabilir ve genel veya özel olabilir.De Integration Services, msmq Bağlantı Yöneticisi ve ileti sırası görev desteklemez gönderme özel sırasına uzak bir bilgisayar.Bununla birlikte, komut dosyası görev kullanarak, uzak bir özel sıra için ileti göndermek kolaydır.

Not

Bu kod görev örnek kodu özel bir görev için başlangıç noktası olarak kullanarak, birden çok paket arasında daha kolay yeniden kullanabileceğiniz bir görev oluşturmak istiyorsanız, düşünün.Daha fazla bilgi için bkz: Özel görev geliştirme.

Açıklama

Aşağıdaki örnek, nesneleri ve yöntemleri ile birlikte varolan bir msmq Bağlantı Yöneticisi kullanır System.Messaging yer alan paket değişkeni bir uzak özel ileti kuyruğu metin göndermek için ad alanıÇağrı M:Microsoft.SqlServer.Dts.ManagedConnections.MSMQConn.AcquireConnection(System.Object) döndüreceðini msmq Bağlantı Yöneticisi'nin bir MessageQueue whose nesne Send yöntem gerçekleştirir bu görevi.

Bu kod görev örnek yapılandırmak için

  1. msmq Bağlantı Yöneticisi varsayılan adla oluşturun.Set yol geçerli uzak bir özel sıranın, aşağıdaki biçimde:

    FORMATNAME:DIRECT=OS:<computername>\private$\<queuename>
    
  2. Oluşturma bir Integration Services değişken ileti metni türü adlı String Query ileti metnine geçirmek içinDeğişkenin değeri varsayılan bir ileti girin.

  3. Tasarım yüzeyi için Script görev ekleyin ve düzenleyin.Üzerinde Script sekmesinde Komut dosyası görev Düzenleyicisi, ekleme MessageText değişken için ReadOnlyVariables özellik değişken komut dosyası içinde kullanılabilir hale getirmek için.

  4. Click Edit Script to open the Microsoft Visual Studio Tools for Applications (VSTA) script editor.

  5. Komut dosyası proje başvurusu ekleyin System.Messaging ad.

  6. Komut dosyası penceresinin içeriğini aşağıdaki bölümdeki kodu değiştirin.

Kod

Imports System
Imports Microsoft.SqlServer.Dts.Runtime
Imports System.Messaging

Public Class ScriptMain

    Public Sub Main()

        Dim remotePrivateQueue As MessageQueue
        Dim messageText As String

        remotePrivateQueue = _
            DirectCast(Dts.Connections("Message Queue Connection Manager").AcquireConnection(Dts.Transaction), _
            MessageQueue)
        messageText = DirectCast(Dts.Variables("MessageText").Value, String)
        remotePrivateQueue.Send(messageText)

        Dts.TaskResult = ScriptResults.Success

    End Sub

End Class
using System;
using Microsoft.SqlServer.Dts.Runtime;
using System.Messaging;

public class ScriptMain
{

    public void Main()
        {

            MessageQueue remotePrivateQueue = new MessageQueue();
            string messageText;

            
            remotePrivateQueue = (MessageQueue)(Dts.Connections["Message Queue Connection Manager"].AcquireConnection(Dts.Transaction) as MessageQueue);
            messageText = (string)(Dts.Variables["MessageText"].Value);
            remotePrivateQueue.Send(messageText);

            Dts.TaskResult = (int)ScriptResults.Success;

        }

}
Integration Services simgesi (küçük)Integration Services ile güncel kalın

En son karşıdan yüklemeler, makaleler, örnekler ve seçilen topluluk çözümleri yanı sıra Microsoft videolar için ziyaret Integration Services sayfa msdn veya TechNet:

Bu güncelleştirmelerle ilgili otomatik bildirim almak için, sayfadaki RSS akışlarına abone olun.

Ayrıca bkz.

Kavramlar