winlogon

Displaying Window on Logon Screen Using C# in Windows XP

a 夏天 提交于 2019-11-30 10:37:36
I am trying to create a service with C# that launches a process that can be displayed on the Windows XP Logon screen. I found some code that is doing this in C++. The C++ code is for a service that creates another process with STARTUPINFO.lpDesktop set to "WinSta0\WinLogon". The created process is then displayed to the Windows Logon Screen. I can't seem to find a way to specify the 'desktop' of a new process in C# using System.Diagnostic.Process class. Does anyone know how to do this with C#? The solution was to call the C++ Win32 API function CreateProcess from kernel32.dll from the C# code.

How to display UI on logon screen in Windows 7

会有一股神秘感。 提交于 2019-11-30 04:33:51
问题 I would like to display an UI that interacts with user on pre-logon screen (the screen where users usually enter their username/password) I read that the architecture of Winlogon packages has changed and will not help me in Windows 7. I was referred to use WTS functions, however I am still not clear on how to use them or which ones. I already created a Service which brings up a notepad.exe (for now), however I need to trigger this Service when user is in pre-logon screen. I am not sure what

Create an interactive logon session

元气小坏坏 提交于 2019-11-29 19:04:47
问题 I'm trying to create a utility similar to Microsoft's abandoned Super Fast User Switcher (download), which allows fast user switching without going through the Welcome screen. I have a working implementation using the undocumented WinStationConnectW API (along with WTSEnumerateSessions ), but it can only switch to a user who is already logged in. How can I create a login session so that it can switch to a user who is not logged in? I only need to support XP, although it'd be nice to work on

Displaying Window on Logon Screen Using C# in Windows XP

和自甴很熟 提交于 2019-11-29 15:24:15
问题 I am trying to create a service with C# that launches a process that can be displayed on the Windows XP Logon screen. I found some code that is doing this in C++. The C++ code is for a service that creates another process with STARTUPINFO.lpDesktop set to "WinSta0\WinLogon". The created process is then displayed to the Windows Logon Screen. I can't seem to find a way to specify the 'desktop' of a new process in C# using System.Diagnostic.Process class. Does anyone know how to do this with C#?

Take screenshot of desktop when Windows is locked (Win+L)

試著忘記壹切 提交于 2019-11-29 11:31:45
I want to take a screenshot of desktop while Windows is locked (with Win+L). Standard methods make a black screen, with code of pixel: COLORREF color = GetPixel(hdc, x, y); equal -1. Neither a user mode program nor a service could capture a useful image. Any ideas? GetPixel and BitBlt won't work when the desktop isn't physically displayed on the monitor. You may have some luck capturing individual windows with PrintWindow . However, not all applications respond to PrintWindow calls the same way, so you may see glitches and/or blackness. You'll also need to capture each window individually. 来源:

Creating a process in a non-zero session from a service in windows-2008-server?

感情迁移 提交于 2019-11-29 08:34:15
I was wondering if there is a simple way for a service to create a process in user session? My service is running as a user(administrator) account and not as a LocalSystem acount, therefore i can't use the WTSQueryUserToken function. i have tried calling OpenProcessToken(GetCurrentProcess,TOKEN_ALL_ACCESS,TokenHandle); but when i use this token to run CreateProcessAsUser(TokenHandle,.....) my process is still running in session 0. how can i resolve this issue? I'm using an Ole automation so i don't really care on which session the process will be running on, as long it is not the session 0 -

How to switch a process between default desktop and Winlogon desktop?

烂漫一生 提交于 2019-11-28 13:27:25
I am writing a remote desktop application like TeamViewer in C++ on Windows 7 (x64) and Windows 8 (x64). 1. What made me stuck I have implemented the mouse input and keyboard input by using SendInput(). I found SendInput() worked perfectly when the process ran under winsta0\desktop . But after the user locked the computer or the screensaver launched, it didn’t work. If I run the process under winsta0\winlogon , SendInput() doesn’t work under winsta0\default . 2. What I have tried I have tried using SetThreadDesktop() to switch the process from winsta0\desktop to winsta0\winlogon , but I got

Creating a process in a non-zero session from a service in windows-2008-server?

|▌冷眼眸甩不掉的悲伤 提交于 2019-11-28 02:01:45
问题 I was wondering if there is a simple way for a service to create a process in user session? My service is running as a user(administrator) account and not as a LocalSystem acount, therefore i can't use the WTSQueryUserToken function. i have tried calling OpenProcessToken(GetCurrentProcess,TOKEN_ALL_ACCESS,TokenHandle); but when i use this token to run CreateProcessAsUser(TokenHandle,.....) my process is still running in session 0. how can i resolve this issue? I'm using an Ole automation so i