Crear sesión de Windows mediante programación desde la consola o el servicio de Windows

¿Cómo puedo iniciar sesión programáticamente en Windows para crear una sesión de inicio de sesión de Windows? Necesito una forma que funcione desde una aplicación WinForms, desde una aplicación de consola y (lo más importante) desde un servicio de Windows.

Otro requisito es que necesito que funcione en un sistema local en el que se ejecuta el programa / servicio y también para sistemas remotos.

Si hay una manera de hacer esto usando pInvoke / Win32 API, también estoy abierto a eso.

Encontré estas preguntas / respuestas similares en mi investigación:

Crear y ejecutar programáticamente y sesión RDP (sin interfaz gráfica de usuario)

La respuesta aquí dice que es posible pero y proporciona un enlace, pero el código de muestra del enlace no funciona

Cree una sesión de Windows desde un servicio a través de la API Win32

Sin solución a la pregunta formulada

Crear sesión de Windows mediante programación

Sin solución, pero el OP mencionó en un comentario quehttp: //freerdp.co trabajó para él.

Respuestas a la pregunta(1)

Su respuesta a la pregunta