كيفية حقن النص إلى تركيز المؤشر
سؤال
أقوم بتطوير تطبيق .NET Windows يحتاج إلى إدراج النص في المكان الذي يوجد فيه المؤشر. سيكون المؤشر في تطبيق مختلف ليس لدي أي سيطرة عليه. أعتقد أن نظام التشغيل يجب استخدامه هنا لتحقيق ذلك. هل يمكنك المساعدة من فضلك؟
المحلول
ضع النص الذي تريد إدراجه في الحافظة
ابحث عن مقبض النافذة:
Process[] processes = Process.GetProcessesByName("notepad");
foreach (Process p in processes)
{
IntPtr pFoundWindow = p.MainWindowHandle;
// Do something with the handle...
}
أرسل رسالة "Ctrl+V" إلى النافذة باستخدام Pinvoke ، انظر http://www.pinvoke.net/default.aspx/user32.sendmessage
نصائح أخرى
الأكثر سهولة هو استخدام Sendkeys فئة على windows.forms.
وإلا استخدم SendMessage من واجهة برمجة تطبيقات Windows لإرسال المفتاح بواسطة المفتاح (بعض المعلومات على هذا).
لا تستخدم الحافظة ، عادة لا يريد المستخدم ذلك ، ولا يتوقع ذلك.
لا تنتمي إلى StackOverflow