Sdavis 0 Denunciar post Postado Janeiro 22, 2010 Olá a todos, Não estou conseguindo reproduzir a chamada de uma funcao ( dll) em vb para delphi. 'Declaracao da funcao Declare Function hllapi& Lib "pcshll32.dll" (func&, ByVal DataString$, Length&, RetC&) 'Definicao das variaveis Global dummy As Long Global HllFunctionNo As Long Global HllData As String * 8000 Global HllLength As Long Global HllReturnCode As Long 'Atribuicao de valoreas as variaveis HllFunctionNo = 5 HllData = "" HllLength = 0 HllReturnCode = 0 'Chamando funcado dummy& = hllapi&(HllFunctionNo, HllData, HllLength, HllReturnCode) Grato por qualquer ajuda. Davis Compartilhar este post Link para o post Compartilhar em outros sites
Raficcha 1 Denunciar post Postado Janeiro 22, 2010 Como você esta carregando e chamando as funções da dll no Delphi? Compartilhar este post Link para o post Compartilhar em outros sites
Sdavis 0 Denunciar post Postado Janeiro 23, 2010 Segue abaixo o que estou fazendo: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; Thllapi = function(var i:integer; var par1:string; var par2:integer;var par3: integer):integer; stdcall; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var k: integer; Handle: THandle; myfunc : Thllapi; par1,par3,par4:integer; par2:string; begin par1:=1; par2:='A'; par3:=0; par4:=0; Handle := LoadLibrary('pcshll32.dll'); if Handle <> 0 then begin @myfunc := GetProcAddress(Handle, 'hllapi'); if @myfunc <> nil then begin k := myfunc(par1,par2,par3,par4); end; FreeLibrary(Handle); end; end; end. Como você esta carregando e chamando as funções da dll no Delphi? Compartilhar este post Link para o post Compartilhar em outros sites