Interface IRuntimeEnvironmentProfile
An immutable description of the host environment an execution session runs in — the facts VBA semantics depend on that are neither in the source nor derivable from it.
public interface IRuntimeEnvironmentProfile
Remarks
Supplied by the environment host (from appsettings.json, overridable by the host). Design-
time and tests use Default.
Properties
AllowDllImports
🎯 Whether a Declare'd library import may actually be called. true unless an
administrator said otherwise.
bool AllowDllImports { get; }
Property Value
AnsiCodePage
The ANSI code page for Byte() ↔ String conversions and the non-Unicode behaviour
of Chr / Asc.
int AnsiCodePage { get; }
Property Value
Culture
The CultureInfo for Lcid — drives Option Compare Text,
Like, Format$, and number / date let-coercion to and from String.
CultureInfo Culture { get; }
Property Value
DatabaseCompare
OptionCompare DatabaseCompare { get; }
Property Value
Remarks
👉 MS-VBAL leaves Option Compare Database unspecified (§5.2.1.1); a module that declares it compares strings as this says.
ErlLineNumbering
🎯 What Erl counts as the line a run-time error was raised at. DocumentLine unless a
workspace asks for MS-VBA's own behaviour.
VBErlLineNumbering ErlLineNumbering { get; }
Property Value
Is64Bit
true for a 64-bit environment. Determines LongPtr width and the value of the
#If Win64 / #If VBA7 pre-compiler directives.
bool Is64Bit { get; }
Property Value
Language
The language the code is written in: what the environment is a dialect of, and so which symbols and statements exist at all.
SupportedLanguage Language { get; }
Property Value
Remarks
👉 RD-VBA unless the workspace says otherwise. It is not derivable from the source, which is why it is a fact of the environment.
Lcid
The environment locale identifier (LCID). 0 means the invariant locale.
int Lcid { get; }
Property Value
SupportsOptionCompareDatabase
true when the host supports the Option Compare Database directive (Microsoft Access).
bool SupportsOptionCompareDatabase { get; }