كيف يمكنني الحصول على معرف HWND / العملية لتطبيق Word، ومضبط نافذة مقدمة

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

سؤال

أريد أن يأتي تطبيق كلماتي إلى المقدمة عند اكتمال الأتمتة.

المكافئ في Excel مستقيم للأمام - يحتوي كائن تطبيق Excel على خاصية .hwnd يمكنك استخدامها بالاقتران مع Windows API: giveacodicetagpre.

ومع ذلك لا يحتوي تطبيق Word على خاصية .hwnd.

لقد حاولت استخدام التنشيط () في هذا التسلسل: giveacodicetagpre.

ولكن هذا لا يعمل.

قد ألقي نظرة على العثور على العملية باستخدام اسم التطبيق، ولكن قد يكون هناك أكثر من نسخة واحدة من Word قيد التشغيل.

شكرا

جو

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

المحلول

You may need to iterate the processArray beyond the first. With word 2010 only one WinWord shows in the task manager no matter how many instances are open.

        System.Diagnostics.Process[] processArray =  System.Diagnostics.Process.GetProcessesByName("WinWord");
        System.Diagnostics.Process word = processArray[0];
        SetForegroundWindow(word.MainWindowHandle);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top