แอปพลิเคชันเริ่มแสดงข้อความโต้ตอบ“ เอกสารไม่สามารถบันทึกอัตโนมัติ” ได้เป็นครั้งคราว


8

ทุกครั้งที่ผ่านมาบางแอปพลิเคชั่น (โดยปกติแล้ว TextEdit) จะเริ่มแสดงกล่องโต้ตอบเช่นนี้เมื่อฉันพยายามปิดหรือบันทึกเอกสารใด ๆ :

เอกสาร“ 2.txt” ไม่สามารถบันทึกอัตโนมัติ

การเปลี่ยนแปลงของคุณจะไม่ถูกบันทึกจนกว่าปัญหาจะได้รับการแก้ไข คุณสามารถทำซ้ำเอกสารหรือยกเลิกการเปลี่ยนแปลงเพื่อปิด

ฉันจะต้องออกและเปิดแอปพลิเคชันอีกครั้งเพื่อบันทึกอะไรอีกครั้ง

  • ฉันได้ปิดการใช้งานทั้ง Resume และล็อคไฟล์โดยอัตโนมัติใน System Preferences
  • ไฟล์มักจะอยู่ในโฟลเดอร์ปกติภายใต้โฟลเดอร์ในบ้านของฉันและไม่มีอะไรพิเศษเกี่ยวกับพวกเขาเท่าที่ฉันสามารถบอกได้
  • ฉันลองซ่อมสิทธิ์แล้ว
  • ลายเซ็นต์รหัสของ TextEdit นั้นถูกต้อง

system.log มักจะมีข้อความเช่นนี้:

5/8/12 9:04:01.358 PM [0x0-0x17b17b].com.apple.TextEdit: [ERROR] GSLibrary.c:_AddGenerationInternal:393  Failed to consume sandbox extension; error 12 (Cannot allocate memory)
5/8/12 9:04:01.361 PM TextEdit: NSFileVersion tried to tried to add a new generation and failed. Versioned file URL: file://localhost/Users/lauri/Notes/2.txt, contents URL: file://localhost/Users/lauri/Notes/2.txt, error: Error Domain=GSLibraryErrorDomain Code=1 "The operation couldn’t be completed. (GSLibraryErrorDomain error 1.)" UserInfo=0x10b24d070 {}
5/8/12 9:04:01.362 PM TextEdit: NSDocument failed to preserve the old version of a document. Here's the error:
Error Domain=GSLibraryErrorDomain Code=1 "The operation couldn’t be completed. (GSLibraryErrorDomain error 1.)" UserInfo=0x10b24d070 {}

Failed to consume sandbox extension; error 12 (Cannot allocate memory)? ไม่มีใครรู้ว่าเกิดอะไรขึ้นที่นี่

แก้ไข: ฉันไม่ได้เห็นข้อผิดพลาดที่หลังจากที่ฉันแทนที่ TextEdit กับTextEditPlus มันขึ้นอยู่กับซอร์สโค้ดของ TextEdit แต่จะปิดการใช้งาน sandbox และทำการเปลี่ยนแปลงอื่น ๆ เล็กน้อย

คำตอบ:


4

ดูเหมือนว่านี่เป็นข้อผิดพลาดในการนำ Sandbox ไปใช้จริงของ Apple ซึ่งหมายความว่าไม่มีขั้นตอนข้างต้นควรช่วยได้ เรามีเอาต์พุตคอนโซลเดียวกันในหนึ่งในแอปพลิเคชันของเรา (รวมถึงการไม่สามารถบันทึกข้อความ) และใช้เวลาพอสมควรในการค้นหาสาเหตุของข้อบกพร่อง (ดูเรดาร์นี้) จากสิ่งที่เราค้นพบดูเหมือนว่าหลังจากเรียกเอกสารที่เพิ่งเปิดมาหลายครั้งแล้วแอปพลิเคชันไม่สามารถบันทึกไฟล์ได้อีกต่อไปเพราะมันไม่ได้รับอนุญาตให้ทำเช่นนั้น คุณสามารถลองล้างเมนูเอกสารที่ใช้ล่าสุดซึ่งอาจช่วยได้


การล้างเมนู "เปิดล่าสุด" แก้ไขปัญหานี้สำหรับหน้า 8.1 ภายใต้ macOS 10.14.6
Seth Noble

1

ใน Lion มีวิธีซ่อนเร้นในการแก้ไขการอนุญาตซึ่งดูเหมือนว่าจะมีประสิทธิภาพมากกว่า:

  1. เริ่มต้นใหม่สิงโตและก่อนที่คุณจะได้ยินเสียงระฆังค้างCmd+ Rเพื่อเข้าถึงสิงโตกู้คืน
  2. คลิกรายการอรรถประโยชน์ในแถบเมนูแล้วคลิกเทอร์มินัล
  3. ในหน้าต่าง Terminal ให้พิมพ์resetpasswordและกด Return
  4. หน้าต่างยูทิลิตี้รีเซ็ตรหัสผ่านจะเปิดขึ้น แต่คุณจะไม่รีเซ็ตรหัสผ่าน ให้คลิกที่ไอคอนสำหรับฮาร์ดไดรฟ์ Mac ของคุณที่ด้านบนแทน จากรายการด้านล่างให้เลือกบัญชีผู้ใช้ที่คุณมีปัญหา
  5. ที่ด้านล่างของหน้าต่างคุณจะเห็นพื้นที่ที่มีข้อความว่ารีเซ็ตการอนุญาตสำหรับไดเรกทอรีภายในบ้านและ ACL คลิกปุ่มรีเซ็ตที่นั่น

ดูเหมือนว่าที่นี้คุณลักษณะคงมีปัญหาเดียวกันกับดไวต์ Silverman คิดว่ามันคุ้มค่าที่จะลอง

เห็นได้ชัดว่าการซ่อมแซมสิทธิ์ด้วย Disk Utility ตามปกติไม่ได้ซ่อมแซมสิทธิ์ผู้ใช้ไฟล์


ฉันลองมันแม้ว่าสิทธิ์และเจ้าของไฟล์จะเป็นปกติอย่างสมบูรณ์ ฉันจะยอมรับคำตอบนี้หากฉันไม่พบข้อความโต้ตอบเหล่านั้นภายในหนึ่งสัปดาห์
Lri

TextEdit แสดงข้อผิดพลาดอีกครั้งในขณะนี้ (ด้วยคอนโซลเอาต์พุตเดียวกัน) ดังนั้นฉันสมมติรีเซ็ตสิทธิ์ไม่ได้ช่วย ...
Lri

คุณทำงานกับไฟล์ที่ไม่ได้อยู่ในเครื่องของคุณหรือไม่? อาจเป็นไฟล์ใน iDisk หรือโฟลเดอร์แชร์ใช่ไหม?
Thecafremo

ไม่ไฟล์บันทึกแสดงเส้นทางในเครื่องเป็นfile://localhostURL ด้วยเหตุผลบางประการ
Lri

1
  1. เลือกข้อความทั้งหมดในเอกสารไปยังคลิปบอร์ด ( Command+A
  2. ออกและเลือกที่จะละทิ้งการเปลี่ยนแปลงเอกสาร
  3. เปิดเอกสารอีกครั้ง
  4. เลือกทั้งหมดที่อยู่ในเอกสาร (ตอนนี้เป็นสำเนาเก่า)
  5. วางวัสดุที่คัดลอกมาก่อนหน้านี้
  6. ตอนนี้บันทึกเอกสารใหม่และเอกสารที่สมบูรณ์

0

คัดลอกเนื้อหาและวางลงในเอกสารประเภทเดียวกัน

ใน Keynote ให้เลือกสไลด์ทั้งหมดในมุมมองเนวิเกเตอร์แล้วลากลงในบานหน้าต่างเดียวกันของเอกสารใหม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.