ไฟล์ PDB คืออะไรและฉันจะแยกไฟล์ออกจากโฟลเดอร์ release ได้อย่างไรเมื่อฉันสร้างโซลูชันขึ้นมาใหม่?
ไฟล์ PDB คืออะไรและฉันจะแยกไฟล์ออกจากโฟลเดอร์ release ได้อย่างไรเมื่อฉันสร้างโซลูชันขึ้นมาใหม่?
คำตอบ:
ไฟล์ PDB มีข้อมูลเพื่อให้โปรแกรมดีบั๊กทำงานได้ มีข้อมูลน้อยลงในบิลด์การวางจำหน่ายมากกว่าในบิลด์ Debug แต่ถ้าคุณไม่ต้องการให้สร้างเลยไปที่คุณสมบัติ Build ของโครงการของคุณเลือกการกำหนดค่า Release คลิกที่ "Advanced ... " และภายใต้ "Debug Info" เลือก "None"
ตอนแรกฉันถามตัวเองด้วยคำถามว่า " ฉันต้องการไฟล์ PDB ที่ปรับใช้กับเครื่องลูกค้าของฉันหรือไม่ " และหลังจากอ่านโพสต์นี้แล้วตัดสินใจแยกไฟล์ออก
ทุกอย่างทำงานได้ดีจนถึงทุกวันนี้เมื่อฉันพยายามหาสาเหตุว่าทำไมกล่องข้อความที่มีการException.StackTrace
ขาดหายไปคือข้อมูลไฟล์และหมายเลขบรรทัด - จำเป็นสำหรับการแก้ไขปัญหาข้อยกเว้น ฉันอ่านโพสต์นี้อีกครั้งและพบว่านักเก็ตสำคัญของข้อมูล: ถึงแม้ว่า PDB จะไม่จำเป็นสำหรับแอปที่จะเรียกใช้ แต่ก็จำเป็นสำหรับไฟล์และหมายเลขบรรทัดที่จะปรากฏในStackTrace
สตริง ฉันรวมไฟล์ PDB ไว้ในโฟลเดอร์ที่สามารถใช้งานได้และตอนนี้ทั้งหมดก็ใช้ได้
accepted answer
นี่ไม่ได้กล่าวถึง
PDBเป็นตัวย่อของP rogram D ata B ase ตามชื่อที่แนะนำมันเป็นที่เก็บ (ที่เก็บข้อมูลถาวรเช่นฐานข้อมูล) เพื่อรักษาข้อมูลที่จำเป็นในการเรียกใช้โปรแกรมของคุณในโหมดแก้ไขข้อบกพร่อง มันมีข้อมูลที่เกี่ยวข้องที่สำคัญมากมายที่จำเป็นในขณะที่คุณทำการดีบั๊กโค้ดของคุณ (ใน Visual Studio) เช่น ณ จุดใดที่คุณได้แทรกจุดพักที่คุณต้องการให้ดีบักเกอร์แตกใน Visual Studio
นี่คือเหตุผลที่ Visual Studio ล้มเหลวในการเข้าถึงจุดพักหลายครั้งหากคุณลบ*.pdb
ไฟล์ออกจากโฟลเดอร์ดีบั๊ก ดีบักเกอร์ Visual Studio ยังสามารถบอกหมายเลขบรรทัดที่แม่นยำของไฟล์โค้ดที่เกิดข้อยกเว้นในการติดตามสแต็กด้วยความช่วยเหลือของ*.pdb
ไฟล์ ดังนั้นไฟล์ pdb ที่มีประสิทธิภาพจึงเป็นประโยชน์ต่อนักพัฒนาในขณะที่ดีบักโปรแกรม
โดยทั่วไปจะไม่แนะนำให้ยกเว้นการสร้าง*.pdb
ไฟล์ จากจุดเริ่มต้นของการผลิตสิ่งที่คุณควรทำคือการสร้างไฟล์ pdb แต่ไม่ส่งไปยังเว็บไซต์ลูกค้าในตัวติดตั้งผลิตภัณฑ์ เก็บรักษาไฟล์ PDB ที่สร้างขึ้นทั้งหมดไปยังเซิร์ฟเวอร์สัญลักษณ์ซึ่งสามารถใช้ / อ้างอิงได้ในอนาคตหากจำเป็น พิเศษสำหรับกรณีที่คุณแก้ปัญหาเช่นกระบวนการขัดข้อง เมื่อคุณเริ่มวิเคราะห์ไฟล์ dump crash และหาก*.pdb
ไฟล์ต้นฉบับของคุณที่สร้างขึ้นในระหว่างกระบวนการ build นั้นไม่ได้รับการสงวนไว้ Visual Studio จะไม่สามารถสร้างบรรทัดรหัสที่แน่นอนซึ่งเป็นสาเหตุของความผิดพลาดได้
หากคุณยังต้องการปิดการใช้งานการสร้าง*.pdb
ไฟล์ทั้งหมดสำหรับรุ่นใด ๆ ให้ไปที่คุณสมบัติของโครงการ -> แท็บสร้าง -> คลิกที่Advancedปุ่ม -> เลือกnone
จากช่องแบบเลื่อนลง "ข้อมูลการแก้ปัญหา" -> กดOKตามที่แสดงในภาพรวมด้านล่าง .
หมายเหตุ : การตั้งค่านี้จะต้องทำแยกต่างหากสำหรับการกำหนดค่าการสร้าง "Debug" และ "Release"
ไฟล์ PDBประกอบด้วยข้อมูลที่ใช้โดยการดีบัก ไม่จำเป็นต้องเรียกใช้แอปพลิเคชันของคุณและไม่จำเป็นต้องรวมอยู่ในเวอร์ชันที่คุณวางจำหน่าย
คุณสามารถปิดการใช้งานการสร้างไฟล์ pdb ใน Visual Studio หากคุณกำลังสร้างจากบรรทัดคำสั่งหรือสคริปต์ให้ละเว้น/Debug
สวิตช์
ไฟล์ฐานข้อมูล Debug โปรแกรม (pdb) เป็นรูปแบบไฟล์โดย Microsoft สำหรับการจัดเก็บข้อมูลการดีบัก
เมื่อคุณสร้างโครงการโดยใช้ Visual Studio หรือพร้อมท์คำสั่งคอมไพเลอร์จะสร้างไฟล์สัญลักษณ์เหล่านี้
ตรวจสอบMicrosoft เอกสาร