Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Windows

แก้ไข: Failed to create the D3D9 device, This can happen if the desktop is locked

เกมที่ทันสมัยมากกว่านั้นค่อนข้างไวต่อความละเอียดของหน้าจอ ยิ่งไปกว่านั้นหากเราเล่นผ่าน Game Launcher ภายนอกอย่าง Steam เคยเห็นความขัดแย้งกับความละเอียดหน้าจอทำให้หน้าจอดำทั้งหมด หรืออย่างน้อยก็ Pause เกมได้ ปัญหาที่รู้จักกันดีกับความขัดแย้งของความละเอียดหน้าจอคือ เมื่อผู้เล่นได้รับข้อผิดพลาด:

Failed to create the D3D9 device, This can happen if the desktop is locked

แก้ไข: Failed to create the D3D9 device, This can happen if the desktop is locked

เหตุผลที่เป็นไปได้หนึ่งคือ ความละเอียดของเกมแตกต่างจากการตั้งค่าจอภาพปัจจุบัน แม้จะอาจมีเหตุผลอื่นๆ ที่เป็นสาเหตุของปัญหา

คุณสามารถลองวิธีแก้ไขต่อไปนี้ทีละขั้นตอนเพื่อพยายามแก้ไขข้อผิดพลาด:

1] เปลี่ยนความละเอียดของเกมเมื่อเปิดผ่าน Steam

เมื่อเปิดเกมผ่าน Steam เราสามารถเปิดเกมในโหมด Windowed ได้ ซึ่งจะช่วยให้ความละเอียดของจอภาพตรงกับความละเอียดของเกม ขั้นตอนการทำดังนี้:

  1. คลิกขวาที่พื้นที่ว่างบนเดสก์ท็อป และเลือก Display settings จากรายการ
  2. ตรวจสอบและบันทึกความละเอียดปัจจุบันของจอภาพ เราต้องทำให้ตรงกับความละเอียดของเกม
  3. ตอนนี้เปิด Steam Client ของเกมของคุณ ไปที่ Library แล้ว Properties
  4. ในแท็บ General คลิกที่ Set Launch Options ใส่ค่า "-w 1920 –h 1200" (โดยไม่ต้องใส่โค้ด)
  5. กด OK และออกจากหน้าจอ

ตรวจสอบว่าความละเอียดนี้ทำงานหรือไม่ เรายังสามารถลองเปลี่ยนความละเอียดของจอภาพได้ หากไม่เต็มใจที่จะทำกับเกม

วิธีแก้ไขอีกอย่างคือ ใส่คำสั่ง "-windowed" แทนความละเอียดใน Set Launch Options เมื่อทำเช่นนั้น เกมจะเปิดในหน้าต่างเล็กกว่า และหลังจากนั้นเราสามารถปรับขนาดและมุมได้ตามต้องการ

2] เปลี่ยนความละเอียดในไฟล์เกมด้วยตนเอง

ในกรณีที่วิธีข้างต้นไม่ได้ผล เราสามารถเปลี่ยนความละเอียดของเกมได้โดยการเปิดไฟล์ Config ของ Steam บน Notepad และเปลี่ยนด้วยตนเอง กระบวนการมีดังนี้:

1] ไปที่ไดเรกทอรีของ Steam Launcher ของเกม ตัวอย่างอาจเป็น Steam/Steamapps/Common/Counter-Strike/CSGame/Config

2] ค้นหาไฟล์ "Machineoptions.ini" คลิกขวาที่มัน และเลือก Open with จากตัวเลือก เปิดด้วย Notepad

3] ความละเอียดจะถูกกล่าวถึง โดยค่า X แทนความกว้าง และ Y แทนความสูง เปลี่ยนให้ตรงกับความละเอียดของจอภาพ

4] อีกวิธีหนึ่งเพื่อให้แน่ใจว่าการตั้งค่าจะตรงกับความละเอียดของจอภาพตลอดเวลา คือ ลบ ; ออกจากด้านหลังค่าของ X และ Y เช่น:

;ResX=1920 ;ResY=1200

หลังจากลบ ; ออกจากทั้งสองค่า เราจะได้

ResX=1920 ResY=1200

สำหรับข้อมูลเพิ่มเติม โปรดตรวจสอบเธรดอภิปราย Reddit ที่นี่

แก้ไข: Failed to create the D3D9 device, This can happen if the desktop is locked