Wednesday 6 December 2017

عملية ويتوفوريكسيت لا تعمل


نيت System. Diagnostics. Process فئة 8211 الجزء 1 process. WaitForExit و. حدث حدث aren8217t العمل اعتقدت أنني قد وجدت هذا هو الحال ولكن كان خطأي، وربما نفس الشيء بالنسبة لك أيضا. سوف أذهب إلى ما وجدت أثناء استكشاف وحل هذه المسألة. الجواب القصير: إذا كنت تقوم بإعادة توجيه ستانداردوتبوت أندور ستاندارديرور، استخدم أفضل أساليب غير المتزامنة process. BeginErrorReadLine () و. BeginOutputReadLine () قبل استدعاء. WaitForExit () والتقاط الإخراج عن طريق ربط الأحداث process. ErrorDataReceived و. OutputDataReceived. الجواب الطويل يبدأ معي باستخدام فيسوال ستوديو divfmerge. exe في المجلد Common7IDE لمقارنة الملفات النصية في وضع دفعة. أنا إدخال اختبار الانحدار في عملية دفعة بدأت دفعة. كنت بحاجة إلى أداة من شأنها أن تبصق ملف اختلاف النص عند مقارنة ملفين (وليس ملف نتيجة الدمج). وينميرج أند بيوند مقارنة هي تحت تصرفي ولكن لا يبدو أن تنتج أي شيء ولكن دمج النتائج (التي عادة ما أريد، ولكن ليس هذا الوقت). سوف بلدي الانحدار إطار استدعاء devfmerge. exe وتخزين ملف ديف الناتجة للمراجعة في وقت لاحق. أنا ترميز بلدي بروسيسستارتينفو اتبع ذلك مع بدء العملية والانتظار لإنهاء العملية. وانتظر الانتظار الانتظار. هذا حصلت لي قراءة مسن وحفر أعمق في استخدام فئة العملية. لقد اكتشفت بعض المعلومات المثيرة للاهتمام، وربما كان ينبغي أن يكون واضحا. أولا، وجدت أنه في بعض الأحيان تشغيل بلدي ديفمرج عملية الطفل مع الحجج المختلفة عملت، وأحيانا لم يكن، مما يجعل هذه المسألة غامضة. ثانيا، لقد وجدت أنها عملت بشكل جيد عندما فعلت 8217t إخراج الإخراج. لذلك، من الواضح أنني كنت في عداد المفقودين شيئا. كنت في حاجة لقراءة في الواقع وثائق أبي العملية، وبالتالي وجدت هذه الكتلة: مسن المادة بعد العثور على وقراءة تلك المادة مسن فهمت. سوف نموذج التعليمات البرمجية أعلاه تعمل إذا كان ستدوت أو ستدرور العازلة لا تملأ. ومع ذلك ما كنت أرى كان المخزن المؤقت ستدوت ملء، تم حظر عملية الطفل على الكتابة ستدوتسدورور المقبل، كانت العملية الأم تنتظر بلا حدود على عملية الطفل للخروج قبل القراءة من المخزن المؤقت ستدوتسدورور. بالنسبة لي يبدو أن طريقة ويتفوريكسيت أندور الخروج حدث مكسورة لا اصطياد عملية الطفل الخروج، ولكن كان بلدي التعليمات البرمجية التي تم كسرها. قمت بتعديل التعليمات البرمجية لاستخدام أساليب غير متزامنة وفجأة ذهبت مشاكلي بعيدا. لا مزيد من الحجب، وعمل كل شيء كما هو متوقع. اعتدت سترينغبويلدرز كما مخازن لعقد البيانات الواردة في الأحداث. في الجزء 2، واجهت مشكلة مع عمليات ستدوتسدورور ريادلين عمليات التنفيذ حول الاحتياجات الخاصة بي، وأنا ذاهب إلى كيفية حل هذه المشكلة. بروكيس. وايتفوريكسيت () لا يعمل رسس process. WaitForExit () لا يعمل يونيو 01، 2004 07: 30 بيإم 124 مكرين 124 لينك لدي نموذج أسب الذي يبدأ بطريقة غير المتزامنة التي تدور من خلال قائمة من الملفات القابلة للتنفيذ ويبدأ تشغيلها في زر انقر فوق استدعاء الأسلوب غير المتزامن بلدي الأسلوب لديه حلقة التالية لسبب ما الانتظار للخروج لا يبدو أن تفعل أي شيء. هذه الحلقة لا تنتظر على الإطلاق. إذا كان لدي 4 ملفات للتنفيذ ملفات كوت. فبسوت، فإنها جميعا تبدأ كثيرا في نفس الوقت. أي أفكار حول لماذا لا يبدو أن العمل سيكون مفيدا. حاولت تشغيل هذا من خلال خدمة ويندوز وكان لديه نفس المشكلة. يجب أن أفتقد شيئا.

No comments:

Post a Comment