Làm th? nào đ? thêm m?t s? t? b? cho thư SMTP trong Visual Basic

ID c?a bài: 317327 - Xem s?n ph?m mà bài này áp d?ng vào.
Đ? m?t Microsoft Visual Basic script Edition Phiên b?n c?a bài vi?t này, h?y xem 317680.
Bung t?t c? | Thu g?n t?t c?

? Trang này

GI?I THI?U

Bài t?ng bư?c này mô t? cách s? d?ng m?t SMTP v?n chuy?n s? ki?n b?n r?a chén thêm m?t s? t? b? cho đi SMTP e-mail tin nh?n.

T?o s? ki?n sink

  1. T?o ra m?t m?i Microsoft Visual Basic ActiveX DLL. Tên các d? án SMTPEventSink, và sau đó đ?t tên mô-đun t? ch?i trách nhi?m.
  2. Dư?i D? án tài li?u tham kh?o, thêm Microsoft CDO cho Exchange 2000 thư vi?n, và sau đó thêm Server m? r?ng đ?i tư?ng COM thư vi?n.
  3. Đ?t đo?n m? sau trong module:
    Dim TextDisclaimer As String
    Dim HTMLDisclaimer As String
    
    Implements IEventIsCacheable
    Implements CDO.ISMTPOnArrival
    
    Private Sub IEventIsCacheable_IsCacheable()
        'Just returns S_OK.
    End Sub
    
    Private Sub Class_Initialize()
      'TODO: Replace the sample disclaimer text with your own text.
      TextDisclaimer = vbCrLf & "DISCLAIMER:" & vbCrLf & "Sample Disclaimer Text."
      HTMLDisclaimer = "<p></p><p>DISCLAIMER:<br>Sample Disclaimer Text"
    End Sub
    
    Private Sub ISMTPOnArrival_OnArrival(ByVal Msg As CDO.IMessage, EventStatus As CDO.CdoEventStatus)
        If Msg.HTMLBody <> "" Then
            Dim szPartI As String
            Dim szPartII As String
            Dim pos As Integer
            
            'Search for the "</body>" tag and insert the disclaimer before that tag.
            pos = InStr(1, Msg.HTMLBody, "</body>", vbTextCompare)
            szPartI = Left(Msg.HTMLBody, pos - 1)
            szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) - (pos - 1))
            Msg.HTMLBody = szPartI + HTMLDisclaimer + szPartII
        End If
    
        If Msg.TextBody <> "" Then
            Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf
        End If
        
        'Commit the content changes to the transport ADO Stream object.
        Msg.DataSource.Save
        EventStatus = cdoRunNextSink
    End Sub
    					
  4. Thay th? văn b?n t? ch?i trách nhi?m m?u b?ng văn b?n t? ch?i trách nhi?m riêng c?a b?n, và sau đó xây d?ng DLL.

Đăng k? s? ki?n sink

Đ? đăng k? s? ki?n ch?m, s? d?ng các t?p tin Smtpreg.vbs đư?c cài đ?t v?i b? phát tri?n ph?n m?m trao đ?i (SDK).
  1. M?t d?u nh?c l?nh, xác đ?nh v? trí các \Exchange SDK\SDK\Support\CDO\Scripts thư m?c, và sau đó g? như sau: cscript smtpreg.vbs / thêm 1 OnArrival SMTPDisclaimer SMTPEventSink.Disclaimer "thư from=*@your-domain-here.com"

    N?u l?nh này thành công, b?n nh?n đư?c m?t thành công thông đi?p đư?c t?o b?i k?ch b?n.
  2. Đ? unregister s? ki?n này, lo?i sau đây: cscript smtpreg.vbs/remove 1 OnArrival SMTPDisclaimer
Đ? bi?t thêm chi ti?t v? vi?c qu?n l? s? ki?n bindings, truy c?p vào các trang Web m?ng nhà phát tri?n c?a Microsoft (MSDN) sau Trang web:
http://msdn2.Microsoft.com/en-US/Library/ms526620.aspx

Ki?m tra s? ki?n sink

Đ? ki?m tra s? ki?n ch?m, g?i thư đi?n t? cho m?t ngư?i nh?n SMTP bên ngoài đ? t? ch?c c?a b?n là ai. Ngư?i nh?n s? nh?n đư?c m?t s?a đ?i thông báo v?i văn b?n t? ch?i trách nhi?m đư?c b? sung vào cu?i tin nh?n.

Chú ý N?u b?n s? d?ng m?t máy khách MAPI, ch?ng h?n như Microsoft Outlook, đ? g?i các thư đi?n t?, ngư?i nh?n không nh?n đư?c m?t thư đi?n t? c?i. Đi?u này là do thư đi?n t? đ? n?p b?ng cách s? d?ng MAPI là không trong m?t đ?nh d?ng SMTP khi thư đi?n t? gây nên Theo t? ch?c s? ki?n SMTP v?n t?i. V? v?y, nh?ng thay đ?i đư?c th?c hi?n b?i các m? c?a s? ki?n không rơi.

THAM KH?O

Để biết thêm thông tin, bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:
273233Không th? thay đ?i n?i dung thư MAPI trong m?t s? ki?n CDO SMTP sink

Thu?c tính

ID c?a bài: 317327 - L?n xem xét sau cùng: 27 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange 2000 Server Standard Edition
T? khóa: 
kbhowtomaster kbmt KB317327 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:317327

Cung cấp Phản hồi