Jump to content
Fórum Script Brasil
  • 0
Sign in to follow this  
NöU@

(Resolvido) Função para ler INI

Question

5 answers to this question

Recommended Posts

  • 0
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 ajudar

Outras formas de se usar arquivos INI

http://www.devmedia.com.br/articles/viewcomp.asp?comp=304

http://www.guiadodelphi.com.br/ler.php?codigo=261

http://www.devmedia.com.br/articles/viewcomp.asp?comp=2965

http://www.plugmasters.com.br/sys/materias...onfigura%E7%E3o

http://www.activedelphi.com.br/print.php?sid=389

abraço

Share this post


Link to post
Share on other sites
  • 0

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ódigo

mas não sei se está certo....Se ele tiver certo, como eu faço para usá-lo??

Share this post


Link to post
Share on other sites
  • 0
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 depois

library 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

Share this post


Link to post
Share on other sites
  • 0
Esse é o meu código

mas não sei se está certo....Se ele tiver certo, como eu faço para usá-lo??

[email protected], 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

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  



  • Forum Statistics

    • Total Topics
      148582
    • Total Posts
      644298
×
×
  • Create New...