Solved

ini file reading

Posted on 2006-06-20
8
345 Views
Last Modified: 2010-05-18
Hello all

I have an application that needs to read an ini file.

It needs to compare a number (a count) from an SQL statement to a number stored in the ini file. The number in the ini file will be stored next to an identifier such as  'client=3' and if possible i want to set how many places along the string the number will be in the ini file eg 'client=12*3*456' so the number i want for comparrison is still number 3

any help appreciated
0
Comment
Question by:Paul-Brooks
8 Comments
 
LVL 14

Expert Comment

by:DragonSlayer
ID: 16940952
i don't get you :-(
0
 

Author Comment

by:Paul-Brooks
ID: 16940969
OK

If i have an ini file that contains the line client=3, how do i read that in my delphi app and as a secondary question can i hide that number(the 3) in a string and count the places to find it as a sort of encryption

Cheers
0
 
LVL 4

Accepted Solution

by:
David_Ward earned 500 total points
ID: 16941028
uses TiniFiles;

Function GetMyINI_Data(IniFname,SectionName,KeyName: String): Integer;
var
  ThisINI:    TIniFile;
  s1:           String;
begin
  result:=-1;
  ThisINI:=TiniFile.Create(IniFname);

  try
    s1:=ThisINI.ReadString(SectionName,KeyName,'-1');
    if s1<>'-1'  then
      begin
          result:=StrToIntDef(s1,-2);

          // decode "whatever" you did to encode the number before you saved it in the INI file

      end;

   
  finally
    ThisINI.free;
   
  end;

end;
0
 
LVL 4

Expert Comment

by:David_Ward
ID: 16941033
// decode "whatever" you did to encode the number before you saved it in the INI file
// i.e.
result:=(result div 12) div 456;
0
Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

 
LVL 4

Expert Comment

by:David_Ward
ID: 16941052
>>if possible i want to set how many places along the string the number will be in the ini file eg 'client=12*3*456' so the number i want for comparrison is still number 3

I really would not bother with something like this, I would just mathematically alter the number according to -some- formula

Some.INI
[Some.Section]
Client=16416

// 16416/12/456=3


0
 
LVL 10

Expert Comment

by:atul_parmar
ID: 16941065
Or to decode the hidden number from string you can use
  s := '12*3*456';
  s := Copy(s, pos('*', s)+1, length(s));
  s := copy(s, 1, pos('*', s)-1);
0
 

Author Comment

by:Paul-Brooks
ID: 16941103
David

I am using Delphi 2005 and when i put the TiniFiles in the uses, the project will not compile with a cant resolve unit name error

0
 
LVL 4

Expert Comment

by:David_Ward
ID: 16941140
yea, sorry, the unit name is;

IniFiles

not "T"
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
In my programming career I have only very rarely run into situations where operator overloading would be of any use in my work.  Normally those situations involved math with either overly large numbers (hundreds of thousands of digits or accuracy re…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now