Bom dia a todos da comunidade, estou com um probleminha chato, criei um BD que funciona em rede sendo compartilhado por vários usuários (Tabelas Back e Formulários Front), ele está funcionando bem. Eu criei uma rotina para que ele crie um arquivo de texto com o registro de uso (log), do tipo: Quem, em que máquina, que dia e hora e o quê acessou. Também funciona bem, só que ele só registra o nome e usuário do servidor da rede e não da máquina local, já tentei vários códigos e comandos, mas sempre me mostra a identificação do servidor (nome e usuário windows), como tenho no BD uma tela de login, ele registra o nome do usuário que logou no sistema, mas fica "furada" a identificação de em que máquina e usuário windows ele estava.
Eu uso esse código simples para exibir no cabeçalho do formulário as informações de usuário windows e maquina:
Private Sub Form_Load()
strCaption = "Computador: " & Environ("Computername")
strCaption = strCaption & " *** Usuário: " & Environ("UserName")
Me.Caption = strCaption
End Sub
Só que ele me mostra na verdade o nome do servidor de rede e do usuário windows do servidor de rede, e não o da máquina local em uso.
Eu estou usando esse outro código para a criação do arquivo TXT de log na máquina Servidor:
Private Sub Form_Close()
'Lê o arquivo LOG criado e posiciona o cursor em uma nova linha
Open "S:\RegLog\LogSIGPAS_" & Format(Date, "YYYY-MM") & ".log" For Append As #1
'acrescenta nova linha, logo após a última linha existente
Print #1, cbxLogin; ";"; Now; ";"; Environ("computername"); ";"; Environ("username"); ";"; Modulo
Close #1
End Sub
Ele cria uma linha com esses dados no arquivo TXT de log:
....
Admin;15/02/2016 08:14:15 ;SERVERSEMAS;Click;Exclusão de Registro RF
Admin;15/02/2016 08:15:40 ;SERVERSEMAS;Click;Ferramentas Adminstrativas
Admin;15/02/2016 08:17:28 ;SERVERSEMAS;Click;Ferramentas Adminstrativas
Admin;15/02/2016 08:50:40 ;SERVERSEMAS;Click;Ferramentas Adminstrativas
Admin;15/02/2016 08:52:48 ;SERVERSEMAS;Click;Prontuário Completo
Admin;15/02/2016 09:06:29 ;SERVERSEMAS;Click;Ferramentas Adminstrativas
....
Onde:
Admin é o nome do usuário que logou na minha tela inicial do sistema;
Segue a data e hora do acesso;
SERVERSEMAS é o nome do servidor da rede, esse é que eu gostaria que ele mostrasse o nome da máquina local do usuário;
Click é o nome do usuário Windows do servidor da rede, eu quero que ele mostre o nome do usuário logado no Windows local;
Depois ele mostra o módulo que o usuário acessou, essa está OK.
Alguma sugestão? Já queimei pestanas demais.
Eu uso esse código simples para exibir no cabeçalho do formulário as informações de usuário windows e maquina:
Private Sub Form_Load()
strCaption = "Computador: " & Environ("Computername")
strCaption = strCaption & " *** Usuário: " & Environ("UserName")
Me.Caption = strCaption
End Sub
Só que ele me mostra na verdade o nome do servidor de rede e do usuário windows do servidor de rede, e não o da máquina local em uso.
Eu estou usando esse outro código para a criação do arquivo TXT de log na máquina Servidor:
Private Sub Form_Close()
'Lê o arquivo LOG criado e posiciona o cursor em uma nova linha
Open "S:\RegLog\LogSIGPAS_" & Format(Date, "YYYY-MM") & ".log" For Append As #1
'acrescenta nova linha, logo após a última linha existente
Print #1, cbxLogin; ";"; Now; ";"; Environ("computername"); ";"; Environ("username"); ";"; Modulo
Close #1
End Sub
Ele cria uma linha com esses dados no arquivo TXT de log:
....
Admin;15/02/2016 08:14:15 ;SERVERSEMAS;Click;Exclusão de Registro RF
Admin;15/02/2016 08:15:40 ;SERVERSEMAS;Click;Ferramentas Adminstrativas
Admin;15/02/2016 08:17:28 ;SERVERSEMAS;Click;Ferramentas Adminstrativas
Admin;15/02/2016 08:50:40 ;SERVERSEMAS;Click;Ferramentas Adminstrativas
Admin;15/02/2016 08:52:48 ;SERVERSEMAS;Click;Prontuário Completo
Admin;15/02/2016 09:06:29 ;SERVERSEMAS;Click;Ferramentas Adminstrativas
....
Onde:
Admin é o nome do usuário que logou na minha tela inicial do sistema;
Segue a data e hora do acesso;
SERVERSEMAS é o nome do servidor da rede, esse é que eu gostaria que ele mostrasse o nome da máquina local do usuário;
Click é o nome do usuário Windows do servidor da rede, eu quero que ele mostre o nome do usuário logado no Windows local;
Depois ele mostra o módulo que o usuário acessou, essa está OK.
Alguma sugestão? Já queimei pestanas demais.