Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
agnaldoneves Novato
Registrado: Domingo, 25 de Setembro de 2011 Mensagens: 38
|
Enviada: Seg Out 10, 2011 6:37 pm Assunto: Gostaria de Buscar o nome do meu computador no meu Log. |
|
|
Crie um campo chamado NomeComputador na minha tabela de log.
- Como faço para buscar o nome da máquina e incluir no código abaixo.
Código: | if(IBDataSet.State in [dsInsert]) then
begin
IBLogOperacoes.Close;
IBLogOperacoes.Open;
IBLogOperacoes.Append;
IBLogOperacoes.FieldByName('USUARIO').AsInteger:=
frmPrincipal.IBLogin.FieldByName('ID').AsInteger;
IBLogOperacoes.FieldByName('DATA').AsDateTime:=Date;
IBLogOperacoes.FieldByName('HORA').AsDateTime:=Time;
IBLogOperacoes.FieldByName('TABELA').AsAnsiString:=nomeTabela;
IBLogOperacoes.FieldByName('OPERACAO').AsAnsiString:='INCLUI NOVO ' +
'REGISTRO';
IBLogOperacoes.Post;
end
else
if(IBDataSet.State in [dsEdit]) then
begin
IBLogOperacoes.Close;
IBLogOperacoes.Open;
IBLogOperacoes.Append;
IBLogOperacoes.FieldByName('USUARIO').AsInteger:=
frmPrincipal.IBLogin.FieldByName('ID').AsInteger;
IBLogOperacoes.FieldByName('DATA').AsDateTime:=Date;
IBLogOperacoes.FieldByName('HORA').AsDateTime:=Time;
IBLogOperacoes.FieldByName('TABELA').AsAnsiString:=nomeTabela;
IBLogOperacoes.FieldByName('OPERACAO').AsAnsiString:='ALTERAÇAO DO ' +
'REGISTRO';
IBLogOperacoes.Post;
end; |
|
|
Voltar ao Topo |
|
|
agnaldoneves Novato
Registrado: Domingo, 25 de Setembro de 2011 Mensagens: 38
|
Enviada: Ter Out 11, 2011 9:38 am Assunto: Como faço para pegar o nome do computador |
|
|
Preciso saber em que maquina o usúario estava.
conforme o código acima.
|
|
Voltar ao Topo |
|
|
tavinhotjs Novato
Registrado: Terça-Feira, 13 de Setembro de 2011 Mensagens: 91
|
Enviada: Ter Out 11, 2011 9:42 am Assunto: |
|
|
Uses Registry;
function TForm1.Getcomputer : string;
var
registro : tregistry;
begin
registro:=tregistry.create;
registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('System\CurrentControlSet\Services\VXD\VNETSUP',false);
result:=registro.readstring('ComputerName');
end;
enviada por wandinhodelphi |
|
Voltar ao Topo |
|
|
agnaldoneves Novato
Registrado: Domingo, 25 de Setembro de 2011 Mensagens: 38
|
Enviada: Ter Out 11, 2011 10:23 am Assunto: Estou fazendo alguma coisa errada. |
|
|
//NÃO ESTÁ APARECENDO NADA NA TABELA
Código: | BLogOperacoes.Close;
IBLogOperacoes.Open;
IBLogOperacoes.Append;
IBLogOperacoes.FieldByName('USUARIO').AsInteger:=
frmPrincipal.IBLogin.FieldByName('ID').AsInteger;
IBLogOperacoes.FieldByName('DATA').AsDateTime:=Date;
IBLogOperacoes.FieldByName('HORA').AsDateTime:=Time;
IBLogOperacoes.FieldByName('TABELA').AsAnsiString:=nomeTabela;
IBLogOperacoes.FieldByName('NOME_COMPUTADOR').AsAnsiString:=Getcomputer;
IBLogOperacoes.FieldByName('OPERACAO').AsAnsiString:='EXCLUSAO DO ' +
'REGISTRO ' + strValorChave;
IBLogOperacoes.Post; |
//CODIGO ENVIADO:
Código: | function TFormPadrao1.Getcomputer : string;
var
registro : tregistry;
begin
registro:=tregistry.create;
registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('System\CurrentControlSet\Services\VXD\VNETSUP',false);
result:=registro.readstring('NOME_COMPUTADOR');
end; |
|
|
Voltar ao Topo |
|
|
tavinhotjs Novato
Registrado: Terça-Feira, 13 de Setembro de 2011 Mensagens: 91
|
Enviada: Ter Out 11, 2011 10:30 am Assunto: |
|
|
Voce declarou a unit Registry na clausula uses? |
|
Voltar ao Topo |
|
|
tavinhotjs Novato
Registrado: Terça-Feira, 13 de Setembro de 2011 Mensagens: 91
|
|
Voltar ao Topo |
|
|
agnaldoneves Novato
Registrado: Domingo, 25 de Setembro de 2011 Mensagens: 38
|
Enviada: Ter Out 11, 2011 8:13 pm Assunto: Declarei sim |
|
|
Mas não funcionou.
Código: | Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ImgList, ToolWin, ComCtrls, Menus, ExtCtrls, pngimage, StdCtrls,
Buttons, DBCtrls, Grids, DBGrids, DB, IBCustomDataSet, Mask ,Registry, Winsock,ShellApi; |
|
|
Voltar ao Topo |
|
|
pestana Colaborador
Registrado: Sábado, 25 de Junho de 2005 Mensagens: 3147 Localização: Araras-SP
|
Enviada: Ter Out 11, 2011 8:40 pm Assunto: |
|
|
Encontrei esta função na web, verifique se é isso que você quer:
Código: | function NomeComp : String;
Var
lpBuffer : Array [0..20] of Char;
nSize, erro : dWord;
mRet : boolean;
msg : string;
Begin
nSize := 120;
mRet := GetComputerName(lpBuffer,nSize);
if mRet then
Result := lpBuffer
else
begin
erro := GetLastError();
msg := 'Ocorreu o erro '+IntToStr(erro)+' ao procurar o nome do computador.';
MessageBox(Screen.ActiveForm.Handle, PChar(msg),'Atenção',mb_Ok+mb_IconError);
Result := '';
end;
end; |
_________________ Ao invés de ficar desanimado no que deu de errado, olhe para frente, aprenda com os erros e veja o que ainda pode ser feito. A determinação e a persistência é uma das etapas para o sucesso. |
|
Voltar ao Topo |
|
|
agnaldoneves Novato
Registrado: Domingo, 25 de Setembro de 2011 Mensagens: 38
|
Enviada: Ter Out 11, 2011 10:08 pm Assunto: Como fazer funcionar. |
|
|
//O ERRO QUE ESTA APARECENDO
A FUNCAO ACIMA FUNCIONADO
Código: | procedure TfrmCateg.FormCreate(Sender: TObject);
begin
inherited;
Label5.Caption:=NomedoComputador;
end; |
A FUNCAO NOME COMPUTADOR
Código: | function NomedoComputador: String;
var
buffer: Array[0..255] of char;
size: DWord;
begin
size := 256;
if GetComputerName (buffer,size) then
Result := Buffer
else
Result := '';
end; |
<<<A FUNCAO USADO NO NOME_COMPUTADOR,
Código: | if(IBDataSet.State in [dsInsert]) then
begin
IBLogOperacoes.Close;
IBLogOperacoes.Open;
IBLogOperacoes.Append;
IBLogOperacoes.FieldByName('USUARIO').AsInteger:=
frmPrincipal.IBLogin.FieldByName('ID').AsInteger;
IBLogOperacoes.FieldByName('DATA').AsDateTime:=Date;
IBLogOperacoes.FieldByName('HORA').AsDateTime:=Time;
IBLogOperacoes.FieldByName('TABELA').AsAnsiString:=nomeTabela;
IBLogOperacoes.FieldByName('NOME_COMPUTADOR').AsAnsiString:=NomedoComputador;
IBLogOperacoes.FieldByName('OPERACAO').AsAnsiString:='INCLUI NOVO ' +
'REGISTRO';
IBLogOperacoes.Post; |
|
|
Voltar ao Topo |
|
|
tavinhotjs Novato
Registrado: Terça-Feira, 13 de Setembro de 2011 Mensagens: 91
|
Enviada: Ter Out 11, 2011 10:16 pm Assunto: |
|
|
O campo 'nome do computador' não está declarado no seu objeto IBJog operações ou não esta declarado na sua select, da uma olhada ai |
|
Voltar ao Topo |
|
|
agnaldoneves Novato
Registrado: Domingo, 25 de Setembro de 2011 Mensagens: 38
|
Enviada: Ter Out 11, 2011 10:19 pm Assunto: PESSOAL DESCULPAS - RESOLVIDO |
|
|
ESQUECI DE LANÇAR ELE NO EDITOR NO LOG. FALTOU ATENÇÃO!!
OBRIGADO,
|
|
Voltar ao Topo |
|
|
tavinhotjs Novato
Registrado: Terça-Feira, 13 de Setembro de 2011 Mensagens: 91
|
Enviada: Ter Out 11, 2011 10:23 pm Assunto: |
|
|
Beleza, valew. |
|
Voltar ao Topo |
|
|
|