it-swarm.asia

كيف يمكنني علاج "نقطة الإيقاف لن يتم الوصول إليها حاليًا. لم يتم تحميل أي رموز لهذا المستند." تحذير؟

تطبيق سطح المكتب C # على الإصدار السريع. عملت ثم لم تنجح بعد 5 ثوان.

حاولت ما يلي.

  • تأكد من ضبط تكوين التصحيح وعلامة التصحيح ومعلومات التصحيح الكاملة على جميع التجميعات.
  • احذف كل مجلدات bin و obj وجميع ملفات DLL المرتبطة بالمشروع من الجهاز بالكامل.
  • إعادة إنشاء المشاريع التي تسببت في المشكلة من الصفر.
  • اعادة التشغيل.

لدي مشروعان WinForms في الحل. يقوم أحدهم بتحميل معلومات التصحيح ، ولا يقوم أحدها بتحميلها. كلاهما يشيران إلى التجميع الذي أحاول الحصول على معلومات التصحيح عليهما بنفس الطريقة في ملف المشروع. أيه أفكار؟


أريد أن أضيف هنا ، خاصة بالنسبة لي عندما أعود لمراجعة هذا السؤال ، أن الرموز لا يتم تحميلها حتى يتم تحميل الجمعية ، ولن يتم تحميل الجمعية حتى يتم الاحتياج إليها. إذا كانت نقطة الإيقاف هذه موجودة في مكتبة تُستخدم فقط في وظيفة واحدة في التجميع الرئيسي ، فلن يتم تحميل الرموز (وسيظهر نقطة الإيقاف هذه غير قابلة للتنفيذ) حتى يتم استدعاء هذه الوظيفة.

1332
Instance Hunter

ابدأ في تصحيح الأخطاء ، بمجرد وصولك إلى نقطة توقف أو استخدام Debug > Break All ، استخدم Debug > Windows > Modules. سترى قائمة بجميع التجميعات التي تم تحميلها في العملية. حدد موقع الشخص الذي تريد الحصول على معلومات تصحيح الأخطاء له. انقر بزر الماوس الأيمن فوقه وحدد Symbol Load Information. ستحصل على مربع حوار يسرد جميع الأدلة حيث يبحث عن ملف .pdb للتجميع. تحقق من تلك القائمة مقابل موقع .pdb الفعلي. تأكد من أنها لا تجد واحدة قديمة.

في المشروعات العادية ، يجب دائمًا نسخ الجمعية وملفها .pdb بواسطة IDE في نفس المجلد مثل .exe. مجلد bin\Debug لمشروعك. تأكد من إزالة واحدة من GAC إذا كنت تلعب معها.

950
Hans Passant

جرب أولاً إعادة بناء مشروعك بالماوس الأيمن. انقر فوق المشروع> إعادة الإنشاء. إذا لم ينجح ذلك ، فجرب تنظيف المشروع (انقر بزر الفأرة الأيمن على المشروع> نظيف)

إذا لم ينجح ذلك ، تحقق من ذلك:

  1. انقر بزر الفأرة الأيمن على المشروع
  2. اختر [خصائص]
  3. حدد [إنشاء] علامة التبويب
  4. تأكد [تم تحديد DEBUG ثابت] و [تم تحديد ثابت TRACE] تم فحصه
  5. تأكد [رمز التحسين] لم يتم التحقق منه
  6. انقر فوق [متقدم] الزر في أسفل صفحة علامة التبويب إنشاء
  7. تأكد من أن [Debug Info:] مضبوطة إلى [full]
  8. انقر [موافق] وإعادة البناء المشروع ؛-)

(الخطوة 6 بإنشاء ملفات .pdb ، هذه هي رموز التصحيح)

318
juFo

مجرد شيء بسيط يمكن تجربته - ربما تكون قد جربته بالفعل. انقر بزر الماوس الأيمن فوق الحل في حل Explorer ، ثم انقر فوق "الحل النظيف" ، وهذا يحذف جميع الملفات المجمعة والمؤقتة المرتبطة بحل .

قم بإعادة إنشاء الحل وحاول تصحيح الأخطاء مرة أخرى.

لقد واجهت أيضًا مشكلات في نقاط التوقف في مشاريع متعددة في حل ما - تم تجميع بعضها على شكل x86 ، وبعضها على x64.

256
Patrick

تعطيل الخيار "Just My Code" في إعدادات Debug/General.

209
sublimental

عبر نشر هذا الإصلاح من Hans K التي وجدتها في سلسلة الرسائل المماثلة >> HERE << :

انقر بزر الماوس الأيمن على الحل -> خصائص

انظر تحت الخصائص العامة -> مشروع بدء التشغيل

حدد عدة مشاريع بدء التشغيل

حدد بدء الإجراء في المشروعات التي تحتاج إلى تصحيحها.

142
jp2code

قادني الجواب المحدد إلى حل مشكلتي. لكنني بحاجة إلى القيام ببعض الأشياء أكثر:

حتى مع تحديد "تصحيح" في القائمة المنسدلة:

enter image description here

وفي المشروع خصائص> بناء:

enter image description here

لم يكن Visual Studio يقوم بتحميل الرموز لمشروع معين. لذا في تلك القائمة المنسدلة ، حددت "مدير التهيئة" ورأيت أن إعدادات مشروع الويب الخاص بي كانت غير صحيحة:

enter image description here

enter image description here

ثم قمت بتعيين ذلك على "Debug" وبدأت في إنشاء ملف .pdb.لكنأحتاج إلى نسخ PDB و DLLيدويًا _ ووضعه في المجلد الذي كان يبدو عليه VS (هنا هو المكان الذي ساعدني في الإجابة المحددة):

enter image description here

56
fabriciorissetto

لقد تمكنت من إصلاح الخطأ عن طريق تحديد الخيار في الخيار "إرفاق بمعالجة" لتحديد "نوع الرمز المطلوب تصحيحه" تلقائيًا كما هو موضح في لقطة الشاشة المرفقة.

ببساطة اتبع الخطوات أدناه:

  • انتقل إلى تصحيح من شريط القائمة
  • انقر فوق إرفاق للمعالجة
  • بالقرب من إرفاق الخيار ، انقر فوق حدد زر
  • حدد نوع الرمز ستظهر النافذة
  • الآن حدد الخيار تحديد نوع الكود المراد تصحيحه تلقائيًا وانقر فوق الزر "موافق".

Fixed Debugging Error

41
theITvideos

Debug> Windows> Modules لمعرفة الوحدات النمطية التي تم تحميلها ، وضعتني في الاتجاه الصحيح.

في حالتي IIS يبدو أن Express يتم تحميل ملف مختلف DLL عن ملفات ASP.NET المؤقتة.

الحل؟

  1. استعرض للوصول إلى C:\Users\<YOUR USER>\AppData\Local\Temp\Temporary ASP.NET Files\vs
  2. حذف كل شيء في هذا الدليل!
41
James S

تحقق مما إذا كان ملف .pbd الخاص بك مفقودًا في مجلد bin/Debug. إذا كان الأمر كذلك ، فانتقل إلى "خصائص" لمشروعك ، واختر "إنشاء" ثم "متقدم" في الأسفل. اختر "ممتلئ" ضمن "معلومات التصحيح" في النافذة الجديدة التي ظهرت. كان هذا مشكلتي وحلها بالنسبة لي.

 Showing where to find the setting

36
Arne H. Bitubekk

في بعض الأحيان ، على الرغم من أنه يمنحك هذا الخطأ ، لا يزال breakpoint يتعرض للضرب ، لذلك فقط تجاهل الخطأ. يحدث هذا غالبًا إلى حد ما في Views الخاص بـ MVC web app.

34
Serj Sagan

في حالتي تم فحص "تحسين الكود" في خصائص مشروعي. تسبب هذا في رؤية VS التجميع الخاص بي كـ "لا رمز بلدي" ، وبدوره ، لم يتم تحميل الرموز الخاصة به.

كان الحل هو إلغاء هذا.  Location of Optimize Code checkbox

29
Sandra

فقط تحقق ما إذا كان الحل الخاص بك في وضع الإصدار.

23
Tino Jose Thannippara

حاول تشغيل الاستوديو المرئي كمسؤول داخل النوافذ.

21
Andy

في حالتي أحاول تصحيح في وضع الإصدار. بمجرد تغييره إلى وضع التصحيح. انها تعمل

18
Adithya Sai

تحتاج إلى تمكين "إنشاء معلومات التصحيح" في إعدادات برنامج التحويل البرمجي

14
DS.

وجدنا سبب مشكلتنا. يستخدم هذا الرمز السمة "CodeBehind" في توجيه الصفحة لملف .aspx بدلاً من السمة "CodeFile" (ASP.NET 2.0 وما بعده). بعد أيام من اليأس ، بحث بسيط واستبدال حل المشكلة.

10
cjo30080

الخيار "بدء التصحيح ، Debug + Windows + الوحدات النمطية" غير موجود في إصدار Microsoft Visual Studio Express 2013.

إلغاء تحديد "استخدام وضع التوافق المدار" في "خيارات الأدوات" يعمل تصحيح الأخطاء على إصلاح هذا.

10
Andrus

حاولت كل ما ذكر أعلاه ، ولكن لا شيء يعمل. [الحل النظيف ، وتحقق من ملفات PDB إلخ.]

حتى نشر نفس الحل لم يحل المشكلة.

ثم عدت إلى ما أقوم به عادة لحل (تخدع هذا Visual Studio العنيد)

كل ما فعلته هو إجراء تغيير متعمد في التعليمات البرمجية ونشر الحل. ثم عادت التغيير ونشرت مرة أخرى.

فويلا [ملفات PDB تتخلص من الأرواح الشريرة] .. ليست دقة ذكية ، لكن هذا لم ينجح ..: - |

8
Mahesh

الأشياء التي يجب التحقق منها فقط لتكون واضحة: تأكد من تعيين التكوين على "Debug" وليس "Release". يمكنك تصحيح مشروع بدء التشغيل في وضع "Release" ، ولكن ليس مكتبة فئة مرجعية.

7
Sai Chakradhar Sana

تطبيقات الويب (IIS Express) فقط:

  • Rightclick IIS Express Tray وأغلق IIS.
  • حل نظيف

 IIS Tray

6
Christian Gollhardt

أيا من هذه الإجابات حل مشكلتي. جربت شيئًا آخر استنادًا إلى حقيقة أن المشروع مع التوقف لم يكن في الواقع المشروع المحمّل. لقد وجدت كما كتب هانز Passant أن .dll حيث أريد إيقاف المصحح وملفات .pdb associoated حيث يتم نسخها بالقرب من ملف. exe. كان لهذه الملفات تاريخ أقدم لذلك اعتقدت أنه لم يتم تحديثها في وقت التشغيل. قمت بحذفها يدويًا ، قام Visual Studio بإنشاء زوج آخر ووضع هذا الزوج الجديد بالقرب من .exe. الآن يعمل breakpoins!

ربما يتعذر على Visual Studio نسخ الملفات الموجودة (.dll و .pdb) واستبدالها بالقرب من .exe نظرًا لوجود ملف آخر هناك. لذلك إذا قمت بحذفها يدويًا ، يمكن لـ VS إنشاء واحدة جديدة بالقرب من .exe.

أعتقد أن التغييرات الأخرى (الشيكات وما إلى ذلك - من الإجابات الأخرى) تسببت في شيء ونسخ Visual Studio واستبدال dll و pdb من مجلد المشروع إلى المجلد بالقرب من exe ، لذلك كان الحل.

أعتقد أن السبب الجذري للمشكلة هو أن Visual Studio يستخدم ملفًا آخر في وقت التشغيل ، لا يوجد ملف من المشروع ، مع التوقف.

ربما هذه الإجابة لمساعدة شخص ما!

6
Tratak

هذا أخذني بعض الوقت إلى خيارات أخرى جربت وسبب توقف تصحيح الأخطاء عن العمل.

أداة -> خيارات -> تصحيح الأخطاء -> عام -> (إلغاء تحديد) "خيار طلب ملفات المصدر لتتوافق تمامًا مع الإصدار الأصلي"

6
tfa

خصائص المشروع (ثم حدد تهيئة التكوين الخاصة بك)> علامة تبويب Build> Advanced ...> Debug Info (القائمة المنسدلة)

اضبط على "الكل" أو "pdb فقط" ثم أعد الإنشاء

5
Sinaesthetic

كان لي أيضًا نفس المشكلة التي أعدت فيها بناء الحل بالكامل (بما في ذلك المشاريع المحولة) في x86 (أو x64)

على الرغم من أنني قمت بتعيين كافة المشاريع الخاصة بي على x86 من مدير التهيئة (Build-> ConfigManager) ، لم يتم تعيين بعض مشاريعي على x86.

لذلك فقط للتأكد من النقر بزر الماوس الأيمن على المشروع والمتابعة

مشروع -> خصائص -> تصحيح التبويب ، تحقق من التكوين والنظام الأساسي.

5
user781700

بدلا من القيام بكل هذه الأشياء فقط

إغلاق وإعادة فتح

الحل سوف يحل المشكلة

5
kselva

واجهت مشكلة مشابهة وفعلت ما يلي: Debug => Options => General => إزالة علامة الاختيار "Enable Just My Code".

4
Muhamed Krasniqi

كنت أدمج تطبيق C # مع مكتبة ثابتة باستخدام VS10 - وهذا ما أنا جديد عليه. كتبت دلل رمز المدارة لواجهة لهم. يمكنني وضع نقاط التوقف في كل مكان ولكن ليب ثابت. تلقيت الرسالة الموضحة أعلاه - لم يتم تحميل أي رموز لهذا المستند. حاولت العديد من الاقتراحات أعلاه. أستطيع أن أرى أن الرموز لم يتم تحميلها. لقد لاحظت أخيرًا تحديد خانة الاختيار تصحيح التكوين ، وتمكين تصحيح الأخطاء في التعليمات البرمجية غير المُدارة. هذا سمح لي بتعيين نقاط توقف في وظائف lib ثابتة.

4
Kary

لقد قرأت بعناية جميع الإجابات المذكورة أعلاه ، لكن أيا منها لم يحل مشكلتي.

في حالتي ، كنت أجمع مكتبة صنف (DLL). لا يبدو أن هناك وحدات نمطية يتم تحميلها في Debug -> الوحدات النمطية ، لذلك لم أستطع حتى تحميل الرموز يدويًا.

كان حلي هو إضافة هذا السطر إلى الكود:

System.Diagnostics.Debugger.Launch();

بمجرد الوصول إلى هذا الرمز ، يتم تشغيل استثناء ويظهر .NET Framework مربع حوار يسألك عن Visual Studio (أي مثيل جديد لـ VS 2008 ، أو مثيل جديد لـ VS 2013 ، وما إلى ذلك) الذي تريد استخدامه لتصحيح البرنامج. يمكنك اختيار مثيل VS الحالي مع تحميل مشروعك. سيؤدي ذلك إلى إرفاق العملية بجلسة VS وتحميل جميع الرموز ، والآن يمكنك تصحيح مشروعك.

بالطبع ، يجب إجراء التحويل البرمجي باستخدام تكوين Debug وليس الإصدار.

4
Sam

أعلم أنني متأخرة لسنوات ، لكنني اعتقدت أنني قد ارتكبت خطأً واتبعت الخطوات المذكورة أعلاه ثم أدركت أنني قمت بتعيين تكوين الحل على "الإصدار" عن طريق الخطأ :)

4
Neil Walker

للحصول على تطبيق ASP.Net ، تحقق من خصائص الموقع ، علامة تبويب ASP.NET. تأكد من تحديد إصدار ASP.NET الصحيح.

3
Mark Whaling

إذا حصلنا على أحدث إصدار من VSTS ، فستكون جميع الملفات في وضع القراءة فقط. أثناء تشغيل المشروع ، تصبح جميع فئات مكتبة الفصل للقراءة فقط وتتحول نقاط brakepoints فارغة وتقول "لن يتم حصر نقاط الفصل حاليًا. لن يتم تحميل أي رموز لهذا المستند".

الحل 1

انتقل إلى موقع المشروع ولعق المجلد ---> خصائص ---> علامة التبويب عام ---> إلغاء تحديد للقراءة فقط (ينطبق فقط على الملفات الموجودة في المجلد) ---> تطبيق ---> موافق

الحل 2

بدء التصحيح ، انتقل إلى تصحيح ---> Windows ---> الوحدات النمطية. حدد تجميع واحد وانقر بزر الماوس الأيمن ---> (حدد) إعداد رمز. عيّن مسار سلة المهملات في رمز ذاكرة التخزين المؤقت في هذا الدليل وحدد خوادم Microsoft في موقع رمز PDB. انقر فوق تحميل كافة الرموز. سوف يستغرق بعض الوقت. ثم انقر فوق موافق.

الآن تم تغيير حالة رمز التجميع من "لا يمكن العثور على أو فتح PDB" إلى "الرموز المحملة".

2
Bala Kumar

انقر بزر الماوس الأيمن على Project -> خصائص -> اذهب إلى بناء علامة تبويب -> ألغ تحديد تحسين الكود . هل لأنها أي مشروع في الحل الخاص بك

2
Jamal Kaksouri

حدث هذا بالنسبة لي بعد نسخ لصق ملف asmx آخر من webservice إلى خدمة ويب موجودة ، مما أدى إلى حدوث نفس الخطأ عند محاولة تصحيح الخدمة المضافة مؤخرًا ، حتى أتمكن من تصحيح الأخطاء واضطررت إلى البدء دون تصحيح ، ثم إرفاق العملية. لها غريب ولكن الطريقة الوحيدة التي وجدت لتكون قادرة على تصحيح الأخطاء.

2
montelof

جربت كل هذه الأمور ولم أستطع الحصول على نقطة توقف في العمل ...

ما فعلته لإصلاح هذه المشكلة كان

في الصفحة التي لم تصل فيها نقطة التوقف ، حددت المجلد> إضافة عنصر موجود ، ثم حدد الصفحة من مسار الحفظ. هذا سمح لنقطة الانطلاق للبدء في العمل.

2
Pomster

كان لي نفس المشكلة وحاولت كل شيء ممكن ... بعض هذه الأشياء

1) ملفات Nuking المؤقتة في مجلدات ASP.NET المؤقتة في مجلدات bin و obj.

2) إلغاء تحديد رمز التحسين وتمكين الكود الخاص بي

3) التنقل ومحاولة تحميل الرموز يدويًا من نوافذ الوحدة النمطية.

4) التحقق من علم البناء في خصائص الحل. ........

والقائمة تطول .. لقد أمضيت يومًا واحدًا في هذا ولكن ما نجح لي في النهاية كان ... كنت أعرف أن رموز مشروعي لم يتم تحميلها ولم أتمكن من رؤية أي وحدات تحتوي على اسم مشروعي في نافذة الوحدات إما ...

لذلك كانت المشكلة تم جلب الرموز الخاصة بي من مسار الدليل الظاهري للمشروع ... وتم تعيينه إلى الدليل الظاهري لبعض المشاريع الأخرى بدلاً من ذلك ... لم يكن مشروع الويب الذي كان من المفترض تحميله في الوحدات النمطية موجودًا هي الخطوات التي اتبعتها ..

  • انقر بزر الماوس الأيمن فوق مشروع ويب محدد واختر خصائص
  • انتقل إلى علامة تبويب الويب
  • يمكنك رؤية الزر "إنشاء دليل ظاهري"
  • بمجرد النقر فوقه ، رأيت رسالة تنبيه تفيد "يتم تعيين (اسم المشروع) إلى (anotherProjectName)" هل أنت متأكد من رغبتك في إعادة تعيين الخريطة؟ شيء من هذا القبيل
  • ثم كان من المنطقي أنه لماذا رأيت اسم المشروع غير الضروري في نافذة الوحدات النمطية
  • ثم أعدت بناء الحل وتمكنت من الوصول إلى نقطة الإيقاف
2
user1505521

إذا كنت تستخدم مشروع C++ أو dll من C# أو أي مشروع .Net ، وتريد التصحيح في الكود الأصلي. ثم انتقل إلى .Net Project الخصائص -> تصحيح الأخطاء -> تمكين تصحيح الأخطاء في الرمز الأصلي (اضبطه على صواب).

1
peter bence

تحقق من Solution Configuration القائمة المنسدلة. تأكد من تحديد Debug ، وليس Release.

1
zs2020

بالنسبة لي ، كانت المشكلة هي أنني كنت أحاول تصحيح الأخطاء في مشروع ويب لم يتم تعيينه كمشروع بدء التشغيل. لذلك لم يتم تصنيفها بشكل جيد عند تشغيل debug ولم يكن .pdb محدثًا.

مجرد إعداد المشروع إلى "إعداد كمشروع بدء التشغيل" قام بالخدعة.

أتمنى أن يساعدك هذا

1
Guillaume Martin

عند محاولة تصحيح برنامج Excel AddIn في VS 2013 ، بعد أن جربت جميع إعدادات Debug عن طريق تعطيل DotNet Framework Source يخطو ويعطل تحميل الرمز ، ما نجح أخيراً بالنسبة لي كان تغيير إعداد التهيئة للإصدار بدلاً من Debug ، منذ يبدو أن المترجم يتخطى الكود وتم ضرب نقاط التوقف في النهاية.

1
Kamran Hyder

موقفي الشخصي هو أن التصحيح كان يعمل في Visual Studio 2013 ، حيث تم إنشاؤه في الأصل ، لكنه لن يعمل في عام 2015. كنت قادراً على إصلاح هذا عن طريق تغيير الإصدار في ملف المشروع إلى الإصدار 12 بدلاً من الإصدار 10.

1
done_merson

أرغب في إضافة شيء آخر يمكن أن يمنع التنقل/الانهيار من خلال عدم تحميل ملف .pdb ، بعد عدم العثور على هذا في أي منتدى آخر: إذا أضفت عملية بناء بعد العملية لإضافة بيانات تعريف المورد إلى DLL (اسم الشركة ، رقم الإصدار ، إلخ) ، كما هو الحال في "rc.exe my_dll.rc" ، قد يتسبب هذا في حدوث تطابق غير صحيح بين DLL وملف .pdb. إذا لم تتطابق التواقيع ، فلن يتم تحميل الملف وجميع الرموز التي تحتاجها لتصحيح الأخطاء. إزالة هذا من بناء التصحيح.

1
Tom Gordon

[WINCE] لقد صادفت هذا أثناء البناء على نظام WinCE ، يبدو أن "النظيفة" لم تنظف المجلد الهدف على الجهاز ، لقد حصلت على تصحيح/استرجاع عن طريق تغيير مجلد الإخراج على الأجهزة (خصائص المشروع -> علامة تبويب الأجهزة -> تغيير مجلد الإخراج إلى غير التصحيح الفاشل السابق) - وفويلا !! إنها تعمل. قد تضطر إلى إجراء التنظيف اليدوي على الجهاز ، ولكن ذلك سيكون لاحقًا.

نأمل أن تكون هذه المساعدة.

1
WindyHen

في حالتي ، لم ينجح أي من هذه الحلول. اضطررت للذهاب إلى

أدوات -> استيراد وتصدير إعدادات -> إعادة تعيين جميع الإعدادات.

ثم بدأ التصحيح العمل دون أي مشاكل.

1
nPcomp

في حالتي ، في ملف AssemblyInfo.cs ، كان هناك السطر التالي وعلقت عليه وكان كل شيء على ما يرام:

[Assembly: System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
1
Hessam J.E

ذهبت من خلال جميع الإجابات لا شيء ساعد كثيرا. في حالتي مشكلة مع web.config ملف. كان <compilation debug="false" strict="true"

لقد غيرت ل

<compilation debug="true" strict="false". الآن يمكنني تصحيح التطبيق.

1
Chandu

في حالتي ، كنت أقوم بتصحيح ملحق WPF باستخدام مثيل Visual Studio التجريبي. بعد بدء تصحيح الأخطاء ثم إيقاف تشغيل أداة dubugger مؤقتًا ، فتحت نافذة Debug > Windows > Modules. نموذج هناك ، يمكن أن أرى الدليل حيث كان Visual Studio يحاول تحميل الرموز C:\Users\<username>\AppData\Local\Microsoft\VisualStudio\15.0_76a9e536Exp\Extensions\<companyName>. بعد إيقاف التصحيح ، قمت بحذف المجلد الهدف باستخدام مستكشف Windows وأعدت تشغيل المصحح. كان Visual Studio قادرًا على الوصول إلى نقطة الإيقاف هذه.

1
Paul Schroeder

انتهى بي الأمر إلى تتبع مشكلتي مرة أخرى إلى مشكلة عدم توافق واضحة باستخدام إصدارات PostSharp المتعددة . يحتوي التطبيق الذي كنت أحاول تصحيحه على إصدار سابق من PostSharp ولكنه كان يشير إلى مشروع كان يستخدم إصدارًا أحدث ، وقد أدى ذلك لسبب أو لآخر إلى رفض VS إنشاء ملف PDB لـ على وجه التحديد هذا التطبيق (تم تحميل كافة DLLs الأخرى رموز التصحيح الخاصة بهم جيد).

كان الحل هو تحديث PostSharp داخل كل مشروع إلى أحدث إصدار وإعادة ترجمة.

1
DamienMann

كنت أحصل على هذا وكان متعثر (باستخدام Visual Studio 2013 Premium).

عادةً ما تشير تطبيقاتنا في العمل إلى مرجع .dlls في دليل مشترك/تطبيق معين ، مثل هذا: C:\OurCompanyApps\xxxxxx.dll. كان هذا يحدث في حل يحتوي على مجموعة من مشاريع WinForm و .dll فيه. ترجمة المشاريع .dll إلى C:\OurCompanyApps\ومشاريع WinForm الرجوع إلى ملفات .dll المترجمة في هذا الموقع.

المشكلة: لقد وجدت أن التطبيق المعني كان يشير إلى مشروع .dll في موقع bin\Debug لمصدر التحكم بدلاً من ملف .dll المترجمة في C:\OurCompanyApps.

الحل: حذفت المرجع وأعدته من موقع C:\OurCompanyApps \. بعد ذلك ، تمكنت من اختراق نقاط التوقف التي أضفتها في رمز dll.

أمل أن هذا يساعد شخصاما.

1
clamum

في حالتي ، كان ذلك بسبب تعيين ملف تعريف النشر الخاص بي (النشر إلى موقع IIS محلي) بطريقة ما إلى "تكوين الإصدار" ، على الرغم من ضبط تكوين البنية العامة على "تصحيح". تعديل ملف تعريف النشر إلى تكوين تصحيح حل المشكلة بالنسبة لي.

1
george.himself

إذا كنت تجد أنك مضطر إلى إنشاء مشاريع في حلك بشكل فردي في ترتيب معين للحصول على الحل المطلوب إنشاؤه لأن إنشاء الحل مباشرة بعد التنظيف لا يعمل ، ثم تجد المشكلة الموضحة في السؤال ، ربما يرجع ذلك إلى تضمين بعض المشاريع الإضافية التي تحتوي على إشارات إلى مسارات نسبية غير صحيحة لأنه تمت إضافتها إلى الحل الخاص بك من موقع مختلف. لذلك ، لا تنتقل المسارات النسبية إلى نفس الموقع مثل ملفات .csproj الموجودة في مجلدات مباشرة أسفل ملف .sln الخاص بك.

يرجع السبب في بناء هذا المشروع عن طريق إنشاء المشاريع واحدًا تلو الآخر بترتيب معين إلى أن المشاريع الأخرى تشير إلى المكتبات نفسها ولكن بعد ذلك يتم إنشاؤها إلى GAC. ينتهي الحل بالبناء ولكن الرموز التي يحملها من GAC وقد تصبح هذه الرموز قديمة.

يكمن الحل في إعادة هيكلة بنية المجلد الفعلي للحل والمشاريع ، أو لفتح ملفات .csproj بشكل فردي وإصلاح المسارات النسبية بحيث تشير جميع المراجع إلى أي مكتبة معينة في نهاية المطاف إلى الموقع نفسه في جميع المشاريع. أو ربما استخدم الرمز المميز $(SolutionDir).

وإذا استمر فشل كل شيء آخر ، فأنت بحاجة إلى إجبار Visual Studio على إعادة ضبط تكوين البناء الخاص بك وهذا يتطلب منك إلغاء تحديد جميع المشاريع لجميع تكوينات البناء ثم إعادة التحقق منها جميعًا - راجع الحل هنا .

1
Neo

تأكد من عدم خروج الشفرة في وقت الارتباط. على الرغم من أن المترجم قد يعيد بناء كائن ما ، إذا لم يرى رابط أي إشارة إلى الكود ، فسوف يرميها ويؤدي هذا الخطأ عند محاولة تعيين نقطة توقف.

1
Nathan Kidd

في وضعي ، يقوم Visual Studio بتحميل DLL في ذاكرة التخزين المؤقتة للتجميع العمومي (GAC) ، وليس DLL في قائمة مشروعي. لقد حذفت DLL في GAC والآن أستطيع أن أرى نقطة توقف العمل.

0
Tuyen Nguyen

في حالتي ، بدأ هذا يحدث بعد تحديث Windows ، تبين أن تحديث النوافذ أوقف خدمات معلومات الإنترنت مما جعله يبدو أن API لم يتمكن من الوصول إلى نقطة التوقف التي حددتها ، ولكن ماذا كان يحدث في الواقع أن IIS فشل في بدء التشغيل ، وبالتالي لم يتم تشغيل رمز التطبيق الخاص بي بالفعل.

تحقق مرة أخرى من تمكين خدمات معلومات الإنترنت في قائمة ميزات Windows.

تعليمات لـ IIS:

  • لوحة التحكم
  • برامج
  • فتح أو إغلاق ميزات ويندوز
  • ضع علامة على خدمات معلومات الإنترنت
  • إعادة تشغيل الاستوديو البصري

إذا كنت تستخدم IIS Express:

افتح "إضافة/إزالة البرامج" من لوحة التحكم القديمة وقم بإجراء إصلاح على IIS Express أو قد تشغل لوحة التحكم - >> البرامج - >> البرامج والميزات - >> تشغيل ميزات Windows أو إيقاف تشغيلها - >> خدمات معلومات الإنترنت وتحقق من مجلد خدمات معلومات الإنترنت الأصل.

حصلت على هذه الإجابة هنا: كانت الوسيطة المحددة خارج نطاق القيم الصالحة. اسم المعلمة: site

0
Josh Siegl

لقد فعلت الشيء نظيفة وإعادة بناء. هذا لم ينجح (عادة ما يعمل). الآن ، أتصل بـ w3wp قبل الاتصال عبر الخدمة ، ثم اسمح لها بالاتصال بالخدمة مرة واحدة ، وضرب نقطة توقف أخرى ، ثم أقوم بتغيير نقطة التنفيذ بحيث يتم تشغيل نفس الخط (استدعاء الخدمة) مرة أخرى ، ثم فعلاً توقف عند نقطة توقف داخل طريقة الخدمة.

0
Gary

كنت أستخدم IE8 وأحاول إجراء تغييرات على بعض ملفات JavaScript. على الرغم من أنه تم تنفيذ التعليمات البرمجية ، فإنها لن تتوقف عند نقاط التوقف وكنت أتلقى نفس الرسالة على نقاط التوقف. الترقية إلى IE11 إصلاح المشكلة بالنسبة لي.

0
Brad Germain

يحتوي المشروع الرئيسي على كل من مرجع المشروع ومرجع الملف إلى نفس المشروع.

في حالتي ، كان للمشروع الرئيسي مرجعين أحدهما كان مرجعًا للمشروع ومرجعًا آخر للملف ، إلى dll الذي تم إنشاؤه بواسطة نفس المشروع.

وبالتالي ، لم يتم نسخ ملف pdb إلى مجلد سلة المشروع الرئيسي ، مما أدى إلى عدم توفر الرموز.

0
Abhijeet Nagre

واجه المشكلة عند محاولة تصحيح تطبيق silverlight في مشروع sharepoint. ضمن علامة تبويب نقطة المشاركة لخصائص المشروع ، يتعين عليك تمكين تصحيح أخطاء تطبيقات Silverlight بشكل صريح. آخر تحصل هذا الخطأ.

0
dgorissen

هناك العديد من الإجابات مع العديد من الحلول المختلفة لإصلاح هذه المشكلة.

حل آخر هو التأكد من أن الشفرة الخاصة بك قابلة للوصول. فمثلا:

أي رمز يتم إضافته بعد إرجاع في دالة. تؤدي إضافة GOTO إلى تخطي الشفرة التي تحتوي على نقطة توقف بشكل فعال.

أنا لا أقول أن هذه طبيعية ولكنها تسبب أيضا.

0
Nathan

ظهرت طريقة جديدة لحل هذه المشكلة اعتبارًا من Visual Studio 2017 15.3.1 حتى 15.3.5. إذا كنت تستخدم EditorConfig ، فإن خيار مجموعة الأحرف = utf8 يسبب هذه الأعراض. قام فريق VS بإعادة إنتاج هذا و يقول أنهم يعملون عليه .

لذلك أحد الحلول هو التعليق على charset = utf8 line في ملف .editorconfig.

الحالة الآن "إصدار ثابت - معلق" اعتبارًا من 9 أكتوبر 2017.

(شكرًا لجون هاتون ، "لن يتم الوصول إلى نقطة الإيقاف هذه حاليًا. الكود المصدري مختلف عن الإصدار الأصلي." ماذا يعني هذا؟

0
JohnT

No meu caso dei um F11 na chamada do método، forçando entrar no método onde o BP com problemsma estava، sendo assim، o break point foi recuperado.

في حالتي ، أعطيت F11 في استدعاء الأسلوب ، مما اضطر إلى الدخول إلى الطريقة التي كانت المشكلة BP ، لذلك تم استرداد نقطة الانهيار.

0
Melqui Franco

حل آخر بالنسبة لي كان بعد إنشاء المشروع الذي كان غير قادر على اقتحام مجلد سلة المشروع الرئيسي.

0
Josh

عند تصحيح أخطاء تجميع عن طريق بدء تطبيق خارجي هناك بعض الاعتبارات الإضافية:

  • قد يقوم التطبيق الخارجي بتحميل نسخ التجميع الخاصة به (DLL) من ملف البيان. (على سبيل المثال ، ملف appname.exe.manifest) إذا كان الأمر كذلك ، فأنت بحاجة إلى تعطيل هذا ربما عن طريق تغيير البيان يدويًا.

  • قد يحاول التطبيق الخارجي فقط التحميل من DLL في مجلده الخاص ، حتى بدون بيان. سيكون لديك لإزالة/إعادة تسمية هذه.

مع اتخاذ هذه الخطوات ، يجب تحميل إصدار التجميع الذي يعمل في المصحح بشكل صحيح ويمكن تصحيحه بشكل طبيعي.

0
DaveInCaz

بعد تجربة مجموعة من هذه الأشياء ، كان الشيء الذي نجح في النهاية بالنسبة لي هو:

في Debug > Options > General ، قم بإلغاء تحديد Enable Edit and Continue.

0
melicent

تم إهمال سبب Telerik OpenAccess ORM. تثبيت الإصدار الجديد ثم يعمل. يجب تحميل وتثبيت. تحديث NuGet فقط لم ينجح. ذكره شخص آخر أيضًا

0
Kevin .NET

كان أيضا هذه المشكلة مع مشروع ولدت كيو تي. اتضح أنني نسيت تعيين متغير بيئة والذي يحدد الخصائص/عام/دليل الإخراج. واحد تافه ، وواحد للنظر في المقام الأول ، ولكن في بعض الأحيان نفتقد ما هو واضح.

0
charlie

تجدر الإشارة أيضًا إلى أن المشكلة تحدث في بعض الحالات ، لأن المشروع الذي تريد تصحيحه هو خدمة خارجية. في هذه الحالة ، عليك إرفاق مصحح الأخطاء بعملية التشغيل.

0
DiSaSteR

لم تنجح أي من الأفكار هنا بالنسبة لي ولكني أشكر الجميع على جهودهم - في حالتي كان أحد تطبيقات Windows التي أشارت إلى مشروع مكتبة فئة - يمكنني تصحيح تطبيق windows ولكن ليس مكتبة الفصل. تم إنشاء ملفات pdb. ومع ذلك ، وجدت أنه إذا قمت بالتصحيح عند الاتصال بمكتبة الفصل ، فيمكنني الدخول إلى المكتبة.

0
mattpm

في بعض الأحيان IIS سيتم الاحتفاظ بالملفات لسبب ما. اضطررت إلى حذف الموقع الإلكتروني وإنشائه من جديد وتلاشت المشكلة

0
Kai CriticallyAcclaimed Cooper

ربما لا ينبغي أن يكون لديك AutoPostBack.
إذا لم يقم الرمز الخاص بك بإنشاء PostBack ، فيمكنك الحصول على هذا الخطأ.
مع تحياتي.

0
mrbengi

Project> خصائص> C++> عام> تنسيق معلومات التصحيح - قاعدة بيانات البرنامج (/ Zi)

لقد راجعت رابط> تصحيح وكنت بالفعل إنشاء معلومات التصحيح. عندما قمت بتشغيل التطبيق ، تم تحميل الرموز ( تصحيح> Windows> الوحدات النمطية ). تعيين تنسيق معلومات التصحيح إصلاحه بالنسبة لي. أمل أن هذا يساعد شخصاما!

0
RomanRobot

أدرك أن هذا موضوع قديم ، ولكن لمصلحة الآخرين هنا هو ما حدث لي. كانت المشكلة في كيفية تطبيق السمة Designer. أنا خلقت فئة مصمم. تجاوز المصمم PrefilterProperties لجعل خصائص Anchor و AutoScroll و AutoSize للقراءة فقط.

[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")]
public class j2aScrollableContainerDesigner : ParentControlDesigner

لقد قمت بإنشاء فصل وأضفت المصمم إليه. هذه هي الطريقة القياسية لإرفاق سمة مصمم بفصل وتوجد في العديد من أمثلة MSDN. من الواضح أن المصمم لم يتم استخدامه لأنه عندما وضعت سيطرتي على سطح تصميم النموذج ، لم تتم قراءة أي من الخصائص المذكورة أعلاه فقط في شبكة العقارات.

[Designer(typeof(j2aScrollableContainerDesigner), typeof(ParentControlDesigner))]
public partial class j2aScrollableContainer : UserControl

بدافع اليأس ، قمت بتغيير إعلان سمة "المصمم" في صفي إلى التوقيع التالي وتم تسمية المصمم الآن. ليس لدي أي تفسير لماذا يعمل أحدهما والآخر لا يعمل. إذا رجعت إلى إعلان سمة مصمم أعلاه ، فسيتم إنهاء المصمم من العمل مرة أخرى.

[Designer(typeof(j2aScrollableContainerDesigner))]
public partial class j2aScrollableContainer : UserControl
0
j2associates

باستخدام Dependency Injection ، Autofac في حالتي ، لحلها تلقائيًا عن طريق مسح التجميعات. لم يتم حل أحد التجميعات المشار إليها.

كان الإصلاح الخاص بي هو الإشارة مباشرة إلى فئة من الجمعية لإجبار Visual Studio على تحميل التجميع. إن مجرد تجميع الجمعية كمرجع لن يتم تحميل الجمعية عند تشغيل التطبيق.

0
wonster

تحقق مما إذا كنت قد مكّنت "تمكين الكود فقط". إذا كان الجواب نعم ، فقم بتعطيله.

0
CiriousJoker

لقد فتحت ملف المشروع بطريق الخطأ في محرر نصوص وتم تفريغه. من غير المحتمل ، ولكن تحقق من ذلك إذا كنت عالقة.

0
Edza

لقد حدث هذا عند بدء تشغيل موقع ويب ASP.NET في عام 2013. يبدو أنه في حالتي يزول بمجرد بدء تشغيل مستعرض الويب بالكامل.

0
Curtis White

بعد حل آخر لبعض الحالات التي يحدث فيها هذا الخطأ: تحقق Build Action .

كان لدي هذه المشكلة في مشروع asp.net MVC3 ؛ أحد وحدات التحكم الخاصة بي لسبب غير معروف هو أنه تم تعيين Build Action على EntityDeploy على الرغم من أنه كان يجب أن يكون Compile .

0
Nenotlep

منجم مفقود بشكل رئيسي لأن لديّ مشروعين متوقفين على نفس عنوان URL الخاص بـ IISExpress ، تأكد من تحديد منفذ مختلف واضغط على CreateVirtualDirectory.

0
Cristian E.

واجهت هذه المشكلة في محاولة لتصحيح وكيل الخلفية لتطبيق WP7. كما اتضح فيما بعد ، كانت مشكلة التصحيح هذه مجرد عرض من أعراض المشكلة الحقيقية: لم يكن عامل الخلفية يعمل على الإطلاق في وضع التصحيح. كنت قد اتبعت الدليل التالي حول كيفية تطبيق وكيل الخلفية: http://msdn.Microsoft.com/en-us/library/hh202941(v=vs.92).aspx

... ولكن نسيت أن أضيف

#define DEBUG_AGENT

مما يعني أن وكيلي لم يبدأ فعليًا في وضع تصحيح الأخطاء. بمجرد إضافة هذا الخط ، فإن المشكلة التي تدور حول هذا الموضوع قد انتهت.

0
Anders

تصحيح ->Options -> عام -> علامة إلغاء علامة "Enable Just My Code"

هذا عملت لي.

0
abdallah mahmoud

نصيحة أخرى عملت بالنسبة لي.

إذا تم توقيع مشروعك/مكتبتك ، ولا حتى توقيع الموقع ، فقد لا يزال غير قابل للتصحيح. حاول تعطيل خيار التوقيع ، وتصحيحه ، ثم استعادة خيار التوقيع.

0
Vadim Berman

الخطوات التالية متشعب بالنسبة لي:

  1. انتقل إلى مجلد "bin" في مشروعك.
  2. احذف المجلد "Debug".
  3. بناء المشروع الخاص بك مرة أخرى.
  4. سيتم الحصول على المجلد Debug.

الآن يمكنك البدء في تصحيح الأخطاء مرة أخرى.

0
Karthik

لي:

  • فتح خصائص الحل
  • حدد "خصائص عامة"/"ملفات مصدر التصحيح"
  • في نافذة "عدم البحث عن هذه الملفات المصدر" ، قم بإزالة الملفات التي توجد بالتأكيد بشكل خاطئ.
0
Hot Licks

لقد قمت بتعيين نقطة توقف وحصلت على هذه الرسالة في نقطة التوقف هذه عند تنفيذ التعليمات البرمجية. ومع ذلك ، كان نقطة توقف الوصول إليها فقط لاختبار وحدة. اضطررت إلى النقر بزر الماوس الأيمن فوق اختبار الوحدة وتحديد "اختبارات وحدة التصحيح" Doh!

0
Brian Leeming

سوف يضع هذا هنا على أمل أن يساعد شخص ما.

كان لدي مشكلة الرموز المفقودة فيما يتعلق بخدمة ويب.

كان الحل المفترض هو أن مشروع الإعداد لم يتم إعداده للبناء عند إنشاء الحل ، مما يعني أنه عندما قمت بالنقر بزر الماوس الأيمن على مشروع الإعداد وتثبيت الخدمة ، ثم تم إرفاقه بالعملية ؛ تم تثبيت الخدمة القديمة نفسها بدون pdb لأنها لا تتطابق = لا توجد نقاط توقف للعمل.

كان الحل اليدوي هو النقر بزر الماوس الأيمن على مشروع الإعداد وإنشائه ، ثم التثبيت منه. ثم قمت بتغيير قائمة بناء مشروع الحل لتضمين مشروع الإعداد عندما يتم إنشاء الحل في وضع التصحيح.

0
Paul Zahra

إذا كان لديك كل من C # والرمز الأصلي (C/C++) ، فتأكد من تمكين تصحيح الأخطاء الأصلي للمشروع:
(1). انقر بزر الماوس الأيمن فوق مشروع بدء التشغيل الخاص بك في Solution Explorer
(2). حدد خصائص
(3). حدد علامة التبويب "تصحيح"
(4). تأكد من تمكين تصحيح الأخطاء في الرمز الأصلي  "Enable native code debugging" must be checked in order to be able to debug your native code

0
M.Paunov

أعتقد أن المصدر إذا كان هذا الخطأ هو ، فإن رموز التصحيح تواجه صعوبة في الوصول إلى الحل بعد البناء للإصدار.

جربت جميع الإجابات الأخرى - بشكل عام ، تجديد رموز .pdb أو التحقق من موقعها وتنظيفها وإعادة بنائها ، وضمان عدم تهيئة التكوين النشط وما إلى ذلك.

ما نجح في النهاية هو النقر بزر الماوس الأيمن على المشروع في حل Explorer> Debug> بدء مثيل جديد.

0
I Want Answers

بالنسبة لتطبيق Xamarin ، بدأ أخيرًا في تصحيح الأخطاء بعد أن قمت بمسح مجلد "التحكم بالمصادر" بالكامل ، وفعلت "الحصول على آخر" ، وأعدت بناء الحل.

0
My Stack Overfloweth

واجهت زميلتي في العمل هذه المشكلة ، واتبعت خطوات مماثلة لتلك الموجودة هنا ، ولكن الحل كان مختلفًا عن أي من هذه الحلول المقدمة.

كانت التعليمة البرمجية التي أرادت تصحيحها موجودة في مشروع تمت الإشارة إليه بواسطة المشروع الحالي ، ولم يتم تشغيله أبدًا في جلسة Visual Studio. كانت DLL قيد التشغيل من مجلد GAC ، بعد أن حذفت من أن المشروع لن يعمل على الإطلاق ، ورمي استثناء بمجرد محاولة تشغيله. كان الحل هو تضمين المشروع المشار إليه في المجلد المحلي.

من SolutionExplorer:

  1. حدد مشروع "تصحيح الأخطاء" الذي ستنفذ منه
  2. قم بتوسيع (المراجع (إن لم يكن مرئيًا ، حدد القائمة Project ، العنصر إظهار جميع الملفات)
  3. انقر بزر الماوس الأيمن على المشروع الذي يحتوي على نقطة توقف لا تعمل ، حدد خصائص
  4. تغيير قيمة نسخ محلي من خطأ إلى صحيح

حاول مرة أخري. (عملت لها!)

0
Abacus

يمكن أن يكون هذا بسبب مشروع اختبار أو مشروع ويب أو مشروع تنفيذ آخر له إشارة Nuget إلى مشروع يحمل نفس اسم الوحدة النمطية التي يتم تحميلها.

خذ مشاريع المثال التالي في حل:

  • Vendor.ABC
  • MyLib (مراجع Vendor.ABC)
  • MyProg (برنامج وحدة التحكم: الرجوع إلى MyLib فقط)
  • MyProg.Web (مشروع MVC: مراجع MyLib ومشروع حل Vendor.ABC)
  • MyLib.Test (اختبار المشروع: المراجع MyLib و Nuget package Vendor.ABC)

سيقوم كل من MyProg و MyProg.Web بتحميل رموز التصحيح. MyLib.Test لن يتم تحميل رموز التصحيح.

0
Joshcodes