Ver Mensaje Individual
  #5  
Antiguo 11-10-2005
CelestronFan CelestronFan is offline
Miembro
 
Registrado: oct 2005
Posts: 14
Reputación: 0
CelestronFan Va por buen camino
Bueno muchachos, hice los cambios y no funciona.

Los errores del compilador son estos:

Cita:
[Error] NGFS.pas(68): Undeclared identifier: 'RegNGFS'
[Error] NGFS.pas(69): Missing operator or semicolon
[Error] NGFS.pas(70): 'THEN' expected but identifier 'OpenKey' found
[Error] NGFS.pas(71): Missing operator or semicolon
[Error] NGFS.pas(72): Missing operator or semicolon
..... el mismo error hasta línea 78
[Error] NGFS.pas(81): Statement expected but 'PROCEDURE' found
..... luego lo mismo para el otro procedimiento y termina con
[Hint] NGFS.pas(39): Private symbol 'RegNGFS' declared but never used
[Error] NGFS.pas(43): Unsatisfied forward or external declaration: 'TForm1.ReadRegistry'
[Error] NGFS.pas(45): Unsatisfied forward or external declaration: 'TForm1.WriteRegistry'
[Fatal Error] Focuser.dpr(5): Could not compile used unit 'NGFS.pas'
El código es este (Eliminé la parte de "Type" para que no fuera tan largo):

Código Delphi [-]
 unit NGFS;
 
 interface
 
 uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
   Dialogs, StdCtrls, ComCtrls, ExtCtrls, CPortCtl, CPort, Registry;
 
 type
...........................
 
   private
     { Private declarations }
     RegNGFS: TRegistry;
   public
     { Public declarations }
 
     procedure ReadRegistry(MaxSteps: Integer; MinSteps: Integer;
                       StopOUT: Integer; StopIN: Integer; COMPort: String);
     procedure WriteRegistry( );
 
   end;
 
 var
   Form1: TForm1;
   MaxSteps: Cardinal;   //Número máximo de pasos del Stepper
   MinSteps: Cardinal;   //Número mínimo de pasos del Stepper
   StopOUT: Cardinal;    //Posición de parada sentido OUT del Stepper
   StopIN: Cardinal;     //Posición de parada sentido IN del Stepper
   COMPort: String;      //Puerto Serial seleccionado
 
 implementation
 
 {$R *.dfm}
 
 procedure ReadRegistry(MaxSteps: Integer; MinSteps: Integer;
                        StopOUT: Integer; StopIN: Integer; COMPort: String);
 
 //Procedimiento para leer el registro//
 
 begin
     try
     RegNGFS:= TRegistry.Create;
     RegNGFS.RootKey := HKEY_LOCAL_MACHINE;
     if RegNGFS.OpenKey('SOFTWARE\NGFS', FALSE) then begin
     RegNGFS.ReadCardinal('MaxSteps');
     MinSteps:= RegNGFS.ReadCardinal('MinSteps');
     StopOUT:= RegNGFS.ReadCardinal('StopOUT');
     StopIN:= RegNGFS.ReadCardinal('StopIN');
     COMPort:= RegNGFS.ReadString('COMPort');
     end;
     finally
     RegNGFS.Free;
 end;
 
 procedure WriteRegistry( );
 
 //Procedimiento para escribir el registro//
 
 begin
     try
     RegNGFS:= TRegistry.Create;
     RegNGFS.RootKey := HKEY_LOCAL_MACHINE;
     if RegNGFS.OpenKey('SOFTWARE\NGFS', TRUE) then begin
     RegNGFS.WriteCardinal('MaxSteps', MaxSteps);
     RegNGFS.WriteCardinal('MinSteps', MinSteps);
     RegNGFS.WriteCardinal('StopOUT', StopOUT);
     RegNGFS.WriteCardinal('StopIN', StopIN);
     RegNGFS.WriteString('COMPort', COMPort);
     end;
     finally
     RegNGFS.Free;
 end;
 
 end.
Responder Con Cita