Announcement

Collapse
No announcement yet.

Beyond Compare doesn't remember settings

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Beyond Compare doesn't remember settings

    I'm running version 2.3.1. I've installed it on both my work and home computers, and while my work computer's BC installation is able to remember settings, my home computer's BC installation does not.

    On my home computer, I've tried to save changes to the Session Manager and Comparison Control menus, but whenever I quit the program and run it again, the changes are lost. It works fine on my work computer.

    One difference between my home and work computer is that on my work computer, I installed BC using an account (WinXP) that has administrative privileges, and I use the same account to run BC. But on my home computer (Win2000), I installed BC using the administrator account, but I am trying to run BC using a non-administrative user. Would this make a difference?

    Any other ideas? Thanks!

  • #2
    Re: Beyond Compare doesn\'t remember settings

    I run a similar setup, Win2000 Pro. Installed BC2 as an administrator and normally use as a non-administrative user and don't have a problem with settings not being saved. But, in my setup, BC2 stores settings (Rules.bcru and Session.bcse) in the individual user's "C:\Documents and Settings\{user}\Application Data\Scooter Software\Beyond Compare" subdirectory. Are you storing those files in the BC2.EXE subdirectory? If so, do non-administrative users have write access on those files?

    Comment


    • #3
      Re: Beyond Compare doesn\'t remember settings

      I just tried running BC with the administrator account, and the same thing happens -- when I quit and run BC again, all of the settings changes that I made are gone.

      There's no Rules.bcru or Session.bcse in the directory that has BC2.exe. In the administrator's Application Data\Scooter Software\Beyond Compare directory, there's only a Session.bcse file. I don't see a Rules.bcru anywhere.

      Why can't my administrator account have the settings saved?

      Comment


      • #4
        Re: Beyond Compare doesn\'t remember settings

        Does BC recognized that it's registered when you run it as an administrator and as a normal user? I'm not sure that's relevant, but it might provide a clue.

        I also run it both ways on Win2k, and I think it remembers the settings. I have Rules.bcru and Session.bcse in both the administrator's and normal user's Documents and Settings/-/Application Data/Scooter Software/Beyond Compare directories.

        Comment


        • #5
          Re: Beyond Compare doesn\'t remember settings

          Yes, it says it's registered for both users. And neither user has the Rules.bcru file.

          Comment


          • #6
            Re: Beyond Compare doesn\'t remember settings

            Normally BC stores rules and sessions in:
            C:\Documents and Settings\{username}\Application Data\Scooter Software\Beyond Compare\

            The files are: Rules.bcru and Session.bcse. If you haven't changed the rules from the defaults then you won't have a rules.bcru file.

            Is the timestamp on the Session.bcse file updated when you try to save a new session?

            The rest of the preferences for a default install are saved in the registry under:
            HKEY_CURRENT_USER\Software\Scooter Software\Beyond Compare

            All settings for a default install are stored on a per-user basis.

            If your system isn't using the default install, it is possible BC might be storing settings as files in the Beyond Compare 2 program directory. Check "C:\program files\beyond compare 2\" for either BC2.ini or BC2.xml. If either of those files is present, Beyond Compare will store the settings in files in that directory instead of in the user's application data folder and the registry.

            The most likely explanation for the behavior you're seeing is if the BC2.ini or BC2.xml files are present and they are set read-only. Otherwise changes should be saved.
            Chris K Scooter Software

            Comment


            • #7
              Re: Beyond Compare doesn\'t remember settings

              OK, I haven't edited any of the rules, so that explains why I don't have a Rules.bcru for either of my users.

              The Session.bcse file's timestamp gets updated every time I quit BC, even if I don't try to save a session.

              And I do not see a BC2.ini or BC2.xml file in my 'D:\Program Files\Beyond Compare 2' directory. I guess that's the other difference between my home machine and my work machine. At work, it's installed on the C drive. At home, it's installed on the D drive.

              Not sure why this isn't working.

              Comment


              • #8
                Re: Beyond Compare doesn\'t remember settings

                My default installation is on Drive F:, so the location should not be a problem.

                Do you by any chance have more than one instance of bc2.exe installed in different location/directories?

                If you run "regedit" as that non-administrative user, do you see any subkeys/values under the "HKEY_CURRENT_USER\Software\Scooter Software\Beyond Compare" registry key? If not, can you create a subkey or add values to the existing subkey?

                Comment


                • #9
                  Re: Beyond Compare doesn\'t remember settings

                  I can only find one instance of BC2.exe. And I do see a bunch of keys under 'HKEY_CURRENT_USER\Software\Scooter Software\Beyond Compare' when I run regedit with the non-admin user.

                  Comment


                  • #10
                    Re: Beyond Compare doesn\'t remember settings

                    I'm still not sure why your settings aren't being saved, but it might be worth configuring BC to save your settings as xml instead of in the registry and in the application data directory.

                    Create an empty text file named:
                    D:\Program Files\Beyond Compare 2\BC2.xml

                    This will force BC to store your settings as the XML files: BC2.xml, Rules.xml, and Sessions.xml.

                    Hopefully using the XML mode will allow you to preserve changes you've made to your settings.
                    Chris K Scooter Software

                    Comment


                    • #11
                      Re: Beyond Compare doesn\'t remember settings

                      OK, I tried to wipe my computer clean of everything BC 2.3.1, because I did have a previous evaluation copy of BC 2.1.something installed (which I had uninstalled before I installed BC 2.3.1, but maybe some registry settings were left over?). So I uninstalled BC 2.3.1, deleted the Scooter Software folders under the Application Data directory, and deleted the Scooter Software registry keys. Then I re-installed BC 2.3.1 and went thru that wizard that appears after an installation. I still couldn't get BC to remember its settings.

                      So then I tried what you suggested, about creating an empty D:\Program Files\Beyond Compare 2\BC2.xml. When I ran BC, I went thru the wizard again, made my settings changes and quit. I noticed that the BC2.xml now had stuff in it, and there was also a Sessions.xml in the folder. I also noticed a Rules.bcru in the Application Data folder, which had never shown up before. But when I ran BC again, it still didn't remember the settings!

                      Here's what's in my Sessions.xml:

                      <bc_settings>
                      <sessions>
                      <list name="!untitled!%07">
                      <str_val name="1" value=""/>
                      <str_val name="2" value=""/>
                      <int_val name="RO" value="0"/>
                      <int_val name="Expand" value="0"/>
                      <int_val name="ExpandDiffs" value="0"/>
                      <int_val name="Auto" value="1"/>
                      <int_val name="Readonly" value="0"/>
                      <int_val name="UseCutoff" value="0"/>
                      <int_val name="CutoffNew" value="0"/>
                      <int_val name="UseDaysAgo" value="0"/>
                      <int_val name="DaysAgo" value="0"/>
                      <int_val name="CutoffLo" value="0"/>
                      <int_val name="CutoffHi" value="0"/>
                      <int_val name="Tolerance" value="2"/>
                      <int_val name="LeftAdjustLo" value="0"/>
                      <int_val name="LeftAdjustHi" value="0"/>
                      <int_val name="RightAdjustLo" value="0"/>
                      <int_val name="RightAdjustHi" value="0"/>
                      <int_val name="IncludeAttrib" value="0"/>
                      <int_val name="ExcludeAttrib" value="0"/>
                      <int_val name="SizeFilterMode" value="0"/>
                      <int_val name="Criteria" value="11"/>
                      <int_val name="Display" value="127"/>
                      <int_val name="SortBy" value="0"/>
                      <str_val name="Cols" value="n190s61t124"/>
                      </list>
                      </sessions>
                      </bc_settings>

                      Here's what's in my BC2.xml:

                      <bc_settings>
                      <preferences>
                      <key name="Settings">
                      <int_val name="ConfigMode" value="2"/>
                      <int_val name="ContextFlags" value="827392058"/>
                      </key>
                      <key name="FolderViewer">
                      <int_val name="LastFilter" value="38689"/>
                      <key name="Toolbars">
                      <key name="DisplayFilterBar">
                      <str_val name="Rev" value="2000"/>
                      <str_val name="Visible" value="1"/>
                      <str_val name="DockedTo" value="TBDock1"/>
                      <str_val name="LastDock" value="TBDock1"/>
                      <str_val name="DockRow" value="1"/>
                      <str_val name="DockPos" value="1"/>
                      <str_val name="FloatLeft" value="0"/>
                      <str_val name="FloatTop" value="0"/>
                      <str_val name="FloatRightX" value="0"/>
                      </key>
                      <key name="ViewBar">
                      <str_val name="Rev" value="2000"/>
                      <str_val name="Visible" value="1"/>
                      <str_val name="DockedTo" value="TBDock1"/>
                      <str_val name="LastDock" value="TBDock1"/>
                      <str_val name="DockRow" value="1"/>
                      <str_val name="DockPos" value="3"/>
                      <str_val name="FloatLeft" value="0"/>
                      <str_val name="FloatTop" value="0"/>
                      <str_val name="FloatRightX" value="0"/>
                      </key>
                      <key name="ActionBar">
                      <str_val name="Rev" value="2000"/>
                      <str_val name="Visible" value="1"/>
                      <str_val name="DockedTo" value="TBDock1"/>
                      <str_val name="LastDock" value="TBDock1"/>
                      <str_val name="DockRow" value="1"/>
                      <str_val name="DockPos" value="2"/>
                      <str_val name="FloatLeft" value="0"/>
                      <str_val name="FloatTop" value="0"/>
                      <str_val name="FloatRightX" value="0"/>
                      </key>
                      <key name="SessionBar">
                      <str_val name="Rev" value="2000"/>
                      <str_val name="Visible" value="1"/>
                      <str_val name="DockedTo" value="TBDock1"/>
                      <str_val name="LastDock" value="TBDock1"/>
                      <str_val name="DockRow" value="2"/>
                      <str_val name="DockPos" value="0"/>
                      <str_val name="FloatLeft" value="0"/>
                      <str_val name="FloatTop" value="0"/>
                      <str_val name="FloatRightX" value="0"/>
                      </key>
                      <key name="FileFilterBar">
                      <str_val name="Rev" value="2000"/>
                      <str_val name="Visible" value="1"/>
                      <str_val name="DockedTo" value="TBDock1"/>
                      <str_val name="LastDock" value="TBDock1"/>
                      <str_val name="DockRow" value="2"/>
                      <str_val name="DockPos" value="2"/>
                      <str_val name="FloatLeft" value="0"/>
                      <str_val name="FloatTop" value="0"/>
                      <str_val name="FloatRightX" value="0"/>
                      </key>
                      <key name="WindowsBar">
                      <str_val name="Rev" value="2000"/>
                      <str_val name="Visible" value="0"/>
                      <str_val name="DockedTo" value="TBDock1"/>
                      <str_val name="LastDock" value="TBDock1"/>
                      <str_val name="DockRow" value="2"/>
                      <str_val name="DockPos" value="652"/>
                      <str_val name="FloatLeft" value="0"/>
                      <str_val name="FloatTop" value="0"/>
                      <str_val name="FloatRightX" value="0"/>
                      </key>
                      <key name="MainMenuBar">
                      <str_val name="Rev" value="2000"/>
                      <str_val name="Visible" value="1"/>
                      <str_val name="DockedTo" value="TBDock1"/>
                      <str_val name="LastDock" value="TBDock1"/>
                      <str_val name="DockRow" value="0"/>
                      <str_val name="DockPos" value="0"/>
                      <str_val name="FloatLeft" value="0"/>
                      <str_val name="FloatTop" value="0"/>
                      <str_val name="FloatRightX" value="0"/>
                      </key>
                      <key name="PathBar">
                      <str_val name="Rev" value="2000"/>
                      <str_val name="Visible" value="1"/>
                      <str_val name="DockedTo" value="PathDock"/>
                      <str_val name="LastDock" value="PathDock"/>
                      <str_val name="DockRow" value="3"/>
                      <str_val name="DockPos" value="0"/>
                      <str_val name="FloatLeft" value="0"/>
                      <str_val name="FloatTop" value="0"/>
                      <str_val name="FloatRightX" value="0"/>
                      </key>
                      </key>
                      <str_val name="Font" value=""/>
                      <int_val name="MatchingColor" value="0"/>
                      <int_val name="OlderThanColor" value="8421376"/>
                      <int_val name="OrphanColor" value="16711680"/>
                      <int_val name="NewerColor" value="255"/>
                      <int_val name="OlderColor" value="8421504"/>
                      <int_val name="FolderStampColor" value="12632256"/>
                      <int_val name="BGColor" value="-16777211"/>
                      <int_val name="SelectedBG" value="13434828"/>
                      <bool_val name="ClassicIcons" value="0"/>
                      <bool_val name="UseStripes" value="1"/>
                      <int_val name="StripeColor" value="15792368"/>
                      <int_val name="LogColor" value="13295817"/>
                      <bool_val name="ColoredFolders" value="1"/>
                      <int_val name="DisplayFilterStyle" value="0"/>
                      <int_val name="DisplayFilters" value="0"/>
                      <bool_val name="ShowEmpties" value="0"/>
                      <bool_val name="SimilarAreExact" value="0"/>
                      <key name="Menu"/>
                      <int_val name="LogHeight" value="71"/>
                      <bool_val name="DragLocked" value="0"/>
                      <str_val name="FormPos" value="66,66,666,477,3,2,96"/>
                      </key>
                      <key name="FileViewer"/>
                      <key name="FTP">
                      <key name="Passwords"/>
                      <key name="WebEquiv"/>
                      </key>
                      <key name="Snapshot"/>
                      <key name="Scripting"/>
                      <key name="OpenWith">
                      <key name="Menu"/>
                      </key>
                      <key name="Filters"/>
                      <key name="Recent">
                      <key name="Sessions">
                      <str_val name="1" value="_!untitled!%07"/>
                      </key>
                      <key name="Folders">
                      <key name="Left"/>
                      <key name="Right"/>
                      </key>
                      <key name="FTP"/>
                      <key name="Files">
                      <key name="Left"/>
                      <key name="Right"/>
                      </key>
                      </key>
                      <key name="PickSession"/>
                      <key name="SessionMgr">
                      <str_val name="FormPos" value="71,51,728,521,1,0,96"/>
                      </key>

                      </preferences>
                      </bc_settings>

                      Comment


                      • #12
                        Re: Beyond Compare doesn\'t remember settings

                        What changes are you trying to save in BC?

                        If you save new sessions using the Session|Save As command, do the new saved sessions show up when you use a BC2.xml or BC2.ini file?
                        Chris K Scooter Software

                        Comment


                        • #13
                          Re: Beyond Compare doesn\'t remember settings

                          Yes, if I save a new session, close BC, and re-launch BC, it still shows up in the session manager (and obviously the Sessions.xml gets updated too).

                          But I just want to be able to do the following:

                          - Launch BC
                          - Open the Comparison Control dialog, uncheck "Compare Timestamps" and click on "Binary comparison"
                          - Click on OK, and then go into the Session Manager.
                          - Make the same changes to the <untitled> session by going to the Criteria tab, unchecking "Compare Timestamps" and clicking "Binary comparison", and then clicking the Save button.
                          - But then when I quit and re-launch BC, the changes I made to the Comparison Control and the <untitled> session have reverted back to the original settings.


                          Comment


                          • #14
                            Re: Beyond Compare doesn\'t remember settings

                            Ahh, that's the problem. Unless you click "Use Untitled", your changes don't get loaded into the current session, and when you exit BC, it automatically saves the current session (if it's <untitled>). So exiting BC is overwriting the <untitled> session that you explicitly saved.

                            A better way to change BC's default session settings is to change them the way you like them and then pick "Set Default" from the Session menu.
                            Tim T Scooter Software

                            Comment


                            • #15
                              Re: Beyond Compare doesn\'t remember settings

                              Thanks for all your help, Chris and Tim!

                              Comment

                              Working...
                              X