Robert
Robert

Reputation: 21

In RAD Studio what is the a file that contains the Delphi library paths?

In RAD Studio version 12.1 under the Tools -> Options -> Language -> Delphi -> Library there is a text box labeled Library Path. If I click the button to the right of the textbox it opens a popup with a list of paths that can be added or removed.

Is there a file in Delphi that holds that information and can that file be updated externally?

I have a lot of paths that I need to add and it would be much easier to copy them into a file rather than selecting the path, and clicking add for each one.

I couldn't find anything about this on the Embarcadero website. I looked to see if there were any files that had a name that sounded like it might hold this kind of data but could not find anything.

I just want to know if it is possible and what file

Upvotes: 1

Views: 81

Answers (2)

Robert
Robert

Reputation: 21

The information is in a the

c:\Users\username\AppData\Roaming\Embarcadero\BDS\23.0\EnvOptions.proj

file but that file is updated by the values in the Registry. If you make any changes to the EnvOptions.proj file they will be lost.

In RegEdit navigate to: Computer\HKEY_CURRENT_USER\Software\Embarcadero\BDS\23.0\Library\

Depending on which Operating System you want to use these paths (in my case it is Win32) then append that Operating System path to the end of the above path.

In the keys for that path go to Search Path and right click and then click Modify. All of the paths are stored in the Value Data string. You can add or remove them from this string. Each path terminates with a semi-colon ;. There are no carriage returns or line feeds or any other special characters. It is all one long string separated by semi-colons.

The order the path is in that string is the order it is displayed in this list:

enter image description here

Upvotes: 0

Jan Doggen
Jan Doggen

Reputation: 9106

The data is in

c:\Users\username\AppData\Roaming\Embarcadero\BDS\23.0\EnvOptions.proj

Here are the file contents in my configuration (note the separate settings (Condition="'$(Platform)'==') for Win32 and Win64 library paths):

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ProjectExtensions>
        <Borland.Personality>Environment.Personality.12</Borland.Personality>
        <Borland.ProjectType/>
        <BorlandProject>
            <Environment.Personality/>
        </BorlandProject>
        <ProjectFileVersion>12</ProjectFileVersion>
    </ProjectExtensions>
    <PropertyGroup/>
    <PropertyGroup Condition="'$(Platform)'=='Win64'">
        <DefaultPlatformSDK/>
        <DefaultProfile/>
        <ENV_PF_KeyStore/>
        <ENV_PF_KeyStorePass/>
        <ENV_PF_UWPTimeStampURL/>
        <ENV_PF_KeyStoreSubject/>
        <ENV_PF_UWPDistributionType/>
        <DelphiDCPOutput>$(BDSCOMMONDIR)\Dcp\$(Platform)</DelphiDCPOutput>
        <DelphiLibraryPath>C:\DelphiLibs\RBuilder\Source;C:\DelphiLibs\RBuilder\Lib\Win64;$(BDSLIB)\$(Platform)\release;$(BDSUSERDIR)\Imports\$(Platform);$(BDS)\Imports;$(BDSCOMMONDIR)\Dcp\$(Platform);$(BDS)\include;$(DXVCL)\Library\RS29\Win64;c:\DelphiLibs\TimeTell;c:\DelphiLibs\TimeTell\TTLib;c:\DelphiLibs\TimeTell\DataFox;C:\DelphiLibs\SQLDirect\Source;C:\DelphiLibs\PlusMemo;C:\DelphiLibs\Pascal Script\Source;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Dcu\D29\Win64;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source\DataSnap;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source\Grijjy;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source\Synapse;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source\ZLib;C:\DelphiLibs\Scalabium\SMExport\Sources;C:\DelphiLibs\Scalabium\SMImport\Sources;c:\DelphiLibs\nSoftware\IPWorks 2022 Delphi Edition\pas;c:\DelphiLibs\nSoftware\IPWorks Auth 2022 Delphi Edition\pas;c:\DelphiLibs\nSoftware\IPWorks Encrypt 2022 Delphi Edition\pas;c:\DelphiLibs\nSoftware\IPWorks OpenPGP 2022 Delphi Edition\pas;c:\DelphiLibs\nSoftware\IPWorks SSH 2022 Delphi Edition\pas;c:\DelphiLibs\nSoftware\IPWorks ZIP 2022 Delphi Edition\pas;C:\DelphiLibs\VirtualUI\dev\Delphi;$(BDSCatalogRepository)\QuickLib-2.2\;$(BDSCatalogRepository)\QuickLogger-1.45\;C:\DelphiLibs\Multilizer\LocalizationComponentsXEx_64bit;C:\DelphiLibs\CEF4Delphi-master\source</DelphiLibraryPath>
        <DelphiBrowsingPath>$(BDS)\OCX\Servers;$(BDS)\SOURCE\VCL;$(BDS)\source\rtl\common;$(BDS)\SOURCE\RTL\SYS;$(BDS)\source\rtl\win;$(BDS)\source\rtl\win\winrt;$(BDS)\source\ToolsAPI;$(BDS)\SOURCE\IBX;$(BDS)\source\Internet;$(BDS)\SOURCE\PROPERTY EDITORS;$(BDS)\source\soap;$(BDS)\SOURCE\XML;$(BDS)\source\Indy10\Core;$(BDS)\source\Indy10\System;$(BDS)\source\Indy10\Protocols;$(BDS)\source\fmx;$(BDS)\source\databinding\components;$(BDS)\source\databinding\engine;$(BDS)\source\databinding\graph;$(BDS)\source\data;$(BDS)\source\data\ado;$(BDS)\source\data\cloud;$(BDS)\source\data\datasnap;$(BDS)\source\data\dbx;$(BDS)\source\data\dsnap;$(BDS)\source\data\vclctrls;$(BDS)\source\data\datasnap\connectors;$(BDS)\source\data\datasnap\proxygen;$(BDS)\source\DataExplorer;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common\dunit;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit;$(BDS)\source\DUnit\src;$(BDS)\source\DUnit\tests;$(BDS)\source\Experts;$(BDS)\source\indy\abstraction;$(BDS)\source\indy\implementation;$(BDS)\source\indyimpl;$(BDS)\source\Property Editors\Indy10;$(BDS)\source\soap\wsdlimporter;$(BDS)\source\Visualizers;$(BDS)\source\DUnit\Contrib\XMLReporting;$(BDS)\source\DUnit\Contrib\XPGen;$(BDS)\source\data\rest;$(BDS)\source\data\firedac;$(BDS)\source\tethering;$(BDS)\source\DUnitX;$(BDS)\source\data\ems;$(BDS)\source\rtl\net;$(BDS)\source\FlatBox2D;$(BDSCOMMONDIR)\Dcp\$(PLATFORM);$(DXVCL)\ExpressCore Library\Sources;$(DXVCL)\ExpressCommon Library\Sources;$(DXVCL)\ExpressGDI+ Library\Sources;$(DXVCL)\ExpressLibrary\Sources;$(DXVCL)\XP Theme Manager\Sources;$(DXVCL)\ExpressLayout Control\Sources;$(DXVCL)\ExpressPageControl\Sources;$(DXVCL)\ExpressEditors Library\Sources;$(DXVCL)\ExpressDocking Library\Sources;$(DXVCL)\ExpressBars\Sources;$(DXVCL)\ExpressOfficeCore Library\Sources;$(DXVCL)\ExpressSpreadSheet Core\Sources;$(DXVCL)\ExpressTile Control\Sources;$(DXVCL)\ExpressWizard Control\Sources;$(DXVCL)\ExpressSpreadSheet\Sources;$(DXVCL)\ExpressExport Library\Sources;$(DXVCL)\ExpressCharts\Sources;$(DXVCL)\ExpressScheduler\Sources;$(DXVCL)\ExpressQuantumTreeList\Sources;$(DXVCL)\ExpressVerticalGrid\Sources;$(DXVCL)\ExpressMemData\Sources;$(DXVCL)\ExpressSpellChecker\Sources;$(DXVCL)\ExpressDataController\Sources;$(DXVCL)\ExpressNavBar\Sources;$(DXVCL)\ExpressSkins Library\Sources;$(DXVCL)\ExpressPrinting System\Sources;$(DXVCL)\ExpressPivotGrid\Sources;$(DXVCL)\ExpressDBTree Suite\Sources;$(DXVCL)\ExpressOrgChart\Sources;$(DXVCL)\ExpressFlowChart\Sources;$(DXVCL)\ExpressMap Control\Sources;$(DXVCL)\ExpressQuantumGrid\Sources;$(DXVCL)\ExpressGantt Control\Sources;$(DXVCL)\ExpressRichEdit Control\Sources;$(DXVCL)\ExpressGauge Control\Sources;$(DXVCL)\ExpressPDFViewer\Sources;$(DXVCL)\ExpressEntityMapping Framework\Sources</DelphiBrowsingPath>
        <DelphiNamespaceSearchPath/>
        <DelphiDebugDCUPath>$(BDSLIB)\$(Platform)\debug</DelphiDebugDCUPath>
        <DelphiDLLOutputPath>$(BDSCOMMONDIR)\Bpl\$(Platform)</DelphiDLLOutputPath>
        <DelphiHPPOutputPath>$(BDSCOMMONDIR)\hpp\$(Platform)</DelphiHPPOutputPath>
        <DelphiTranslatedLibraryPath>$(BDSLIB)\$(Platform)\release\$(LANGDIR)</DelphiTranslatedLibraryPath>
        <DelphiTranslatedDebugLibraryPath>$(BDSLIB)\$(Platform)\debug\$(LANGDIR)</DelphiTranslatedDebugLibraryPath>
        <DelphiTranslatedResourcePath>$(BDSLIB)\$(Platform)\release\$(LANGDIR)</DelphiTranslatedResourcePath>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Platform)'=='Win64x'">
        <DefaultPlatformSDK/>
        <DefaultProfile/>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Platform)'=='Win32'">
        <DefaultPlatformSDK/>
        <DefaultProfile/>
        <ENV_PF_KeyStore/>
        <ENV_PF_KeyStorePass/>
        <ENV_PF_UWPTimeStampURL/>
        <ENV_PF_KeyStoreSubject/>
        <ENV_PF_UWPDistributionType/>
        <DelphiDCPOutput>$(BDSCOMMONDIR)\Dcp</DelphiDCPOutput>
        <DelphiLibraryPath>c:\program files (x86)\embarcadero\studio\23.0\lib\Win32\release;C:\Users\Jan\Documents\Embarcadero\Studio\23.0\Imports;C:\Users\Jan\Documents\Embarcadero\Studio\23.0\Imports\Win32;c:\program files (x86)\embarcadero\studio\23.0\Imports;C:\Users\Public\Documents\Embarcadero\Studio\23.0\Dcp;c:\program files (x86)\embarcadero\studio\23.0\include;C:\DelphiLibs\DevExpress\VCL\Library\RS29;c:\delphilibs\multilizer\localizationcomponentsxex_64bit\packages\full\bplxe\23.0;C:\DelphiLibs\Multilizer\LocalizationComponentsXEx_64bit;C:\DelphiLibs\RBuilder\Source;C:\DelphiLibs\RBuilder\Lib\Win32;c:\delphilibs\plusmemo;c:\delphilibs\pascal script\dcu\d28\win32;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Dcu\D29\Win32;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source\DataSnap;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source\Grijjy;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source\Synapse;C:\DelphiLibs\RemObjects Software\RemObjects SDK for Delphi\Source\ZLib;C:\Program Files (x86)\RemObjects Software\Everwood\Bin;C:\DelphiLibs\CEF4Delphi-master\source;C:\Users\Jan\Documents\Embarcadero\Studio\23.0\CatalogRepository\QuickLib-2.2\;C:\Users\Jan\Documents\Embarcadero\Studio\23.0\CatalogRepository\QuickLogger-1.45\</DelphiLibraryPath>
        <DelphiBrowsingPath>$(BDS)\OCX\Servers;$(BDS)\SOURCE\VCL;$(BDS)\source\rtl\common;$(BDS)\SOURCE\RTL\SYS;$(BDS)\source\rtl\win;$(BDS)\source\rtl\win\winrt;$(BDS)\source\ToolsAPI;$(BDS)\SOURCE\IBX;$(BDS)\source\Internet;$(BDS)\SOURCE\PROPERTY EDITORS;$(BDS)\source\soap;$(BDS)\SOURCE\XML;$(BDS)\source\Indy10\Core;$(BDS)\source\Indy10\System;$(BDS)\source\Indy10\Protocols;$(BDS)\source\fmx;$(BDS)\source\databinding\components;$(BDS)\source\databinding\engine;$(BDS)\source\databinding\graph;$(BDS)\source\data;$(BDS)\source\data\ado;$(BDS)\source\data\cloud;$(BDS)\source\data\datasnap;$(BDS)\source\data\dbx;$(BDS)\source\data\dsnap;$(BDS)\source\data\vclctrls;$(BDS)\source\data\datasnap\connectors;$(BDS)\source\data\datasnap\proxygen;$(BDS)\source\DataExplorer;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common\dunit;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject;$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit;$(BDS)\source\DUnit\src;$(BDS)\source\DUnit\tests;$(BDS)\source\Experts;$(BDS)\source\indy\abstraction;$(BDS)\source\indy\implementation;$(BDS)\source\indyimpl;$(BDS)\source\Property Editors\Indy10;$(BDS)\source\soap\wsdlimporter;$(BDS)\source\Visualizers;$(BDS)\source\DUnit\Contrib\XMLReporting;$(BDS)\source\DUnit\Contrib\XPGen;$(BDS)\source\data\rest;$(BDS)\source\data\firedac;$(BDS)\source\tethering;$(BDS)\source\DUnitX;$(BDS)\source\data\ems;$(BDS)\source\rtl\net;$(BDS)\source\FlatBox2D;$(DXVCL)\ExpressCore Library\Sources;$(DXVCL)\ExpressCommon Library\Sources;$(DXVCL)\ExpressGDI+ Library\Sources;$(DXVCL)\ExpressLibrary\Sources;$(DXVCL)\XP Theme Manager\Sources;$(DXVCL)\ExpressLayout Control\Sources;$(DXVCL)\ExpressPageControl\Sources;$(DXVCL)\ExpressEditors Library\Sources;$(DXVCL)\ExpressDocking Library\Sources;$(DXVCL)\ExpressBars\Sources;$(DXVCL)\ExpressOfficeCore Library\Sources;$(DXVCL)\ExpressSpreadSheet Core\Sources;$(DXVCL)\ExpressTile Control\Sources;$(DXVCL)\ExpressWizard Control\Sources;$(DXVCL)\ExpressSpreadSheet\Sources;$(DXVCL)\ExpressExport Library\Sources;$(DXVCL)\ExpressCharts\Sources;$(DXVCL)\ExpressScheduler\Sources;$(DXVCL)\ExpressQuantumTreeList\Sources;$(DXVCL)\ExpressVerticalGrid\Sources;$(DXVCL)\ExpressMemData\Sources;$(DXVCL)\ExpressSpellChecker\Sources;$(DXVCL)\ExpressDataController\Sources;$(DXVCL)\ExpressNavBar\Sources;$(DXVCL)\ExpressSkins Library\Sources;$(DXVCL)\ExpressPrinting System\Sources;$(DXVCL)\ExpressPivotGrid\Sources;$(DXVCL)\ExpressDBTree Suite\Sources;$(DXVCL)\ExpressOrgChart\Sources;$(DXVCL)\ExpressFlowChart\Sources;$(DXVCL)\ExpressMap Control\Sources;$(DXVCL)\ExpressQuantumGrid\Sources;$(DXVCL)\ExpressGantt Control\Sources;$(DXVCL)\ExpressRichEdit Control\Sources;$(DXVCL)\ExpressGauge Control\Sources;$(DXVCL)\ExpressPDFViewer\Sources;$(DXVCL)\ExpressEntityMapping Framework\Sources</DelphiBrowsingPath>
        <DelphiNamespaceSearchPath/>
        <DelphiDebugDCUPath>$(BDSLIB)\$(Platform)\debug</DelphiDebugDCUPath>
        <DelphiDLLOutputPath>$(BDSCOMMONDIR)\Bpl</DelphiDLLOutputPath>
        <DelphiHPPOutputPath>$(BDSCOMMONDIR)\hpp\$(Platform)</DelphiHPPOutputPath>
        <DelphiTranslatedLibraryPath>$(BDSLIB)\$(Platform)\release\$(LANGDIR)</DelphiTranslatedLibraryPath>
        <DelphiTranslatedDebugLibraryPath>$(BDSLIB)\$(Platform)\debug\$(LANGDIR)</DelphiTranslatedDebugLibraryPath>
        <DelphiTranslatedResourcePath>$(BDSLIB)\$(Platform)\release\$(LANGDIR)</DelphiTranslatedResourcePath>
    </PropertyGroup>
</Project>

and this is in the (32 bits) dialog:

Library path

I have no idea if you can update that file externally. If you try, make sure the IDE is closed, because an open IDE can interfere with registry settings

Upvotes: 1

Related Questions