Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Scan and Merge INI Files

0.00/5 (No votes)
25 May 2000 1  
A free tool to merge INI files, check for common INI file mistakes, and quickly determine how two INI files differ.
  • Download source files - 21 Kb
  • Introduction

    This utility was written late at night at a customer site to help me determine the difference between INI settings on a machine that was configured correctly and a machine that was not executing an application correctly. Originally, it just sorted two INI files so that they could easily be compared using Windiff.exe.

    It has been expanded to do the following additional tasks:

    • Find syntax errors related to comment fields in an INI file.
    • Find duplicate section blocks in an INI file.
    • Find duplicate keys within section blocks of an INI file.
    • Sort INI files so that you can use Windiff.exe to see how they differ.
    • Merge two INI files into a third.
    • Replace system paths like "C:\Windows\" with "C:\Winnt\" when it is appropriate.


    How to use it

    Just run the exe from a command line to see example usage and documentation. The basic format is as follows:

    C:\Mytools\MergeINIFiles.exe "C:\DominantFile.INI C:\Suplimental.INI C:\Merged.INI"
    

    Because we mostly launch this tool via InstallShield, there is no GUI, unless the files contain errors or the parameters are incorrect.


    Technology used

    The INI files are read as text files so that comments are included in the result set. The program is a simple, CFile reads the text, CArray holds the text and CMap compares the text.


    Summary

    I maintain no rights or restrictions on this code. It was not plagiarized from any other source. This utility was written using a Wizard generated SDI framework. It was created using VC 5.0.


    License

    This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

    A list of licenses authors might use can be found here