Ver Mensaje Individual
  #1  
Antiguo 09-01-2009
Avatar de rastafarey
rastafarey rastafarey is offline
Miembro
 
Registrado: nov 2003
Posts: 927
Reputación: 21
rastafarey Va por buen camino
$L .Obj no funciona

problemas para linkear un obj c++ a delphi 2007

Aqui el que produce el archivo c_obj.obj escrito y compliado en c++

c_obj.cpp
Código PHP:
extern "C" int _stdcall suma(int aint b);

int _stdcall suma(int aint b) { return (b); } 
Unidad.pas
Código Delphi [-]
unit Unidad;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm2 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

{$L c_obj.obj}

Function suma(a, b: integer): Integer; StdCall; external;

procedure TForm2.Button1Click(Sender: TObject);
begin
  Caption := IntToStr(Suma(1, 2));
end;

end.

he aqui el error
[Pascal Error] Unidad.pas(28): E2065 Unsatisfied forward or external declaration: 'suma'

Alquien sabe por que este codigo no funciona si deberiaf uncionar.

Aqui es un link a la misma pagiana de codegear jemplo donde hay un ejemplo que no funciona.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa.
Responder Con Cita