عرض النافذة على شاشة تسجيل الدخول باستخدام C# في نظام التشغيل Windows XP

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

سؤال

أحاول إنشاء خدمة باستخدام C# تطلق عملية يمكن عرضها على شاشة تسجيل الدخول لنظام التشغيل Windows XP.

لقد وجدت بعض التعليمات البرمجية التي تقوم بذلك في C++.رمز C++ مخصص لخدمة تقوم بإنشاء عملية أخرى مع تعيين STARTUPINFO.lpDesktop على "WinSta0\WinLogon".يتم بعد ذلك عرض العملية التي تم إنشاؤها على شاشة تسجيل الدخول إلى Windows.لا يمكنني العثور على طريقة لتحديد "سطح المكتب" لعملية جديدة في C# باستخدام فئة System.Diagnostic.Process.

هل يعرف أحد كيفية القيام بذلك باستخدام C#؟

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

المحلول

كان الحل هو استدعاء وظيفة C++ Win32 API CreateProcess من kernel32.dll من كود C#.كان هذا الموقع مفيدًا جدًا في الحصول على توقيع الوظيفة الصحيح لـ C#:

http://www.pinvoc.net/default.aspx/kernel32/CreateProcess.html

نصائح أخرى

أعتقد أنه سيتعين عليك كتابته بلغة C++، وتجميعه إلى ملف DLL ثم استدعاء DLL من التعليمات البرمجية المُدارة لديك.

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