nombre de usuario

21/07/2005 - 04:17 por cmc | Informe spam
Hola:

Tengo un servicio windows con el cual necesito determinar el nombre de
usuario que ha iniciado sesion en windows. Estaba utilizando
environment.username , pero siempre me devuelve la cuenta de usuario con la
cual se inicio el servicio "SYSTEM". ¿Existe alguna forma de determinar el
nombre del usuario que realmente a iniciado la sesion en windows?

atte
Christian

Preguntas similare

Leer las respuestas

#1 Jorge Serrano [MVP VB]
21/07/2005 - 11:11 | Informe spam
Hola Christian,

¿has probado con System.Security.Principal.WindowsIdentity.GetCurrent().Name?.

Esto te dará el nombre de la máquina y el usuario.

P ej.: MUNDO\Christian

Jorge Serrano Pérez
Microsoft MVP VB.NET
PortalVB.com
http://www.portalvb.com/
Weblog de Jorge Serrano
http://weblogs.golemproject.com/jorge/


"" wrote:

Hola:

Tengo un servicio windows con el cual necesito determinar el nombre de
usuario que ha iniciado sesion en windows. Estaba utilizando
environment.username , pero siempre me devuelve la cuenta de usuario con la
cual se inicio el servicio "SYSTEM". ¿Existe alguna forma de determinar el
nombre del usuario que realmente a iniciado la sesion en windows?

atte
Christian



Respuesta Responder a este mensaje
#2 cmc
22/07/2005 - 01:12 | Informe spam
Voy a intentarlo ahora

"Jorge Serrano [MVP VB]"
escribió
en el mensaje news:
Hola Christian,

¿has probado con


System.Security.Principal.WindowsIdentity.GetCurrent().Name?.

Esto te dará el nombre de la máquina y el usuario.

P ej.: MUNDO\Christian

Jorge Serrano Pérez
Microsoft MVP VB.NET
PortalVB.com
http://www.portalvb.com/
Weblog de Jorge Serrano
http://weblogs.golemproject.com/jorge/


"" wrote:

> Hola:
>
> Tengo un servicio windows con el cual necesito determinar el nombre de
> usuario que ha iniciado sesion en windows. Estaba utilizando
> environment.username , pero siempre me devuelve la cuenta de usuario con


la
> cual se inicio el servicio "SYSTEM". ¿Existe alguna forma de determinar


el
> nombre del usuario que realmente a iniciado la sesion en windows?
>
> atte
> Christian
>
>
>
Respuesta Responder a este mensaje
#3 cmc
22/07/2005 - 06:02 | Informe spam
No me funciona. me sigue mostrando la cuenta System

"" escribió en el mensaje
news:%
Voy a intentarlo ahora

"Jorge Serrano [MVP VB]"



escribió
en el mensaje news:
> Hola Christian,
>
> ¿has probado con
System.Security.Principal.WindowsIdentity.GetCurrent().Name?.
>
> Esto te dará el nombre de la máquina y el usuario.
>
> P ej.: MUNDO\Christian
>
> Jorge Serrano Pérez
> Microsoft MVP VB.NET
> PortalVB.com
> http://www.portalvb.com/
> Weblog de Jorge Serrano
> http://weblogs.golemproject.com/jorge/
>
>
> "" wrote:
>
> > Hola:
> >
> > Tengo un servicio windows con el cual necesito determinar el nombre de
> > usuario que ha iniciado sesion en windows. Estaba utilizando
> > environment.username , pero siempre me devuelve la cuenta de usuario


con
la
> > cual se inicio el servicio "SYSTEM". ¿Existe alguna forma de


determinar
el
> > nombre del usuario que realmente a iniciado la sesion en windows?
> >
> > atte
> > Christian
> >
> >
> >


Respuesta Responder a este mensaje
#4 Eduardo A. Morcillo [MS MVP VB]
22/07/2005 - 07:54 | Informe spam
¿Te sirve WMI?

Dim cls As New ManagementClass("oot\cimv2:Win32_ComputerSystem")
Dim col As ManagementObjectCollection
Dim compsys(0) As ManagementObject
Dim user As String

Try
col = cls.GetInstances
col.CopyTo(compsys, 0)
user = compsys(0).GetPropertyValue("username").ToString
Finally
If Not compsys(0) Is Nothing Then compsys(0).Dispose()
If Not col Is Nothing Then col.Dispose()
If Not cls Is Nothing Then cls.Dispose()
End Try

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
Respuesta Responder a este mensaje
#5 cmc
27/07/2005 - 19:17 | Informe spam
Te pasaste ahora si funciona.
gracias a todos.


"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:%
¿Te sirve WMI?

Dim cls As New ManagementClass("oot\cimv2:Win32_ComputerSystem")
Dim col As ManagementObjectCollection
Dim compsys(0) As ManagementObject
Dim user As String

Try
col = cls.GetInstances
col.CopyTo(compsys, 0)
user = compsys(0).GetPropertyValue("username").ToString
Finally
If Not compsys(0) Is Nothing Then compsys(0).Dispose()
If Not col Is Nothing Then col.Dispose()
If Not cls Is Nothing Then cls.Dispose()
End Try

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida