rubem,

fiz oq vc disse mas nao entendi "a convenção de chamada para stdcall"

como assim?



2008/7/2 Rubem Nascimento da Rocha <[EMAIL PROTECTED]>:

>
> No projeto que chama a DLL, a forma de declaração está errada.
>
> Vc fez assim:
>
> function cripto(texto :widestring): wideString; external 'cript.dll';
>
> Mas deveria ter feito assim:
> function cripto(texto :widestring): wideString; stdcall; external
> 'cript.dll';
>
> Mais uma coisa, no código fonte vc tb não definiu a convenção de chamada
> para stdcall. Corrija isso!
>
> Sds.
>
> ________________________________
>
> To: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br>
> From: [EMAIL PROTECTED] <govoni.felipe%40gmail.com>
> Date: Wed, 2 Jul 2008 08:58:00 -0300
> Subject: Re: [delphi-br] dll - access violation
>
>
> ja tentei como widestring e tambem nao funcionou.
>
> eis o codigo:
>
> no projeto onde chama a dll declarei assim:
>
> function cripto(texto :widestring):wideString;external 'cript.dll';
>
> e no botao:
> WriteLn(arquivo, cripto(edit1.Text));
>
> o codigo da dll:
>
> function ValorAsc(Letra: String): Byte;
> begin
> if Length(letra)> 0 then ValorAsc := Ord(Letra[1]) else ValorAsc := 0;
> end;
>
> function Cripto(Texto: wideString): wideString; export; stdcall;
> var
> Cont, Cod: Integer;
> Retorna: String;
> begin
> for Cont := 1 to Length(Texto) do begin
> Cod := ValorAsc(Copy(Texto, Cont, 1));
> Retorna := Retorna + Chr(Cod + 57(*valor a ser adicionado - pode ser
> modificado*));
> end;
> Cripto := Retorna;
> end;
>
> function DesCripto(Texto: widestring): widestring; export; stdcall;
> var
> Cont, Cod: integer;
> Retorna: String;
> begin
> for Cont := 1 to Length(Texto) do begin
> Cod := ValorAsc(Copy(Texto, Cont, 1));
> Retorna := Retorna + Chr(Cod - 57);
> end;
> DesCripto := Retorna;
> end;
>
> --
> Felipe Govoni
> ---------------------
> Programador
> Fone 8472-8718
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> __________________________________________________________
> Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
> http://www.amigosdomessenger.com.br/
>  
>



-- 
Felipe Govoni
---------------------
Programador
Fone 8472-8718


[As partes desta mensagem que não continham texto foram removidas]

Responder a