ฉันไม่สามารถค้นหาหรือเปิดไฟล์ PDB ใน C ++

ใน Visual C ++ และภาษา Microsoft อื่น ๆ ไฟล์ฐานข้อมูลโปรแกรมที่เก็บไว้ใน. pdb ส่วนขยายจะเก็บข้อมูลที่ใช้โดยตัวเชื่อมโยงและดีบักเกอร์ ขึ้นอยู่กับตัวเลือกคอมไพเลอร์และลิงเกอร์อาจมีไฟล์. pdb หลายไฟล์แต่ละไฟล์ใช้ในช่วงเวลาที่ต่างกันระหว่างกระบวนการสร้างและดีบักกระบวนการของโครงการของคุณ หากไฟล์เหล่านี้หายไปอย่างลึกลับมีหลายวิธีในการสร้างใหม่

พื้นหลัง

ภาษา Visual Studio ของ Microsoft สร้างไฟล์. pdb ซึ่งเป็นส่วนหนึ่งของกระบวนการคอมไพล์และลิงค์ ไฟล์เหล่านี้มีตัวชี้ไปยังการอ้างอิงและสัญลักษณ์ช่วยให้ตัวเชื่อมโยงและดีบักเกอร์ค้นหารหัสและตัวแปรในวัตถุและไฟล์ที่ปฏิบัติการได้ ใน Visual C ++ ไฟล์. pdb อย่างน้อยสองไฟล์จะถูกสร้างขึ้นในระหว่างกระบวนการสร้าง ไฟล์ vc100.pdb ใน Visual Studio 2010 ได้รับการสร้างขึ้นระหว่างขั้นตอนการคอมไพล์และมีพอยน์เตอร์ไปยังไฟล์วัตถุต่าง ๆ ไฟล์ที่สอง projectName.pdb (โดยที่ชื่อโปรเจ็กต์เป็นชื่อของโปรเจ็กต์หรือไฟล์เรียกทำงาน) มีพอยน์เตอร์และการอ้างอิงไปยังไฟล์เรียกทำงาน ไฟล์เหล่านี้สามารถพบได้ในโฟลเดอร์“ Debug” ในไดเรกทอรีโครงการ

ทำความสะอาดและสร้างใหม่

วิธีทั่วไปในการสูญเสียไฟล์ pdb เกิดขึ้นเมื่อ“ Project” จากนั้นรายการเมนู“ Clean” จะถูกคลิกใน Visual Studio IDE การดำเนินการใหม่ทั้งหมดจะลบไฟล์ออบเจ็กต์ตัวลิงก์และไฟล์เรียกทำงานทั้งหมดรวมถึงไฟล์ pdb หากต้องการสร้างไฟล์ใหม่เพียงแค่คลิก "โครงการ" และเลือก "สร้างใหม่ทั้งหมด"

ตรวจสอบตัวเลือกโครงการ

หากการล้างข้อมูลและการสร้างใหม่ไม่ทำงานอาจมีตัวเลือกโครงการที่เปลี่ยนไปตามวิธีการหรือโครงการอาจเสียหาย สิ่งที่พบได้บ่อยที่สุดคือเปลี่ยนการกำหนดค่าโครงการจาก Debug เป็น Release หากต้องการเปลี่ยนกลับเป็น Debug ให้คลิก“ Project” เลือก“ เครื่องมือจัดการการกำหนดค่า” และเลือก“ Debug” หากตัวเลือกเครื่องมือจัดการการกำหนดค่าไม่ปรากฏในเมนูบิลด์ให้คลิก“ เครื่องมือ” และเลือก“ ตัวเลือก” เมื่อหน้าตัวเลือกปรากฏขึ้น เลือก“ โครงการและโซลูชัน” จากมุมมองแบบต้นไม้และคลิกกล่องกาเครื่องหมายที่ระบุ“ แสดงตัวเลือกการกำหนดค่าขั้นสูง” ตัวจัดการการกำหนดค่าควรปรากฏในเมนูสร้าง

สร้างโครงการใหม่

หากไฟล์ยังคงไม่ปรากฏอาจเป็นเวลาที่จะสร้างโครงการใหม่ ปิด Visual Studio เปลี่ยนชื่อโฟลเดอร์โครงการและเปิด Visual Studio อีกครั้ง คลิก "ไฟล์" เลือก "โครงการใหม่" และตั้งค่าโครงการ Visual C ++ ใหม่โดยใช้ชื่อและประเภทโครงการเหมือนเดิม สร้างโครงการใหม่ที่ว่างเปล่าเพื่อสร้างโครงสร้างโปรแกรมพื้นฐานและไฟล์และคัดลอก. cpp, .h, .res และไฟล์อื่น ๆ จากโครงการต้นฉบับ อย่าเขียนทับไฟล์ใด ๆ ในโฟลเดอร์โครงการใหม่

กลับไปที่ Visual Studio และคลิก“ Project” เลือก“ เพิ่มไฟล์ที่มีอยู่” และเลือกไฟล์ทั้งหมดที่ถูกคัดลอกลงในโครงการจากโฟลเดอร์เก่า สร้างและทดสอบโปรแกรมเพื่อให้แน่ใจว่ามีการคัดลอกไฟล์ที่จำเป็นทั้งหมด อีกครั้งสลับการกำหนดค่าเป็น "แก้ปัญหา" และเรียกใช้โครงการ ไฟล์. pdb ควรอยู่ในโฟลเดอร์ดีบั๊ก

โพสต์ยอดนิยม