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]