คำตอบสั้น ๆ: Cannot Create File ใน Outlook มักเกิดจากโฟลเดอร์ชั่วคราวของไฟล์แนบเต็มหรือเสีย แก้โดยปิด Outlook แล้วล้างโฟลเดอร์ OutlookSecureTempFolder หรือ Save As ก่อนเปิด
คู่มือนี้อธิบาย Cannot Create File ทีละขั้นตอน พร้อมคำสั่งที่ใช้ได้จริงและปัญหาที่พบบ่อย
Cannot Create File คือข้อผิดพลาดที่ classic Outlook for Windows แสดงเมื่อดับเบิลคลิกเปิดหรือบันทึกไฟล์แนบ ข้อความเต็มคือ Cannot create file: ชื่อไฟล์. Right-click the folder that you want to create the file in and then click Properties on the shortcut menu to check your permissions for the folder. (บางเวอร์ชันขึ้นต้นว่า Can't create file) สาเหตุที่พบบ่อยที่สุดไม่ใช่สิทธิ์โฟลเดอร์อย่างที่ข้อความบอก แต่เป็นโฟลเดอร์ชั่วคราวที่ Outlook ใช้พักไฟล์แนบก่อนเปิดมีไฟล์สะสมจนเต็ม หรือชี้ไปตำแหน่งที่ใช้ไม่ได้ วิธีที่แก้ได้บ่อยที่สุดคือปิด Outlook แล้วล้างไฟล์ในโฟลเดอร์นั้น ซึ่ง Registry เรียกว่า OutlookSecureTempFolder
คู่มือนี้ใช้กับ classic Outlook ใน Microsoft 365 Apps, Outlook 2016, 2019, 2021 และ 2024 ทั้งบัญชี Microsoft 365/Exchange และอีเมลบริษัทแบบ IMAP/POP เพราะ Cannot Create File เป็นปัญหาของโฟลเดอร์ในเครื่อง ไม่ใช่เซิร์ฟเวอร์ ทำครบแล้วคุณจะเปิดไฟล์แนบได้ตามปกติ และรู้ว่าต้นเหตุอยู่ที่ไฟล์ค้าง สิทธิ์ ดิสก์ หรือค่าใน Registry
สิ่งที่ต้องเตรียม
- ยืนยันว่าใช้ classic Outlook ซึ่งมีแท็บ File ที่มุมซ้ายบน ส่วน new Outlook for Windows ไม่มีแท็บ File และมีไอคอนเฟือง (Settings) ที่มุมขวาบน ข้อความ Cannot Create File แบบข้างบนเป็นของ classic Outlook
- เวอร์ชันจาก File > Office Account > About Outlook Outlook 2016 ขึ้นไปทุกรุ่นรวม Microsoft 365 ใช้ Registry ชุด 16.0
- บัญชี Windows ของผู้ใช้เอง การอ่านและแก้ค่าใต้ HKEY_CURRENT_USER ไม่ต้องใช้สิทธิ์ผู้ดูแลระบบ
- ถ้าเคยเปิดไฟล์แนบขึ้นมาแก้แล้วกด Save โดยไม่ได้ Save As ไปที่อื่น ให้หาไฟล์นั้นก่อน เพราะงานที่แก้อาจอยู่ในโฟลเดอร์ชั่วคราวที่จะล้าง
สาเหตุของ Cannot Create File
classic Outlook ไม่ได้เปิดไฟล์แนบจากกล่องจดหมายโดยตรง แต่คัดลอกไฟล์ไปไว้ในโฟลเดอร์ซ่อนชื่อสุ่ม เช่น 8XK2QF7Z ใต้ Content.Outlook แล้วส่งต่อให้โปรแกรมที่เปิดไฟล์ ตำแหน่งนี้เก็บในค่า Registry OutlookSecureTempFolder ถ้า Outlook เขียนไฟล์ลงโฟลเดอร์นี้ไม่ได้ ก็จะขึ้น Cannot Create File สาเหตุที่เจอจริงมีดังนี้
- ไฟล์ชื่อซ้ำสะสม เปิดไฟล์ชื่อเดิมซ้ำ Outlook จะเติมเลขลำดับให้สำเนาใหม่ ผู้ใช้และผู้เชี่ยวชาญ Outlook รายงานตรงกันว่าเมื่อครบราว 99 ชุด Outlook สร้างไฟล์ชื่อนั้นต่อไม่ได้ (Microsoft ไม่ได้ระบุตัวเลขนี้ในเอกสาร) เจอบ่อยกับรายงานที่ระบบ ERP ส่งทุกวันด้วยชื่อเดิม หรือ
scan.pdfจากเครื่องสแกน - ไฟล์ไม่ถูกลบตอนปิด ถ้า Outlook ค้าง ถูกบังคับปิด หรือปิดเครื่องทั้งที่ไฟล์แนบยังเปิดอยู่ สำเนาจะค้างในโฟลเดอร์
- ค่า Registry ชี้ไปที่ที่ใช้ไม่ได้ เช่น โปรแกรมล้างเครื่องลบโฟลเดอร์ทิ้ง โปรไฟล์ถูกคัดลอกมาจากเครื่องเก่า หรือชี้ไปไดรฟ์เครือข่ายที่ไม่มีสิทธิ์เขียน กรณีนี้ข้อความเรื่องสิทธิ์จึงตรงกับความจริง
- ดิสก์เต็มหรือแอนติไวรัสกักไฟล์ ทันทีที่ไฟล์ถูกสร้าง
แยกสาเหตุเร็ว ๆ ได้แบบนี้: ถ้า Cannot Create File ขึ้นกับทุกไฟล์ในทุกอีเมล ปัญหาอยู่ที่โฟลเดอร์หรือค่า Registry ถ้าขึ้นเฉพาะไฟล์ชื่อเดิมที่เปิดบ่อย คือไฟล์ชื่อซ้ำสะสม ถ้าขึ้นว่า Outlook blocked access to the following potentially unsafe attachments นั่นเป็นอีกเรื่อง ดูคู่มือ Blocked Attachments
ขั้นตอนที่ 1: บันทึกไฟล์แนบลงเครื่องแล้วเปิดจากที่นั่น
คลิกขวาที่ไฟล์แนบ เลือก Save As เลือกโฟลเดอร์ Documents แล้วกด Save (ถ้ามีหลายไฟล์ใช้ Save All Attachments) จากนั้นเปิดไฟล์จาก File Explorer ถ้าเปิดได้ แปลว่าไฟล์แนบไม่เสีย งานเดินต่อได้ทันที และปัญหาอยู่ที่โฟลเดอร์ชั่วคราว ให้ทำขั้นต่อไปเพื่อแก้ Cannot Create File ถาวร
ถ้า Save As แล้วยังขึ้น Cannot Create File กับโฟลเดอร์ที่เลือก ให้ลองบันทึกไปโฟลเดอร์อื่น ถ้าที่อื่นบันทึกได้ แปลว่าโฟลเดอร์แรกไม่มีสิทธิ์เขียน ให้ตรวจตามขั้นตอนที่ 5
ขั้นตอนที่ 2: ปิดไฟล์แนบที่ค้างและเปิด Outlook ใหม่
สำเนาที่ถูกล็อกค้างก็ทำให้เกิด Cannot Create File ได้ ปิดหน้าต่าง Word, Excel หรือโปรแกรม PDF ที่เปิดไฟล์แนบอยู่ ปิดหน้าต่างอีเมลที่เปิดค้าง แล้วปิด Outlook กด Ctrl + Shift + Esc เปิด Task Manager ดูแท็บ Processes ว่าไม่มี Microsoft Outlook เหลืออยู่ ถ้ายังค้างเกินหนึ่งนาทีให้เลือกแล้วกด End task
เปิด Outlook ใหม่แล้วลองเปิดไฟล์แนบเดิม ถ้าเปิดได้ ไม่ต้องทำขั้นต่อไป ถ้ายังขึ้น Cannot Create File แสดงว่าไฟล์สะสมมานานจนการรีสตาร์ตไม่ช่วย
ขั้นตอนที่ 3: หาโฟลเดอร์ OutlookSecureTempFolder
อ่านค่าจาก Registry ด้วย PowerShell ซึ่งอ่านอย่างเดียว ไม่เปลี่ยนอะไรในเครื่อง เปิด Windows PowerShell แบบปกติ (ไม่ต้อง Run as administrator) แล้วรัน
$k = 'HKCU:\Software\Microsoft\Office\16.0\Outlook\Security'
$p = (Get-ItemProperty -Path $k).OutlookSecureTempFolder
$p
(Get-ChildItem -Path $p -File).Count
บรรทัดที่สามแสดงตำแหน่งโฟลเดอร์ ปกติอยู่ใต้ C:\Users\ชื่อผู้ใช้\AppData\Local\Microsoft\Windows\INetCache\Content.Outlook\ ตามด้วยชื่อสุ่ม บรรทัดสุดท้ายนับไฟล์ที่ค้าง ถ้าได้หลักร้อยแปลว่าสะสมมานานจนเป็นต้นเหตุของ Cannot Create File ถ้าไม่แสดงอะไรหรือแสดงตำแหน่งที่ไม่มีอยู่จริง ให้ข้ามไปขั้นตอนที่ 6
ตรวจด้วยว่าค่านี้ถูกกำหนดจากนโยบายหรือไม่ด้วย Get-ItemProperty 'HKCU:\Software\Policies\Microsoft\Office\16.0\Outlook\Security' -ErrorAction SilentlyContinue ถ้ามี OutlookSecureTempFolder อยู่ใต้ Policies แปลว่าไอทีตั้งผ่าน Group Policy การแก้ที่เครื่องจะถูกเขียนทับ ต้องแจ้งผู้ดูแลระบบ ถ้าไม่สะดวกใช้ PowerShell ให้วาง %LOCALAPPDATA%\Microsoft\Windows\INetCache\Content.Outlook ลงช่องที่อยู่ของ File Explorer แล้วกด Enter ได้เลย แม้จะเป็นโฟลเดอร์ซ่อน
ขั้นตอนที่ 4: ล้างไฟล์ในโฟลเดอร์ชั่วคราว
ปิด Outlook ให้สนิทตามขั้นตอนที่ 2 แล้วคัดลอกโฟลเดอร์ไปเก็บก่อนหนึ่งชุด เผื่อมีไฟล์แนบที่เคยแก้แล้วบันทึกทับไว้ จากนั้นรันในหน้าต่าง PowerShell เดิม
Copy-Item -Path $p -Destination "$env:USERPROFILE\Desktop\OutlookTemp-backup" -Recurse
Get-Process OUTLOOK -ErrorAction SilentlyContinue
Get-ChildItem -Path $p | Remove-Item -Recurse -Force
(Get-ChildItem -Path $p -File).Count
Get-Process ต้องไม่แสดงผลลัพธ์ ถ้าแสดง OUTLOOK ให้ปิด Outlook ก่อน คำสั่งสุดท้ายต้องได้ 0 ถ้าบางไฟล์ลบไม่ได้เพราะถูกใช้งาน ให้รีสตาร์ตเครื่องแล้วลบอีกครั้ง หรือเปิดโฟลเดอร์ใน File Explorer กด Ctrl + A แล้ว Delete
เปิด Outlook แล้วลองไฟล์แนบที่เคยขึ้น Cannot Create File ถ้าเปิดได้ถือว่าแก้แล้ว ตรวจโฟลเดอร์สำรองบน Desktop ว่ามีงานที่ต้องเก็บไหม แล้วลบทิ้ง เพราะอาจมีเอกสารลับของงาน