PDA

Ver la Versión Completa : Error Delphi [Expected ';' but '.' found.]


H8RS
20-05-2012, 14:36:15
Pues hize un programa en delphi y a la hora de depurarlo me da este error:
Expected ';' but '.' found.

y me manda a esta linea:
Memo1: N.A.;

si la borro, me manda a esta:
SaveMan: N.A.;

y si borro las dos me da error el codigo.

Este es el código completo de la aplicación(Es un autoclick):

unit Unit1;

interface

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics,
Controls, Forms, Dialogs, StdCtrls
type
Form1=class(TForm)
WinTitle: TStaticText;
Reset: TSpeedButton;
WinX: TStaticText;
WinY: TStaticText;
Memo1: N:A;
IntervalTrack: TTrackBar;
ClickInterval: TStaticText;
Timer1: TTimer;
SaveMan: N:A;
procedure IntervalTrackChange(Sender : TObject);
procedure FormCreate(Sender : TObject);
procedure ResetClick(Sender : TObject);
procedure Timer1Timer(Sender : TObject);
procedure SaveManClick(Sender : TObject);
private
{ Private declarations }
public
{ Public declarations }
end ;

var
Form1: Form1;

{This file is generated by DeDe Ver 3.50.02 Copyright (c) 1999-2002 DaFixer}

implementation

{$R *.DFM}

procedure Form1.IntervalTrackChange(Sender : TObject);
begin
(*
0042F078 55 push ebp
0042F079 8BEC mov ebp, esp
0042F07B 6A00 push $00
0042F07D 53 push ebx
0042F07E 8BD8 mov ebx, eax
0042F080 33C0 xor eax, eax
0042F082 55 push ebp

* Possible String Reference to: 'éä@ýÿëð[Y]ËÀ¡lC'
|
0042F083 68DBF04200 push $0042F0DB

***** TRY
|
0042F088 64FF30 push dword ptr fs:[eax]
0042F08B 648920 mov fs:[eax], esp
0042F08E 8D55FC lea edx, [ebp-$04]

* Reference to control Form1.IntervalTrack : TTrackBar
|
0042F091 8B83F0010000 mov eax, [ebx+$01F0]

* Reference to field TTrackBar.Position : Integer
|
0042F097 8B8030010000 mov eax, [eax+$0130]

* Reference to: Unit_00405A80.Proc_004067C4
|
0042F09D E82277FDFF call 004067C4
0042F0A2 8B55FC mov edx, [ebp-$04]

* Reference to control Form1.ClickInterval : TStaticText
|
0042F0A5 8B83F4010000 mov eax, [ebx+$01F4]

* Reference to : TImageList._PROC_00419380()
|
0042F0AB E8D0A2FEFF call 00419380

* Reference to control Form1.IntervalTrack : TTrackBar
|
0042F0B0 8B83F0010000 mov eax, [ebx+$01F0]

* Reference to field TTrackBar.Position : Integer
|
0042F0B6 8B8030010000 mov eax, [eax+$0130]

* Reference to control Form1.Timer1 : TTimer
|
0042F0BC 8B93F8010000 mov edx, [ebx+$01F8]

* Reference to field TTimer.Tag : Longint
|
0042F0C2 89420C mov [edx+$0C], eax
0042F0C5 33C0 xor eax, eax
0042F0C7 5A pop edx
0042F0C8 59 pop ecx
0042F0C9 59 pop ecx
0042F0CA 648910 mov fs:[eax], edx

****** FINALLY
|

* Possible String Reference to: '[Y]ËÀ¡lC'
|
0042F0CD 68E2F04200 push $0042F0E2
0042F0D2 8D45FC lea eax, [ebp-$04]

* Reference to: System.Proc_00403720
|
0042F0D5 E84646FDFF call 00403720
0042F0DA C3 ret


* Reference to: System.Proc_004031C4
|
0042F0DB E9E440FDFF jmp 004031C4
0042F0E0 EBF0 jmp 0042F0D2

****** END
|
0042F0E2 5B pop ebx
0042F0E3 59 pop ecx
0042F0E4 5D pop ebp
0042F0E5 C3 ret

*)
end;

procedure Form1.FormCreate(Sender : TObject);
begin
(*

* Reference to TApplication instance
|
0042F0E8 A16C0A4300 mov eax, dword ptr [$00430A6C]
0042F0ED 8B00 mov eax, [eax]

* Reference to Form1
|
0042F0EF 8B1558174300 mov edx, [$00431758]

* Reference to field TApplication.OFFS_00C0
|
0042F0F5 8990C0000000 mov [eax+$00C0], edx

* Reference to field TApplication.OnDeactivate : TNotifyEvent
|
0042F0FB C780BC000000C8EE4200 mov dword ptr [eax+$00BC], $0042EEC8
0042F105 C3 ret

*)
end;

procedure Form1.ResetClick(Sender : TObject);
begin
(*
0042F108 53 push ebx
0042F109 8BD8 mov ebx, eax

* Reference to control Form1.Reset : TSpeedButton
|
0042F10B 8B83E0010000 mov eax, [ebx+$01E0]

* Reference to field TSpeedButton.Down : Boolean
|
0042F111 80B8C000000000 cmp byte ptr [eax+$00C0], $00
0042F118 743C jz 0042F156
0042F11A 33D2 xor edx, edx

* Reference to control Form1.WinTitle : TStaticText
|
0042F11C 8B83DC010000 mov eax, [ebx+$01DC]

* Reference to : TImageList._PROC_00419380()
|
0042F122 E859A2FEFF call 00419380

* Reference to control Form1.WinTitle : TStaticText
|
0042F127 8B83DC010000 mov eax, [ebx+$01DC]
0042F12D 33D2 xor edx, edx

* Reference to field TStaticText.Tag : Longint
|
0042F12F 89500C mov [eax+$0C], edx

* Reference to control Form1.WinX : TStaticText
|
0042F132 8B83E4010000 mov eax, [ebx+$01E4]
0042F138 33D2 xor edx, edx

* Reference to field TStaticText.Tag : Longint
|
0042F13A 89500C mov [eax+$0C], edx
0042F13D 33D2 xor edx, edx

* Reference to : TImageList._PROC_00419380()
|
0042F13F E83CA2FEFF call 00419380

* Reference to control Form1.WinY : TStaticText
|
0042F144 8B83E8010000 mov eax, [ebx+$01E8]
0042F14A 33D2 xor edx, edx

* Reference to field TStaticText.Tag : Longint
|
0042F14C 89500C mov [eax+$0C], edx
0042F14F 33D2 xor edx, edx

* Reference to : TImageList._PROC_00419380()
|
0042F151 E82AA2FEFF call 00419380
0042F156 5B pop ebx
0042F157 C3 ret

*)
end;

procedure Form1.Timer1Timer(Sender : TObject);
begin
(*
0042F158 53 push ebx
0042F159 8BD8 mov ebx, eax

* Reference to control Form1.WinTitle : TStaticText
|
0042F15B 8B83DC010000 mov eax, [ebx+$01DC]

* Reference to field TStaticText.Tag : Longint
|
0042F161 83780C00 cmp dword ptr [eax+$0C], +$00
0042F165 0F84C2000000 jz 0042F22D

* Reference to control Form1.Timer1 : TTimer
|
0042F16B 8B83F8010000 mov eax, [ebx+$01F8]
0042F171 FF400C inc dword ptr [eax+$0C]

* Reference to control Form1.WinTitle : TStaticText
|
0042F174 8B83DC010000 mov eax, [ebx+$01DC]

* Reference to field TStaticText.Color : TColor
|
0042F17A 81785400FFFF00 cmp dword ptr [eax+$54], $00FFFF00
0042F181 740A jz 0042F18D
0042F183 BA00FFFF00 mov edx, $00FFFF00

* Reference to : TImageList._PROC_004194A8()
|
0042F188 E81BA3FEFF call 004194A8

* Reference to control Form1.Timer1 : TTimer
|
0042F18D 8B83F8010000 mov eax, [ebx+$01F8]

* Reference to field TTimer.Tag : Longint
|
0042F193 8B500C mov edx, [eax+$0C]

* Reference to control Form1.IntervalTrack : TTrackBar
|
0042F196 8B8BF0010000 mov ecx, [ebx+$01F0]
0042F19C 3B9130010000 cmp edx, [ecx+$0130]
0042F1A2 0F8C85000000 jl 0042F22D
0042F1A8 33D2 xor edx, edx

* Reference to field TTimer.Tag : Longint
|
0042F1AA 89500C mov [eax+$0C], edx

* Reference to control Form1.WinX : TStaticText
|
0042F1AD 8B83E4010000 mov eax, [ebx+$01E4]

* Reference to field TStaticText.Tag : Longint
|
0042F1B3 8B400C mov eax, [eax+$0C]

* Reference to control Form1.WinY : TStaticText
|
0042F1B6 8B93E8010000 mov edx, [ebx+$01E8]

* Reference to field TStaticText.Tag : Longint
|
0042F1BC 8B520C mov edx, [edx+$0C]
0042F1BF C1E210 shl edx, $10
0042F1C2 03C2 add eax, edx
0042F1C4 50 push eax
0042F1C5 6A00 push $00
0042F1C7 6801020000 push $00000201

* Reference to control Form1.WinTitle : TStaticText
|
0042F1CC 8B83DC010000 mov eax, [ebx+$01DC]

* Reference to field TStaticText.Tag : Longint
|
0042F1D2 8B400C mov eax, [eax+$0C]
0042F1D5 50 push eax

* Reference to: user32.SendMessageA()
|
0042F1D6 E87966FDFF call 00405854
0042F1DB 85C0 test eax, eax
0042F1DD 7547 jnz 0042F226
0042F1DF 6A01 push $01

* Reference to: kernel32.Sleep()
|
0042F1E1 E86661FDFF call 0040534C

* Reference to control Form1.WinX : TStaticText
|
0042F1E6 8B83E4010000 mov eax, [ebx+$01E4]

* Reference to field TStaticText.Tag : Longint
|
0042F1EC 8B400C mov eax, [eax+$0C]

* Reference to control Form1.WinY : TStaticText
|
0042F1EF 8B93E8010000 mov edx, [ebx+$01E8]

* Reference to field TStaticText.Tag : Longint
|
0042F1F5 8B520C mov edx, [edx+$0C]
0042F1F8 C1E210 shl edx, $10
0042F1FB 03C2 add eax, edx
0042F1FD 50 push eax
0042F1FE 6A00 push $00
0042F200 6802020000 push $00000202

* Reference to control Form1.WinTitle : TStaticText
|
0042F205 8B83DC010000 mov eax, [ebx+$01DC]

* Reference to field TStaticText.Tag : Longint
|
0042F20B 8B400C mov eax, [eax+$0C]
0042F20E 50 push eax

* Reference to: user32.SendMessageA()
|
0042F20F E84066FDFF call 00405854
0042F214 BAFFFF0000 mov edx, $0000FFFF

* Reference to control Form1.WinTitle : TStaticText
|
0042F219 8B83DC010000 mov eax, [ebx+$01DC]

* Reference to : TImageList._PROC_004194A8()
|
0042F21F E884A2FEFF call 004194A8
0042F224 EB07 jmp 0042F22D
0042F226 8BC3 mov eax, ebx

* Reference to : TApplication._PROC_00426C4C()
|
0042F228 E81F7AFFFF call 00426C4C
0042F22D 5B pop ebx
0042F22E C3 ret

*)
end;

procedure Form1.SaveManClick(Sender : TObject);
begin
(*
0042F230 55 push ebp
0042F231 8BEC mov ebp, esp
0042F233 6A00 push $00
0042F235 6A00 push $00
0042F237 53 push ebx
0042F238 8BD8 mov ebx, eax
0042F23A 33C0 xor eax, eax
0042F23C 55 push ebp

* Possible String Reference to: 'é!?ýÿëë[YY]Ã'
|
0042F23D 689EF24200 push $0042F29E

***** TRY
|
0042F242 64FF30 push dword ptr fs:[eax]
0042F245 648920 mov fs:[eax], esp
0042F248 8D55F8 lea edx, [ebp-$08]

* Reference to TApplication instance
|
0042F24B A16C0A4300 mov eax, dword ptr [$00430A6C]
0042F250 8B00 mov eax, [eax]

* Reference to : TApplication._PROC_00428CD8()
|
0042F252 E8819AFFFF call 00428CD8
0042F257 8B45F8 mov eax, [ebp-$08]
0042F25A 8D55FC lea edx, [ebp-$04]

* Reference to: Unit_00405A80.Proc_0040695C
|
0042F25D E8FA76FDFF call 0040695C
0042F262 8D45FC lea eax, [ebp-$04]

* Possible String Reference to: 'AutoClick_Manual.txt'
|
0042F265 BAB4F24200 mov edx, $0042F2B4

* Reference to: System.Proc_004039A4
|
0042F26A E83547FDFF call 004039A4
0042F26F 8B55FC mov edx, [ebp-$04]
0042F272 8B83EC010000 mov eax, [ebx+$01EC]
0042F278 8B8030010000 mov eax, [eax+$0130]
0042F27E 8B08 mov ecx, [eax]
0042F280 FF5164 call dword ptr [ecx+$64]
0042F283 33C0 xor eax, eax
0042F285 5A pop edx
0042F286 59 pop ecx
0042F287 59 pop ecx
0042F288 648910 mov fs:[eax], edx

****** FINALLY
|

* Possible String Reference to: '[YY]Ã'
|
0042F28B 68A5F24200 push $0042F2A5
0042F290 8D45F8 lea eax, [ebp-$08]
0042F293 BA02000000 mov edx, $00000002

* Reference to: System.Proc_00403744
|
0042F298 E8A744FDFF call 00403744
0042F29D C3 ret


* Reference to: System.Proc_004031C4
|
0042F29E E9213FFDFF jmp 004031C4
0042F2A3 EBEB jmp 0042F290

****** END
|
0042F2A5 5B pop ebx
0042F2A6 59 pop ecx
0042F2A7 59 pop ecx
0042F2A8 5D pop ebp
0042F2A9 C3 ret

*)
end;

end.

Casimiro Notevi
20-05-2012, 16:24:12
El error, en principio, está claro:

Memo1: N:A;
SaveMan: N:A;
¿Qué es N:A ?

gatosoft
20-05-2012, 18:20:16
Bueno, por lo que veo estás utilizando el programa "DeDe" que es un De-compilador de programas en Delphi... asi que no deberías decir: "hice un programa en Delphi" :D

{This file is generated by DeDe Ver 3.50.02 Copyright (c) 1999-2002 DaFixer}


Teniendo en cuenta esto, me adhiero al comentario de Casimiro, el error es claro y transparente... pues el tipo N.A. no existe..

Memo1: N:A;
SaveMan: N:A;


Deberían ser tipos como:

Memo1: TMemo;
SaveMan: TButton {o lat vez un TMenuItem};


Por alguna razón el decmpilador no los logra interpretar y te devuelve un "No Aplica"... Parte de decompilar o hacer ingeniería inversa está en completar las piezas del rompecabezas que hacen falta, no esperes que mágicamente todo te sea revelado....

un saludo,

AzidRain
20-05-2012, 19:37:18
Me adhiero, encima de usar un decompilador ni siquiera tiene idea de lo que le presenta, ya no digamos de la sintaxis correcta de Delphi. Ya muchos de los que sí programamos nos dimos cuenta del error generado. Y en efecto como dice gatosoft no esperes que todo se revele como magia y sobre todo sin tener la menor idea de en que te estás metiendo.

H8RS
20-05-2012, 20:41:16
Pues con DeDe el descompilador, descompile un programa para editarlo ya esta listo o eso creo y me da este error:
[Error] Autoclick.dpr(3): Declaration expected but identifier 'Autoclick' found

y me manda a esta linea:
Project Autoclick;

Y también esta este error:
[Warning] Autoclick.dpr(8): File not found: 'Proyect.RES'

Y me manda a esta linea:
{$R *.RES}

Este es todo el código:
{Este archivo fue creado por DeDe Ver 3.50.02 Copyright (c) 1999-2001 DaFixer}

Project Autoclick;

uSES
Unit1 in 'Unit1.pas' {TAutoCLK};

{$R *.RES}

begin
{
0042F41C 55 push ebp
0042F41D 8BEC mov ebp, esp
0042F41F 83C4F4 add esp, -$0C
0042F422 B82CF34200 mov eax, $0042F32C

* Reference to: SysInit.Proc_00405178
|
0042F427 E84C5DFDFF call 00405178

* Reference to TApplication instance
|
0042F42C A16C0A4300 mov eax, dword ptr [$00430A6C]
0042F431 8B00 mov eax, [eax]

* Reference to : TApplication._PROC_00428850()
|
0042F433 E81894FFFF call 00428850

* Reference to TAutoCLK instance
|
0042F438 8B0D3C0A4300 mov ecx, [$00430A3C]

* Reference to TApplication instance
|
0042F43E A16C0A4300 mov eax, dword ptr [$00430A6C]
0042F443 8B00 mov eax, [eax]

* Reference to class TAutoCLK
|
0042F445 8B15E0EC4200 mov edx, [$0042ECE0]

* Reference to : TApplication._PROC_00428868()
|
0042F44B E81894FFFF call 00428868

* Reference to TApplication instance
|
0042F450 A16C0A4300 mov eax, dword ptr [$00430A6C]
0042F455 8B00 mov eax, [eax]

* Reference to : TApplication._PROC_004288F4()
|
0042F457 E89894FFFF call 004288F4

* Reference to: System.Proc_004035F0
|
0042F45C E88F41FDFF call 004035F0
0042F461 8D4000 lea eax, [eax+$00]
0042F464 0000 add [eax], al

}
end.

ecfisa
20-05-2012, 21:07:28
Hola H8RS.

Combíné tu último mensaje (que iniciaste como nuevo hilo) ya que es continuación de este.

Cuando un mensaje tenga conexión con un hilo que ya iniciaste por favor agregalo a ese hilo, no crees uno nuevo. De otro modo quién lo lee, no tiene idea de lo expuesto anteriormente.

Saludos. :)