 |
ActiveDelphi .: O site do programador Delphi! :.
|
| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
Kirk_guitar Aprendiz

Registrado: Sábado, 24 de Junho de 2006 Mensagens: 105 Localização: Belo Horizonte
|
Enviada: Ter Nov 07, 2017 11:17 am Assunto: [DCC Error] Unit1.pas(47): E2029 '(' expected but ':=' found |
|
|
Bom dia pessoal, eu estou com um erro que não estou conseguindo entender:
Eu peguei um código de um site para carregar uma dll dinamicamente no meu sistema. Segundo os comentários de quem usou o código, funciona perfeitamente. Mas no meu caso da esse erro que coloquei no titulo.
A linha onde dá este erro é essa aqui.
| Código: |
@DescompactaGZip := GetProcAddress(H, 'DescompactaGZip');
|
Vou colocar abaixo todo o código da unit para vocês verem:
| Código: |
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
mmLog: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
type
DescompactaGZip = function(zip :AnsiString) :AnsiString;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var s :AnsiString;
H :THandle;
begin
s := 'H4sIAAAAAAAEAIWS2W6DMBBFfwXxDraBQIomlrKQNmkhC'+
'UFdHglxgiWWCNwsf1+ztFWkSvXLXI/O3BmPDBWrgzlTrnlW'+
'1O613o/UVIiTi9DlctEvpl5WR2RgTNC7/7JNUpbH6g/M/4c1Xt'+
'QiLhKmKmdW1XE5UomOSe9xV38qKxFnB14ncabz4qDvKlQcmEohS'+
'eWIlBDiEGmO7QfTGuJWDQZN6PSQkG9hAepqYBqsl/S+BlCbhGtQ'+
'5oxuV/44VBbBbLryZ57iRYuN4imT1UR5iWZjQB0FC4/i/gxsx7YcQ'+
'DIF+9TLOTUwcTSCNcOKiOWajmsYGjZcjAF1AIhTMKcEUBvh3FxsrDd'+
'Ao2HPj69xRqNbGM557VfL6dPy0Smd58+P8K24hefNSFp1kOwZsmQnyj'+
'/aWr9tewaKdVUKajbLk683hxYxbTlIl4Zky0W7W7mwXgLqvgT9AiKGZhUbAgAA';
H := LoadLibrary('Project1.dll');
if H <> 0 then
begin
showmessage('carregou a dll.');
@DescompactaGZip := GetProcAddress(H, 'DescompactaGZip');
if @DescompactaGZip <> nil then
begin
s := DescompactaGZip(s);
mmLog.Lines.Text := s
end;
FreeLibrary(Handle);
end;
// s := DescompactaGZip(s);
end;
end.
|
Eu acredito que seja uma coisa simples que estou errando, mas não sei o que é.
Estou usando o Delphi 2007. A dll foi criada por mim no Delphi XE2.
Ah. Também da o mesmo erro na linha abaixo, do if, dizendo que tem que ser um parênteses no lugar do "<>". |
|
| Voltar ao Topo |
|
 |
Kirk_guitar Aprendiz

Registrado: Sábado, 24 de Junho de 2006 Mensagens: 105 Localização: Belo Horizonte
|
Enviada: Ter Nov 07, 2017 1:36 pm Assunto: |
|
|
Pessoal, consegui resolver com o seguinte código:
| Código: |
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
mmLog: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
type
TDescompactaGZip = function(zip :AnsiString) :AnsiString;
const
DescompactaGZip :TDescompactaGZIp = nil;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var s :AnsiString;
H :THandle;
begin
s := 'H4sIAAAAAAAEAIWS2W6DMBBFfwXxDraBQIomlrKQNmkhC'+
'UFdHglxgiWWCNwsf1+ztFWkSvXLXI/O3BmPDBWrgzlTrnlW'+
'1O613o/UVIiTi9DlctEvpl5WR2RgTNC7/7JNUpbH6g/M/4c1Xt'+
'QiLhKmKmdW1XE5UomOSe9xV38qKxFnB14ncabz4qDvKlQcmEohS'+
'eWIlBDiEGmO7QfTGuJWDQZN6PSQkG9hAepqYBqsl/S+BlCbhGtQ'+
'5oxuV/44VBbBbLryZ57iRYuN4imT1UR5iWZjQB0FC4/i/gxsx7YcQ'+
'DIF+9TLOTUwcTSCNcOKiOWajmsYGjZcjAF1AIhTMKcEUBvh3FxsrDd'+
'Ao2HPj69xRqNbGM557VfL6dPy0Smd58+P8K24hefNSFp1kOwZsmQnyj'+
'/aWr9tewaKdVUKajbLk683hxYxbTlIl4Zky0W7W7mwXgLqvgT9AiKGZhUbAgAA';
H := LoadLibrary('Project1.dll');
if H <> 0 then
begin
showmessage('carregou a dll.');
@DescompactaGZip := GetProcAddress(H, 'DescompactaGZip');
if @DescompactaGZip <> nil then
begin
s := DescompactaGZip(s);
mmLog.Lines.Text := s
end;
FreeLibrary(Handle);
end;
end;
end.
|
|
|
| Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|