Registry Settings to INI file settings

Registry Settings to INI file settings

112
Power UserPower User
112

    Aug 18, 2005#1

    In another post, I mentioned I was using Registry based settings. MOFI recommended I use the INI file. Since it seems that something is written to the INI file is written to every time anyway, it seems I might as well.

    Is the INI file completely rewritten every time? That is, is the INI file a "clone" of the registry? If not, how do I get my Registry settings to an INI file?

    Cheerz,
    Paolo

      Aug 24, 2005#2

      Do I take it from the deafening silence that I'm going to have to transfer my settings the hard way? :cry:

      Paolo
      There is no such thing as an inconsistently correct system...
      Therefore, aim for consistency; in the expectation of reaching correctness!

      6,687587
      Grand MasterGrand Master
      6,687587

        Aug 24, 2005#3

        I have tried it now. When activating Use Registry for settings in the general configuration dialog, the current settings in the ini-file are definitively not copied to registry. In the other direction - from registry to ini-file - some settings are copied from registry to the ini-file, but not all - sorry.


        But when you deactivate Use Registry for settings to work with an ini-file, the settings are not deleted in the registry. So first set Allow multiple instances. Then create a backup of uedit32.ini before you deactive the registry option. After deactivation start UltraEdit again with settings loaded from uedit32.ini and a second instance with the /i="<path to ini>\uedit32_backup.ini" command line parameter. So you can compare the settings stored in the ini with the settings stored in the registry.


        Alternatively I have quickly developed an UltraEdit macro, which converts most settings from registry to ini settings. First export with registry editor following registry key with all subkeys:
        [HKEY_CURRENT_USER\Software\IDM Computer Solutions\UltraEdit]

        Important! The export format must be old Win9x style (=ANSI DOS format) and not new UTF-16 format.

        Then open the exported registry-file with UltraEdit and run following macro to convert most of the settings form registry to ini format.

        InsertMode
        ColumnModeOff
        HexOff
        UnixReOff
        Top
        Find "REGEDIT4^p^p"
        IfNotFound
        ExitMacro
        EndIf
        Delete
        Find "[HKEY_CURRENT_USER\Software\IDM Computer Solutions\UltraEdit]^p^p"
        Replace ""
        Find RegExp "^[HKEY_CURRENT_USER\Software\IDM Computer Solutions\UltraEdit\Locks^][~^[]+"
        Replace ""
        Top
        Find "[HKEY_CURRENT_USER\Software\IDM Computer Solutions\UltraEdit\"
        Replace All "["
        Find RegExp "%"^([~"]+^)""
        Replace All "^1"
        Find RegExp "\\"
        Replace All "\"
        Find "dword:00000000"
        Replace All "0"
        Find "dword:00000001"
        Replace All "1"
        Find "dword:00000002"
        Replace All "2"
        Find "dword:00000003"
        Replace All "3"
        Find "dword:00000004"
        Replace All "4"
        Find "dword:00000005"
        Replace All "5"
        Find "dword:00000006"
        Replace All "6"
        Find "dword:00000007"
        Replace All "7"
        Find "dword:00000008"
        Replace All "8"
        Find "dword:00000009"
        Replace All "9"
        Find RegExp "="^([~\"]+^)"$"
        Replace All "=^1"
        Find "="""
        Replace All "="
        Find "Left Delims=""
        Replace "Left Delims="
        Key END
        Key BACKSPACE
        Top
        Find "Right Delims=""
        Replace "Right Delims="
        Key END
        Key BACKSPACE
        Top
        Find "Use Registry=1"
        Replace "Use Registry=0"
        Top

        UnixReOn

        Remove the last red command, if you use regular expression in UltraEdit style by default instead of Unix style - see Advanced - Configuration - Find - Unix style Regular Expressions. UnixReOn/UnixReOff modifies this setting.

        Now most settings are converted. What still must be converted are the hex values greater than 9. It is not possible with the UltraEdit macro language to do a hex to decimal calculation. So you have to do it manually - sorry. Search for all dword: and convert the hex numbers to decimal. You will see, that many hex numbers are used several times. So after converting one number, use a search and replace all to convert all other identical hex numbers.
        Best regards from an UC/UE/UES for Windows user from Austria