رفض نموذج PowerShell الذي يتم التحكم فيه بمهمة بدء العمل

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

سؤال

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

هل يعرف أحد كيف يمكنني استبعاد نافذة Waitform $ عند انتهت المهمة التي استمرت طويلا؟

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

المحلول

يمكنك محاولة تشغيل مربع حوار نماذج Windows على الخيط الرئيسي والقيام بالعمل الفعلي في مهمة الخلفية: giveacodicetagpre.

نصائح أخرى

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

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

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