2010-08-03 55 views
7

Tôi đã một ứng dụng, nó đang tạo ra một ICS tương tự như sau:ICS trong Outlook được gửi như một file .msg

BEGIN:VCALENDAR 
VERSION:2.0 
METHOD:REQUEST 
BEGIN:VEVENT 
ATTENDEE;ROLE=REQ-PARTICIPANT;RSVP=TRUE:MAILTO:[email protected] 
ORGANIZER:MAILTO:[email protected] 
DTSTART:20100803T190000Z 
DTEND:20100803T200000Z 
LOCATION:Go to http://100.200.0.55/Login/ParticipantLogIn.asp and enter 
    Conference ID: 0000 
SEQUENCE:0 
UID:352C75A6-0117-4B3A-AFE6-7B18649CD45A 
DTSTAMP:20100803T184455Z 
DESCRIPTION:TO ACCESS THE WEB CONFERENCE:\n\n Click on the link bel 
    ow:\n 
SUMMARY:Test User's Conference 
PRIORITY:5 
CLASS:PUBLIC 
BEGIN:VALARM 
TRIGGER:-PT15M 
ACTION:DISPLAY 
DESCRIPTION:Reminder 
END:VALARM 
END:VEVENT 
END:VCALENDAR 

Khi gửi đến một tài khoản Gmail nó đang được gửi như một file ICS và mọi thứ đều chính xác. Khi được gửi đến Outlook 2003 hoặc 2007, tệp được đính kèm dưới dạng tệp .msg và là tệp nhị phân. Máy chủ đang được sử dụng là Windows Server 2008. Tôi đã đặt loại ics mime là văn bản/lịch trên đó. Quá trình thêm nó chỉ là tạo một tệp tmp trên đĩa và thêm nó dưới dạng tệp đính kèm, sau đó gửi bằng CDO. Có ai biết bất kỳ lý do tại sao Outlook sẽ được thêm nó như là một .msg?

Ngoài ra, chúng tôi sử dụng máy chủ trao đổi cùng và nó hoạt động tốt từ Windows Server 2003.

Đang cập nhật với dấu vết mạng cho các tập tin đính kèm

X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.4073 

Content-Type: application/octet-stream; 
    name="meeting.ics" 
Content-Transfer-Encoding: 7bit 
Content-Disposition: attachment; 
    filename="meeting.ics" 

X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18197 
Content-Type: text/calendar; 
    name="meeting.ics" 
Content-Transfer-Encoding: 7bit 
Content-Disposition: attachment; 
    filename="meeting.ics" 

Trong cả hai có bốn phần thông điệp:

  1. chữ
  2. HTML
  3. Phụ lục 1
  4. đính kèm 2

Trong phiên bản 2003 mà làm việc, một là một application/octet luồng và một là lịch/văn bản. Trong năm 2008 cả hai đều là lịch/văn bản.

Trả lời

2

Bạn có thêm VCALENDAR làm phần MIME chính (và duy nhất) hoặc là một trong các tệp đính kèm không? Có một sự khác biệt lớn.

+0

Tôi thêm tệp văn bản (Meeting.ics) hoặc tệp văn bản cho đến WinServer 2008, với văn bản ICS trong tệp dưới dạng tệp đính kèm. Tôi đặt mime thành văn bản/lịch. – Corv1nus

+2

Sau đó, bạn nhận được kết quả mong đợi: một thư thông thường với một cuộc hẹn đính kèm. ICS của bạn phải là phần MIME duy nhất và chính tiêu đề thư phải chỉ định loại dưới dạng văn bản/lịch. –

+1

BTW, theo dõi lưu lượng truy cập mạng của bạn hiển thị thông tin gì? Bạn có thể gửi toàn bộ tin nhắn MIME vì nó được gửi đi qua dây không? –

3

Điều này có vẻ là một vấn đề với CDO trên Windows Server 2008. Việc theo dõi lưu lượng truy cập mạng trên mỗi máy chủ cho thấy sự khác biệt lớn trong thông báo đang được chuyển.

Có vẻ như vì một lý do nào đó, phương pháp AddAttachment không sử dụng cùng một MIME như năm 2003. Thêm thủ công phần đính kèm và kiểm soát MIME sẽ sửa nó.

2

Có thể dữ liệu TNEF bị thiếu trong email. Nếu đây là trường hợp thì email sẽ được hiển thị dưới dạng văn bản thuần túy. Bạn nên kiểm tra các thiết lập TNEF để xem liệu chúng có bị loại bỏ khỏi email hay không.

Kiểm tra ESM để xem tùy chọn loại bỏ TNEF có BẬT hay không.

Từ MSDN:

Ngoài các khách hàng tiếp nhận, nó không phải là không phổ biến cho một máy chủ mail để loại bỏ thông tin TNEF từ mail vì nó mang lại cho họ. Nếu tùy chọn máy chủ để loại bỏ TNEF được bật, khách hàng sẽ luôn nhận được một phiên bản thuần văn bản của tin nhắn. Máy chủ Microsoft Exchange là một ví dụ của ứng dụng máy chủ thư có tùy chọn xóa TNEF khỏi thư.

+0

Khách hàng nhận được thông báo HTML tốt nhưng tôi có thể kiểm tra điều này trong phần đính kèm để xác minh. Nó là khá kỳ quặc, như tập tin đính kèm TXT cũng tốt (mà sẽ hỗ trợ câu trả lời của bạn). Nó chỉ là ICS mà là nhận được hơi say lên. – Corv1nus

Các vấn đề liên quan