簡體   English   中英

在Windows XP中使用C#在登錄屏幕上顯示窗口

[英]Displaying Window on Logon Screen Using C# in Windows XP

我正在嘗試使用C#創建一個服務,該服務啟動一個可以在Windows XP“登錄”屏幕上顯示的進程。

我發現在C ++中正在執行此操作的一些代碼。 C ++代碼用於服務,該服務使用STARTUPINFO.lpDesktop設置為“ WinSta0 \\ WinLogon”來創建另一個進程。 然后,創建的過程將顯示在Windows登錄屏幕上。 我似乎找不到使用System.Diagnostic.Process類在C#中指定新進程的“桌面”的方法。

有誰知道如何使用C#做到這一點?

解決方案是從C#代碼的kernel32.dll調用C ++ Win32 API函數CreateProcess。 該站點對於獲取C#的正確函數簽名非常有幫助:

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

我認為您必須用C ++編寫它,將其編譯為DLL,然后從托管代碼中調用DLL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM