Capturar o nome do usuário do windows em clipper

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

ddnardi
Usuário Nível 1
Usuário Nível 1
Mensagens: 25
Registrado em: 13 Jul 2004 15:28
Localização: Limeira
Contato:

Capturar o nome do usuário do windows em clipper

Mensagem por ddnardi »

Olá, gostaria de saber como capturar o nome do usuário que logou no windows em clipper.
Alguém pode me ajudar ??

Obrigado
TerraSoftware
Usuário Nível 3
Usuário Nível 3
Mensagens: 353
Registrado em: 28 Jul 2004 13:14
Localização: Cianorte-PR
Contato:

Mensagem por TerraSoftware »

No Windows XP existe uma variavel de ambiente chamada:
USERNAME
Capture o valor dela através da seguinte funcao:
nomeusuario:=getenv("USERNAME")
www.sisterra.com.br
xHarbour 1.0.0 - Bcc 6.3 - Gtwvw/Hwgui
DbfCdx/MySql
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

E se for para WINDOWS 98 ou 95 ? Tem outro recurso ?
Avatar do usuário
Augusto
Usuário Nível 3
Usuário Nível 3
Mensagens: 473
Registrado em: 26 Ago 2003 17:50
Localização: Maricá/RJ
Contato:

Mensagem por Augusto »

Parceiro... NOVELL, AMPLUS, LANTASTIC, W3.1, 95, 98, 98se, ME, XP, NT, VISTA etc...

usuario = NETNAME()

Nada mais do que isso....

Código: Selecionar todos

if empty(netname())=.f.
    usuario=alltrim(netname())
else
    usuario="usuario"
endif
:xau Fui...
goulart@provsul.com.br

Faça da PROVSUL o seu Provedor de Serviços WEB
Visite: www.PROVSUL.com.br
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Caro Augusto,

Não funcionou em Win98. Fiz o LOGOFF e entrei como se fosse outro usuário. A função me devolveu o nome da estação e não que está logado.

Acheu muito bom para ser verdade. Eu ja usava esta função mas para determinar o nome do computador (deve ser o nome em que está registrado na (Identificação, Nome do computador) nas propriedades de rede.

Mas o interessante seria saber que está LOGADO. As vezes o usuário dá um ESC e não entra com a senha. Mas para a rede poder se conectar, utilizando NET USE, precisa que esteja LOGADO com nome e senha.

Espero que haja solução para os WINDOWS 98 e 95. Porque nos WINDOWS padrão NT, ja tem a variavel ambiente USERNAME como disse o colega anteriormente.
Avatar do usuário
Augusto
Usuário Nível 3
Usuário Nível 3
Mensagens: 473
Registrado em: 26 Ago 2003 17:50
Localização: Maricá/RJ
Contato:

Mensagem por Augusto »

Realmente Pablo... Vc tem toda razão...

A função NETNAME() retorna o nome da "máquina" e não o do usuário logado...

Por outro lado, nos sistemas em que necessito saber qual "usuário" está usando o sistema, solicito USUÁRIO e SENHA no próprio sistema, despresando qualquer variável de ambiente, até prq é mais seguro.

De qqr forma... valeu pela intervenção...
:xau Fui...
goulart@provsul.com.br

Faça da PROVSUL o seu Provedor de Serviços WEB
Visite: www.PROVSUL.com.br
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Augusto escreveu:Por outro lado, nos sistemas em que necessito saber qual "usuário" está usando o sistema, solicito USUÁRIO e SENHA no próprio sistema, despresando qualquer variável de ambiente, até prq é mais seguro.
Sim concordo contigo quando é para identificar o usuário na sua aplicação. Porém quando se trata de você entrar no sistema que é uma estação numa rede e o usuário não está logado, precisa-se rodar uma rotina para conectar-se ao servidor. Para isso utilizo o NET USE para FORÇAR aquela estação estar conectada ao servidor. Mas já viu... usuário as vezes dá um ESC quando liga a máquina ou até mesmo aquela estação pode perder a conexão simplesmente. É por isso a necessidade em saber o nome do usuário para que desta forma você saiba nos (WINDOWS 98 e 95, que não exigem o LOGON para entrar no WINDOWS) se foi feito o LOGON ou não.

Também cabe perguntar ao colega ddnardi qual seria a finalidade ora também porque originou este tópico, e eu entrei de caiado, porque não tive solução ao tópico que tinha aberto https://pctoledo.org/forum/viewto ... 905c6818ed.

Eu fico no aguardo para uma solução sobre isto.

Um clip-abraço. :)Pos
Responder