Foros del Web » Programación para mayores de 30 ;) » .NET »

Iniciar aplicacion antes del logeo de windows

Estas en el tema de Iniciar aplicacion antes del logeo de windows en el foro de .NET en Foros del Web. Hola buenos días. Estoy tratando de realizar una aplicación con sensores en C#y con visual studio 2010 como IDE. Mi programa debería de poder arrancarse ...
  #1 (permalink)  
Antiguo 26/07/2011, 01:21
 
Fecha de Ingreso: julio-2011
Mensajes: 7
Antigüedad: 12 años, 9 meses
Puntos: 0
Iniciar aplicacion antes del logeo de windows

Hola buenos días. Estoy tratando de realizar una aplicación con sensores en C#y con visual studio 2010 como IDE.

Mi programa debería de poder arrancarse en segundo plano cuando la pantalla de logeo aparece y así poder iniciar sesión con una simple pulsación de tecla... el problema es que no consigo que mi programa se inicie antes...

Hasta ahora he conseguido registrarlo en local machine y hacer que se inicie tras el logeo ... pero necesito q se realice antes.

Espero puedan echarme una mano con este problema.

Un saludo.
  #2 (permalink)  
Antiguo 26/07/2011, 07:53
Avatar de xjuanch0x  
Fecha de Ingreso: septiembre-2009
Mensajes: 125
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Iniciar aplicacion antes del logeo de windows

Cita:
Iniciado por bazocus Ver Mensaje
Hola buenos días. Estoy tratando de realizar una aplicación con sensores en C#y con visual studio 2010 como IDE.

Mi programa debería de poder arrancarse en segundo plano cuando la pantalla de logeo aparece y así poder iniciar sesión con una simple pulsación de tecla... el problema es que no consigo que mi programa se inicie antes...

Hasta ahora he conseguido registrarlo en local machine y hacer que se inicie tras el logeo ... pero necesito q se realice antes.

Espero puedan echarme una mano con este problema.

Un saludo.
No entiendo el porque de esto , si ya inicia con el logeo, luego por seguridad no puedes arrancar esa aplicacion antes del logeo (en Windows 7 y Vista).
Ademas si ya arranca despues del logeo ya tu aplicacion esta activa para que el usuario comienze a trabajar.
__________________
Juan David Torres Vasquez
[email protected]
Microsoft Certified Technology Specialist (MCTS)
DCE Platinum en Visual C# y VB.NET
  #3 (permalink)  
Antiguo 27/07/2011, 00:27
 
Fecha de Ingreso: julio-2011
Mensajes: 7
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Iniciar aplicacion antes del logeo de windows

Pues precisamente ahí está el asunto... el programa que debo realizar debe hacer lo siguiente:

1- Un usuario mete su user y password inicialmente en el programa.
2- Cuando el user esté en su sesión, el programa estará chequeando su proximidad al pc durante todo el tiempo.
3- Si otro user (ya registrado), se acerca al sistema... o él mismo se aleja... se desloguea del sistema.
4- Cuando otro user vuelva a aproximarse se inicia sesión del correspondiente...

Es por esto x lo que debo hacer que se quede a la escucha en segundo plano en el cuadro de diálogo de ventanas de login. Todo esto está realizado con sensores.

un saludo
  #4 (permalink)  
Antiguo 27/07/2011, 01:13
 
Fecha de Ingreso: julio-2011
Mensajes: 7
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Iniciar aplicacion antes del logeo de windows

bufff creo que estoy "jodido"

He recibido una contestación en uno de los foros de microsoft, os cito el mensaje.


Cita:
Juan Manuel Servera

Hola!

Si lo que quieres es interactuar con el login el tema es algo más complicado que crear un servicio, pues desde el servicio (a no ser que seas un buen hacker) no podrás forzar pulsaciones de teclas en la pantalla de login.

Esto antiguamente se hacía sustituyendo o extendiendo la librería GINA, que permitía cambiar la pantalla de login del windows XP, así se puede cambiar la pantalla de inicio para que permita realizar el login mediante una smartcard o algún sistema biométrico (lo que parece que estás desarrollando tu).

A partir de Windows Vista ese sistema ya no funciona, se cambió el modelo de programación y la estructura que lo soporta. Aquí tienes un esquema de como es el sistema antes y después de Vista: http://technet.microsoft.com/en-us/library/ff404303(WS.10).aspx

En el MSDN Magazine de hace unos años tienes explicado cómo se hace en C++: http://msdn.microsoft.com/en-us/magazine/cc163489.aspx

Si pretendes hacerlo en C# te vas a encontrar con muchos problemas, no se ni si es realmente posible, pues tienes que implementar un interfaz COM (ICredentialProvider) y para eso tendrás siempre que utilizar algo de C++ para por lo menos publicar el interfaz.

Espero no haberte desanimado :D, si es lo que pienso es todo un reto!

Suerte,

-Juanma
parece que la hazaña es un tanto surrealista.... veré que puedo hacer.
  #5 (permalink)  
Antiguo 05/08/2011, 04:34
 
Fecha de Ingreso: julio-2011
Mensajes: 7
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Iniciar aplicacion antes del logeo de windows

Hola, buenas tardes.

He tenido que cambiar mi SO de w7 a xp... debido a que en w7 y en vista se había modificado el sistema de pantalla de login GINA... y no permitían iniciar practicamente nada en el arranque... capando pulsaciones de teclas y demás eventos...

Tras pasarme al xp.. he conseguido que mi aplicación salte en la selección de usuarios... ahora bien... estoy investigando una función que mediante c# le pase el user y pass, pudiendo así acceder a la cuenta que desee sin tener que meter manualmente los datos...

Por ejemplo pulsar una tecla y... zas... entras a la cuenta
pulsas otra distinta y entramos a la que tengamos programada.

Me han comentado sobre la función logonuser pero no consigo que inicie la cuenta.


string sResult = null;

bool bImpersonated = LogonUser("miguel", ".", "miguel",
LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, ref pExistingTokenHandle);
// did impersonation fail?
if (false == bImpersonated)
{
int nErrorCode = Marshal.GetLastWin32Error();
sResult = "LogonUser() failed with error code: " + nErrorCode + "\r\n";

// show the reason why LogonUser failed
MessageBox.Show(this, sResult, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}


A ver si puedes echarme un cable. Un saludo

Etiquetas: logeo, visual, windows, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:59.