Winmail.dat: แก้ผู้รับได้ไฟล์ winmail.dat แทนไฟล์แนบ

ผู้รับได้ไฟล์ winmail.dat แทนไฟล์แนบ เพราะ Outlook ของผู้ส่งส่งแบบ Rich Text (TNEF) แก้ที่ผู้ส่งโดยตั้งรูปแบบเป็น HTML และให้ผู้ดูแลปิด TNEF ใน Remote domain

โดย ทีมงาน THAI DATA CLOUD อ่าน 13 นาที

แชร์FacebookXLINELinkedIn
Winmail — Winmail.dat: แก้ผู้รับได้ไฟล์ winmail.dat แทนไฟล์แนบ
Winmail.dat: แก้ผู้รับได้ไฟล์ winmail.dat แทนไฟล์แนบ

คำตอบสั้น ๆ: ผู้รับได้ไฟล์ winmail.dat แทนไฟล์แนบ เพราะ Outlook ของผู้ส่งส่งแบบ Rich Text (TNEF) แก้ที่ผู้ส่งโดยตั้งรูปแบบเป็น HTML และให้ผู้ดูแลปิด TNEF ใน Remote domain

คู่มือนี้อธิบาย Winmail ทีละขั้นตอน พร้อมคำสั่งที่ใช้ได้จริงและปัญหาที่พบบ่อย

Winmail.dat คือไฟล์แนบชื่อ winmail.dat ที่ผู้รับเห็นแทนไฟล์ PDF, Excel หรือรูปที่ผู้ส่งแนบมา บางครั้งเนื้อความก็กลายเป็นตัวอักษรธรรมดาไม่มีรูปแบบ ผู้รับมักใช้ Gmail, Apple Mail, Thunderbird หรือแอปบนมือถือ สาเหตุที่พบบ่อยที่สุดคือ classic Outlook ของผู้ส่งส่งอีเมลในรูปแบบ Rich Text ซึ่งห่อเนื้อความและไฟล์แนบไว้ในรูปแบบ TNEF (Transport Neutral Encapsulation Format) ที่โปรแกรมนอกตระกูล Microsoft อ่านไม่ออก วิธีแก้ที่ได้ผลบ่อยที่สุดคือแก้ที่ฝั่งผู้ส่ง โดยตั้ง Outlook ให้เขียนอีเมลแบบ HTML และให้ผู้ดูแลระบบปิด TNEF สำหรับผู้รับภายนอก

คู่มือนี้แบ่งเป็นส่วนของผู้รับที่ได้ winmail.dat ส่วนของผู้ส่งที่ใช้ classic Outlook และส่วนของผู้ดูแล Microsoft 365 หรือ Exchange ถ้าผู้ส่งใช้อีเมลบริษัทแบบ IMAP/POP ให้ทำเฉพาะส่วนของผู้ส่ง เพราะไม่มีการตั้งค่าฝั่งเซิร์ฟเวอร์แบบ Exchange เมื่อทำครบ ผู้รับทุกคนจะได้ไฟล์แนบจริงแทน Winmail.dat และคุณจะรู้ว่าการตั้งค่าไหนชนะการตั้งค่าไหน

สิ่งที่ต้องเตรียม

  • รู้ว่าใครเป็นผู้ส่ง ปัญหา Winmail.dat แก้ที่ผู้ส่งหรือที่ระบบอีเมลขององค์กรผู้ส่ง ผู้รับแก้เองได้น้อยมาก
  • ผู้ส่งใช้ Outlook แบบไหน classic Outlook มีแท็บ File และเป็นรุ่นเดียวที่เขียนอีเมลแบบ Rich Text ได้ ส่วน new Outlook และ Outlook on the web เขียนได้เฉพาะ HTML กับ Plain text
  • อีเมลภายนอกหนึ่งกล่องที่ใช้ทดสอบ เช่น กล่อง Gmail ส่วนตัว
  • สำหรับผู้ดูแล: สิทธิ์ Exchange Administrator และ Exchange Online PowerShell (หรือ Exchange Management Shell สำหรับ Exchange ในองค์กร)

สาเหตุของ Winmail.dat

Rich Text Format (RTF) เป็นรูปแบบเก่าของ Microsoft ที่ Microsoft เองระบุว่าเป็นรูปแบบ legacy และแนะนำให้ใช้ HTML แทน เมื่ออีเมลแบบ RTF ออกนอกองค์กรโดยไม่ถูกแปลงเป็น HTML ข้อมูลจะถูกห่อด้วย TNEF โปรแกรมอีเมลที่อ่าน TNEF ไม่ได้จึงแสดงเป็นไฟล์ Winmail.dat จุดที่ทำให้อีเมลถูกส่งแบบนี้ได้แก่

  • ตั้งรูปแบบเริ่มต้นเป็น Rich Text หรือกดตอบอีเมลที่เป็น Rich Text อยู่แล้ว ซึ่งคำตอบจะใช้รูปแบบเดิม
  • ค่า When sending messages in Rich Text format to Internet recipients ถูกเปลี่ยนเป็น Send using Outlook Rich Text format แทนค่าเริ่มต้น Convert to HTML format
  • ข้อมูลผู้รับใน Contacts หรือรายชื่อแนะนำ (AutoComplete) จำไว้ว่าให้ส่งแบบ Outlook Rich Text Format
  • ผู้ดูแลตั้ง Remote domain หรือ Mail contact ใน Exchange ให้ใช้ TNEF กับผู้รับกลุ่มนั้น
  • อีเมลที่ใส่ฟีเจอร์เฉพาะของ Outlook เช่น ปุ่มโหวต ซึ่งต้องพึ่ง TNEF จึงจะทำงาน ดูคู่มือ Voting Buttons

เอกสารของ Microsoft อธิบายลำดับไว้ว่า ถ้า Remote domain ไม่ได้กำหนดค่า TNEFEnabled (ค่าว่าง) การใช้ TNEF จะขึ้นกับค่าของ Mail contact การตั้งค่าต่อผู้รับใน Outlook และค่า Internet ของ Outlook ผู้ส่ง แต่ถ้าผู้ดูแลตั้ง $false จะไม่ใช้ TNEF กับโดเมนนั้นเลย

ลำดับจุดที่กำหนดว่าอีเมลจะถูกส่งแบบ TNEF จนผู้รับได้ไฟล์ Winmail.dat ตั้งแต่รูปแบบข้อความ การตั้งค่าต่อผู้รับ จนถึง Remote domain
ถ้าผู้ดูแลตั้ง TNEFEnabled เป็น $false ที่ Remote domain ค่านั้นชนะการตั้งค่าใน Outlook ของผู้ส่ง

ขั้นตอนที่ 1: ผู้รับแจ้งผู้ส่งให้ส่งใหม่แบบ HTML

ถ้าคุณเป็นผู้รับ อย่าพยายามเปลี่ยนชื่อ winmail.dat เป็นนามสกุลอื่นเพราะเปิดไม่ได้ ให้ตอบกลับผู้ส่งสั้น ๆ ว่า "ไฟล์แนบมาถึงเป็น winmail.dat รบกวนตั้ง Outlook เป็น HTML ที่ File > Options > Mail แล้วส่งใหม่ หรือส่งเป็นลิงก์ OneDrive" แล้วส่งลิงก์คู่มือนี้ไปด้วย ถ้าผู้ส่งส่งใหม่แล้วได้ไฟล์ PDF หรือ Excel ตามปกติ ถือว่าแก้แล้ว

ไฟล์ Winmail.dat เป็นตัวห่อ ข้างในมีไฟล์แนบอะไรก็ได้ จึงต้องระวังเหมือนไฟล์แนบทั่วไป ถ้าผู้ส่งไม่ใช่คนที่รู้จักหรือไม่ได้นัดไว้ อย่าพยายามแกะไฟล์ ให้ลบทิ้ง

ขั้นตอนที่ 2: ผู้ส่งตั้งรูปแบบเริ่มต้นเป็น HTML

ใน classic Outlook ไปที่ File > Options > Mail ในส่วน Compose messages เปิดรายการ Compose messages in this format แล้วเลือก HTML กด OK การตั้งค่านี้มีผลกับอีเมลใหม่ ส่วนอีเมลที่กำลังตอบซึ่งเป็น Rich Text อยู่แล้ว ให้เปลี่ยนทีละฉบับที่แท็บ Format Text แล้วเลือก HTML ก่อนกดส่ง

ทดสอบโดยสร้างอีเมลใหม่ แนบไฟล์ PDF แล้วส่งถึงกล่องภายนอกที่เตรียมไว้ ถ้าเห็นไฟล์ PDF ตามชื่อจริงแทน Winmail.dat ถือว่าแก้แล้ว ถ้ายังได้ winmail.dat ให้ทำขั้นต่อไป เรื่องความต่างของ HTML, Plain Text และ Rich Text อ่านเพิ่มได้ที่คู่มือ Message Format

หน้าจอจำลอง Outlook Options หน้า Mail ตั้ง Compose messages in this format เป็น HTML เพื่อกันผู้รับได้ไฟล์ Winmail.dat
สองค่านี้ต้องเป็น HTML และ Convert to HTML format ฝั่งผู้ส่ง (ภาพจำลอง)

ขั้นตอนที่ 3: ผู้ส่งตรวจค่าการส่ง Rich Text ถึงผู้รับภายนอก

ในหน้า File > Options > Mail เดิม เลื่อนลงไปที่ส่วน Message format หาค่า When sending messages in Rich Text format to Internet recipients แล้วเลือก Convert to HTML format ซึ่งเป็นค่าเริ่มต้นของ Outlook อีกตัวเลือกคือ Convert to Plain Text format ซึ่งตัดรูปแบบทั้งหมด ส่วน Send using Outlook Rich Text format คือตัวเลือกที่ทำให้เกิด Winmail.dat

ถ้าตัวเลือกนี้เป็นสีเทาแก้ไม่ได้ แปลว่าองค์กรกำหนดผ่าน Group Policy ให้แจ้งไอที เมื่อแก้แล้วส่งอีเมลทดสอบซ้ำแบบขั้นตอนที่ 2

ขั้นตอนที่ 4: ผู้ส่งแก้ค่าที่จำไว้ต่อผู้รับ

ถ้าปัญหาเกิดกับผู้รับบางคนเท่านั้น สาเหตุมักเป็นค่าที่จำไว้ต่อผู้รับ

  1. ถ้าผู้รับอยู่ใน Contacts ให้เปิดรายชื่อนั้น ดับเบิลคลิกที่อีเมลของเขา หน้าต่าง E-mail Properties จะเปิดขึ้น ที่ Internet format เลือก Let Outlook decide the best sending format แล้วบันทึกรายชื่อ
  2. ลบรายชื่อแนะนำเดิมของผู้รับคนนั้น พิมพ์ชื่อในช่อง To รอให้รายชื่อแนะนำขึ้น แล้วกดเครื่องหมาย X ข้างรายชื่อ จากนั้นพิมพ์อีเมลเต็มใหม่ เพราะรายชื่อแนะนำเก็บรูปแบบการส่งไว้ด้วย ดูวิธีละเอียดในคู่มือ AutoComplete
  3. ส่งอีเมลทดสอบถึงผู้รับคนนั้นอีกครั้ง

ถ้าผู้รับได้ไฟล์แนบตามปกติ ถือว่าแก้แล้ว ถ้าปัญหาเกิดกับผู้รับภายนอกทุกคนทั้งที่ทำขั้นตอนที่ 2 ถึง 4 แล้ว ให้ผู้ดูแลตรวจฝั่ง Exchange ในขั้นตอนที่ 5

ขั้นตอนที่ 5: ผู้ดูแลปิด TNEF ใน Remote domain ของ Exchange Online

ค่าที่ผู้ดูแลตั้งใน Remote domain ใช้กับทุกคนในองค์กร จึงแก้ Winmail.dat ได้ครั้งเดียวทั้งองค์กร โดยไม่ต้องตามแก้ Outlook ทีละเครื่อง เชื่อมต่อ Exchange Online PowerShell แล้วรัน

Connect-ExchangeOnline -UserPrincipalName [email protected]
Get-RemoteDomain | Format-Table Name,DomainName,TNEFEnabled
Set-RemoteDomain Default -TNEFEnabled $false
Get-RemoteDomain Default | Select-Object TNEFEnabled

Remote domain ชื่อ Default ครอบคลุมทุกโดเมนภายนอกที่ไม่มี Remote domain ของตัวเอง ค่าเริ่มต้นของ TNEFEnabled คือว่าง ซึ่งหมายถึงปล่อยให้ Outlook ผู้ส่งตัดสินใจ เมื่อตั้ง $false แล้ว อีเมลถึงผู้รับภายนอกจะไม่ใช้ TNEF เลย ถ้าต้องการแก้เฉพาะคู่ค้ารายเดียว ให้สร้าง Remote domain ของโดเมนนั้นด้วย New-RemoteDomain -Name "Partner" -DomainName partner.example.net แล้วตั้ง Set-RemoteDomain Partner -TNEFEnabled $false

ข้อแลกเปลี่ยนที่ต้องรู้: เมื่อปิด TNEF ปุ่มโหวตและฟีเจอร์เฉพาะของ Outlook จะใช้กับผู้รับภายนอกไม่ได้ ถ้ามีคู่ค้าที่ใช้ Outlook และต้องใช้ฟีเจอร์เหล่านี้ ให้สร้าง Remote domain ของคู่ค้ารายนั้นแล้วตั้ง -TNEFEnabled $true เฉพาะโดเมนนั้น สำหรับผู้รับภายนอกที่บันทึกเป็น Mail contact ใช้ Set-MailContact [email protected] -UseMapiRichTextFormat Never ได้เช่นกัน ขั้นตอนต้นฉบับอยู่ในเอกสาร Specify the email message format that's used for external recipients to prevent Winmail.dat attachments

ตรวจผลโดยรัน Get-RemoteDomain อีกครั้ง แล้วให้ผู้ใช้ที่เคยส่งแล้วเกิด Winmail.dat ส่งอีเมลทดสอบถึงกล่องภายนอก ถ้าได้ไฟล์แนบจริง ถือว่าแก้แล้ว

ผลคำสั่ง PowerShell ตรวจและตั้งค่า TNEFEnabled ของ Remote domain ใน Exchange Online เพื่อหยุดปัญหา Winmail.dat กับผู้รับภายนอก
ปิด TNEF ที่ Default แล้วเปิดเฉพาะโดเมนคู่ค้าที่ใช้ Outlook และต้องการปุ่มโหวต

ขั้นตอนที่ 6: ผู้รับแกะไฟล์เองเมื่อผู้ส่งแก้ให้ไม่ได้

บางครั้งผู้ส่งเป็นหน่วยงานภายนอกที่แก้ระบบให้ไม่ได้ ทางที่ปลอดภัยที่สุดคือขอให้ส่งไฟล์เป็นลิงก์ดาวน์โหลดหรือ zip แทน ถ้าจำเป็นต้องแกะ Winmail.dat เอง ให้ใช้โปรแกรมอ่าน TNEF ที่ไอทีขององค์กรอนุมัติและติดตั้งในเครื่อง อย่าอัปโหลดไฟล์ไปเว็บแปลงไฟล์ที่ไม่รู้จัก เพราะเอกสารในไฟล์อาจเป็นความลับของบริษัท และสแกนไฟล์ที่แกะได้ก่อนเปิดทุกครั้ง

Winmail.dat กับ new Outlook และ Outlook on the web

new Outlook for Windows และ Outlook on the web เขียนอีเมลได้แค่ HTML และ Plain text จึงแทบไม่สร้าง Winmail.dat เอง ถ้าผู้ส่งใช้ new Outlook แล้วผู้รับยังได้ winmail.dat ให้ผู้ดูแลตรวจว่า Remote domain หรือ Mail contact ของผู้รับถูกตั้งให้ใช้ TNEF เป็น $true หรือ Always ไว้หรือไม่ ส่วนผู้รับที่ใช้ Outlook ทุกรุ่นอ่าน TNEF ได้อยู่แล้ว จึงมักไม่เห็นปัญหานี้ แม้ผู้รับคนอื่นในอีเมลฉบับเดียวกันจะเห็น

ปัญหาที่พบบ่อยเกี่ยวกับ Winmail.dat

ทำไมผู้รับบางคนได้ Winmail.dat แต่บางคนเปิดไฟล์แนบได้ปกติ?

ผู้รับที่ใช้ Outlook อ่าน TNEF ได้ จึงเห็นไฟล์แนบตามปกติ ส่วนผู้รับที่ใช้ Gmail, Apple Mail หรือแอปอื่นอ่านไม่ได้ อีกเหตุผลคือ Outlook ของผู้ส่งอาจจำค่าการส่งของผู้รับแต่ละคนไว้ต่างกัน ตามขั้นตอนที่ 4

ปิด TNEF ทั้งองค์กรแล้วจะมีผลอะไรบ้าง?

อีเมลถึงผู้รับภายนอกจะถูกส่งเป็น HTML หรือ Plain text เสมอ ปุ่มโหวตและฟีเจอร์เฉพาะ Outlook จะใช้กับคนนอกองค์กรไม่ได้ อีเมลภายในองค์กรไม่ได้รับผลกระทบ เพราะการตั้งค่านี้อยู่ที่ Remote domain ซึ่งใช้กับโดเมนภายนอก

ผู้รับเปลี่ยนชื่อ winmail.dat เป็น .pdf แล้วจะเปิดได้ไหม?

ไม่ได้ Winmail.dat ไม่ใช่ไฟล์ PDF ที่ถูกเปลี่ยนชื่อ แต่เป็นตัวห่อที่รวมเนื้อความและไฟล์แนบทั้งหมดไว้ด้วยกัน ต้องให้ผู้ส่งส่งใหม่แบบ HTML หรือใช้โปรแกรมอ่าน TNEF ที่องค์กรอนุมัติ

อีเมลบริษัทแบบ IMAP/POP เกิด Winmail.dat ได้ไหม?

ได้ ถ้าผู้ส่งใช้ classic Outlook และส่งแบบ Rich Text ไม่ว่าจะส่งผ่าน SMTP ของผู้ให้บริการใด ให้แก้ที่ Outlook ของผู้ส่งตามขั้นตอนที่ 2 ถึง 4 ซึ่งพอสำหรับบัญชีประเภทนี้

ถ้าองค์กรต้องการตรวจการตั้งค่า Remote domain และรูปแบบอีเมลขาออกให้ครบทุกโดเมน ติดต่อทีมงาน THAI DATA CLOUD ได้ และดูรายละเอียดบริการ Microsoft 365 สำหรับองค์กรที่ต้องการทีมช่วยตั้งค่าและดูแลระบบอีเมล

อ่านเพิ่มเติมเกี่ยวกับ Winmail

แชร์FacebookXLINELinkedIn

มีคำถามเรื่องบริการ? ติดต่อทีมงาน