Expands environment-variable strings.
Unit
ESysInfo
Syntax
Code (Delphi)
|
function ExpandEnvVars(
const ASource: String;
AGetEnvVariable: TGetEnvVariableFunc = nil
): String; overload;
function ExpandEnvVars(
const ASource: String;
AGetEnvVariable: TGetEnvVariableMethod
): String; overload;
|
Parameters
ASource [in]
A buffer that contains one or more environment-variable strings in the form: %variableName%. For each such reference, the %variableName% portion is replaced with the current value of that environment variable.
Case is ignored when looking up the environment-variable name. If the name is not found, the %variableName% portion will be unchanged.
AGetEnvVariable [in, optional]
An optional environment variable converter.
There are overloads for procedural and method converter.
This function is used to get value of variables. You can supply your own converter to support more variables or change value of existsing ones.
If you don't specify this argument - the default converter will be used (GetEnvVariable).
Return value
ASource buffer with expanded environment variables.
Remarks
Expands environment-variable strings and replaces them with the values defined for the current user. You can override variables by supplying the second argument (AGetEnvVariable)
Note
|
This routine is often replaced in EurekaLog classes to supply extra variables. For example, exception informational class adds support for %_ExceptMsg% variable.
|
Examples
Code (Delphi)
|
ExpandEnvVars('Windows dir: %WinDir%; non-existent var: %something%') =
'Windows dir: C:\Windows\; non-existent var: %something%'
|
See also
Send feedback...
|
Build date: 2024-09-30
Last edited: 2024-09-30
|
PRIVACY STATEMENT
The documentation team uses the feedback submitted to improve the EurekaLog documentation.
We do not use your e-mail address for any other purpose.
We will remove your e-mail address from our system after the issue you are reporting has been resolved.
While we are working to resolve this issue, we may send you an e-mail message to request more information about your feedback.
After the issues have been addressed, we may send you an email message to let you know that your feedback has been addressed.
Permanent link to this article: https://www.eurekalog.com/help/eurekalog/topic_function_esysinfo_expandenvvars.php
|
|