Home General
New Blog Posts: Merging Reports - Part 1 and Part 2

permissions for rbuilder.ini

edited August 2004 in General
I have an app running on a large number of networked PCs with Windows 2000
or XP and where most of the users have basic security permissions (i.e. not
power users or administrators). When they close the app they get the message
"unable to write to rbuilder.ini". If I change the permission for that file
(in the Windows directory) the problem is solved but to do that on a
machine by machine basis is not practicable. Is there any way of relocating
this file to another directory (such as the user's profile)?

Mike Combellack
Software Experts S.L.

Comments

  • edited August 2004
    Hi Mike,

    The .ini information has the ability to be stored in the Windows Registery
    instead of a file for this very reason. To change this option, you will
    simply need to change the Designer.IniStorageType property to Registery in
    the Object Inspector.

    Note: If you prefer to keep using an actual .ini file, you can adjust the
    IniStorageName property of the designer to point to another directory. This
    directory defaults to the $WINSYS directory.

    --
    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited September 2004
    I'm having similar problems with InfoPower's DBGrid settings...

    The issue here is that each user's ini files are stored in different
    directory names and thus must be set in code.

    I need to do the same with RB's Designer component.

    However you can't set the filename until you have created the component.
    With IP DBGrid, it immediately tries to access the file and, if not found,
    tries to create it. On a 'restricted access' user, this causes an error when
    they do not have read write access to the Windows System directory. To
    overcome this, they have an IniAttributes.Enabled property which you must
    leave False at design time and at runtime you can set the FileName property
    and then set the IniAttributes.Enabled to True after...

    I have users getting an 'Error writing to' error which is being caused by
    insufficient rights being available to INI files in certain directories. I
    think I have cured most of them but am curious to know what happens with RB?

    Can you confirm whether or not RB attempts to write to the Ini file (e.g.
    if no file found, does it create one?) on ppDesigner.Create? In other
    words, is there ANY likelihood of RB attempting to write to the RBuilder.Ini
    file in Windows System directory before we have had a chance to change the
    filename?










  • edited September 2004
    Hi Peter,

    The Designer does not create the .ini file as it is created. The
    TppDesignerWindow.SaveStateInfo is called from the InternalClose procedure,
    meaning that a new .ini file will not be created until you close the
    designer window inside your application.

    --
    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited September 2004
    Thanks for the reply. In fact, the Designer.IniStorageType *was* set to
    Registry - the ini file was still created! However, I recently upgraded to
    the 7.04 version (I had it pending for quite a while!) and the problem
    appears to have gone away. Just for my peace of mind, was this a problem in
    an earlier version that has now been corrected?

    Mike Combellack


  • edited September 2004
    Hi Mike,

    When you use the report designer at Delphi design time, ReportBuilder will
    automatically save your settings down as the rbuilder.ini file. This, you
    do not have control over. The only time the IniSettings are taken into
    account is when the designer is used at run time. If you see the .ini file
    on your computer, it is probably from using the designer at Delphi design
    time.

    --
    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
This discussion has been closed.