Reputation: 21
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
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:
Upvotes: 0
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:
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