li sobre esse erro e ja troquei para shortstring mas nao adiantou, sera que esqueci de mais alguma coisa?
2008/7/1 Rubem Nascimento da Rocha <[EMAIL PROTECTED]>: > > Duas coisas: > > 1) Troque o tipo do parâmetro Texto de string para ShortString ou > WideString e recompile a DLL; > > 2) Informe-se sobre as regras para o uso de parâmetros literais(string) em > funções exportadas de DLLs escritas em Delphi, pois vc não atentou para > alguns detalhes a respeito disto! > > Sds. > > ________________________________ > > To: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br> > From: [EMAIL PROTECTED] <govoni.felipe%40gmail.com> > Date: Tue, 1 Jul 2008 16:39:27 -0300 > Subject: [delphi-br] dll - access violation > > > boa tarde galera > > estou tentando criar uma dll pra criptografar dados > mas quando tento compilar o projeto q chama essa dll da um erro de acces > violation > ja coloquei a dll na pasta do projeto e mesmo assim nao fuinciona. > > 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: String): String; 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; > > e o codigo q chama a dll > > function cripto(texto :string):string;external 'cript.dll'; > > procedure TfrmNovo.BitBtn1Click(Sender: TObject); > var > nome: string; > Arquivo: TextFile; > begin > nome := 'C:\finalcard\data\cadpers.prs'; > > AssignFile(Arquivo, nome); > > if FileExists(nome) then > Append(arquivo) { se existir, apenas adiciona linhas } > else > ReWrite(arquivo); { cria um novo se não existir } > try > WriteLn(arquivo, cripto(edit1.Text)); > WriteLn(arquivo, formatdatetime('dd-mm-yyyy',now)); > WriteLn(arquivo, '-------'); > finally > CloseFile(arquivo) > end; > > alguem sabe oq pode ser? > > -- > Felipe Govoni > --------------------- > Programador > Fone 8472-8718 > > __________________________________________________________ > Receba GRÁTIS as mensagens do Messenger no seu celular quando você estiver > offline. Conheça o MSN Mobile! > http://mobile.live.com/signup/signup2.aspx?lc=pt-br > > -- Felipe Govoni --------------------- Programador Fone 8472-8718 [As partes desta mensagem que não continham texto foram removidas]