كيف يمكنني تخصيص "٪ S واجه مشكلة ويجب إغلاق"؟

StackOverflow https://stackoverflow.com/questions/1885064

  •  19-09-2019
  •  | 
  •  

سؤال

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

واجه Foo.exe مشكلة ويجب إغلاقه.

أنا أستقلت إلى تطبيقاتي تفجيرها من وقت لآخر (فقط أثناء التطوير بالطبع)، ولكن عندما يفعلون، لا أريد أن أرى "foo.exe" هنا. أريد أن أرى اسم "ودود" مثل "foobrowser ™".

لقد بحثت عن وثائق MSDN عالية ومنخفضة للحصول على وسيلة لتجاوز هذه السلسلة وعدم العثور عليها. وأجريت الكثير من التجارب لمعرفة ما إذا كان بإمكاني التعرض عبر الآلية دون أي حظ. ومع ذلك، عندما أبحث على الويب عن "واجه مشكلة ويحتاج إلى إغلاق"، أرى الكثير من الأشخاص الذين يناقشون المثيلات التي سبقها اسم ودية، وأشك في أنهم جميعا استبدال التنبيه بأكمله. :-)

أحتاج إلى هذا للعمل من أجل تطبيقات Win32 الأصلية؛ .NET ليس خيارا. تتضمن مجموعة الأمثلة التي أراها مناقشتها على الويب Microsoft Internet Explorer (تطبيق أصلي) و Microsoft Works (الذي افترض أنه لا يزال تطبيقا الأصلي على الرغم من أنه كان أربعة أون منذ رأيته).

ما هي المصافحة السرية؟

هل كانت مفيدة؟

المحلول

لست متأكدا تماما من إصدار Windows الذي تستهدفه، ولكن الأحدث سيحاول استخدام اسم المنتج الودي عند التعطل.

تأكد من إضافة مورد إصدار إلى قابل للتنفيذ، وتوفر اسم منتج ودود واسم ملف، في سلسلة FileDescription.

هذه صفحة على MSDN يوفر المزيد من المعلومات.

نصائح أخرى

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

مجرد وجهة نظر مختلفة :)

لماذا لا تعيد تسمية تطبيقك فقط FooBrowser™.exe?

همم. لا أعرف إذا كان الأمر بالتأكيد، فماذا سيفعل ذلك، لكن الأمر يستحق المحاولة. حاول النظر إلى setcurrentprocessexplictappusermodelid.

هل يمكن أن لا تنشئ مورد سلسلة بسيط يحتوي على الاسم الودي لتطبيقك واستخدام ذلك عند تنسيق الرسالة؟

ما رأيك؟

نأمل أن يساعد هذا، مع أطيب التحيات، توم.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top