NöU@ Postado Março 29, 2008 Denunciar Share Postado Março 29, 2008 Aí pessoal? beleza?To eu de novo aki..saushaushaseu to com um problemanão consigo fazer uma procedure para ler um arquivo INI.ele vai ler 1 numero e 2 strings só que a procedure está numa dll.Alguma Sugestão?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Março 29, 2008 Denunciar Share Postado Março 29, 2008 não consigo fazer uma procedure para ler um arquivo INI.ele vai ler 1 numero e 2 strings só que a procedure está numa dll.coloque o codigo que esta na dll para poder te ajudarOutras formas de se usar arquivos INIhttp://www.devmedia.com.br/articles/viewcomp.asp?comp=304http://www.guiadodelphi.com.br/ler.php?codigo=261http://www.devmedia.com.br/articles/viewcomp.asp?comp=2965http://www.plugmasters.com.br/sys/materias...onfigura%E7%E3ohttp://www.activedelphi.com.br/print.php?sid=389abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 NöU@ Postado Março 29, 2008 Autor Denunciar Share Postado Março 29, 2008 procedure LeINI(var Porta: Integer; var TipoCon: String);Export;stdcall; var ArqINI : TIniFile; const Caminho = (ExtractFilePath(ParamStr(0)) + 'ServerConf.INI'); Begin ArqINI := TINIFile.Create(caminho); try Porta := ArqINI.ReadInteger('Conexão','Porta',0); TipoCon := ArqINI.ReadString('Conexão','TipoCon',''); finally ArqINI.Free; end; end; Exports LeINI;Esse é o meu códigomas não sei se está certo....Se ele tiver certo, como eu faço para usá-lo?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Março 29, 2008 Denunciar Share Postado Março 29, 2008 mas não sei se está certo....Se ele tiver certo, como eu faço para usá-lo??Estou sem tempo agora... passo o resto depoislibrary Path; { Important note about DLL memory management: ShareMem must be the first unit in your library's USES clause AND your project's (select Project-View Source) USES clause if your DLL exports any procedures or functions that pass strings as parameters or function results. This applies to all strings passed to and from your DLL--even those that are nested in records and classes. ShareMem is the interface unit to the BORLNDMM.DLL shared memory manager, which must be deployed along with your DLL. To avoid using BORLNDMM.DLL, pass string information using PChar or ShortString parameters. } uses SysUtils, inifiles, Classes; {$R *.RES} procedure LeINI(var Porta: Integer; var TipoCon: String);stdcall;Export; var ArqINI : TIniFile; Caminho : Pchar; Begin caminho := Pchar(ExtractFilePath(ParamStr(0)) + 'ServerConf.INI'); ArqINI := TINIFile.Create(caminho); try Porta := ArqINI.ReadInteger('Conexão','Porta',0); TipoCon := ArqINI.ReadString('Conexão','TipoCon',''); finally ArqINI.Free; end; end; Exports LeINI; begin end.abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Março 29, 2008 Denunciar Share Postado Março 29, 2008 Esse é o meu códigomas não sei se está certo....Se ele tiver certo, como eu faço para usá-lo??NöU@, acho que ele está quase certo. Tem a penas um restrição quanto ao uso de Strings como parâmetro (talvez alguém possa explicar-lhe melhor).Mas, quanto a esta questão e ao uso, dê uma olhada neste post do Churc e neste outro post do Jhonas.Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 NöU@ Postado Março 30, 2008 Autor Denunciar Share Postado Março 30, 2008 Aí galeraUsei um pouco do que vocês falaram e também desenvolvi um poucoVlw aí pela ajuda!!Resolvido!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
NöU@
Aí pessoal? beleza?
To eu de novo aki..saushaushas
eu to com um problema
não consigo fazer uma procedure para ler um arquivo INI.
ele vai ler 1 numero e 2 strings
só que a procedure está numa dll.
Alguma Sugestão??
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.