24 internal enum LoaderInformation
26 ApplicationBaseValue = 0,
27 ConfigurationFileValue = 1,
30 ApplicationNameValue = 4,
31 PrivateBinPathValue = 5,
32 PrivateBinPathProbeValue = 6,
33 ShadowCopyDirectoriesValue = 7,
34 ShadowCopyFilesValue = 8,
36 LicenseFileValue = 10,
37 DisallowPublisherPolicyValue = 11,
38 DisallowCodeDownloadValue = 12,
39 DisallowBindingRedirectsValue = 13,
40 DisallowAppBaseProbingValue = 14,
41 ConfigurationBytesValue = 0xF,
45 private string[] _Entries;
49 private string _AppBase;
51 [OptionalField(VersionAdded = 2)]
54 [OptionalField(VersionAdded = 2)]
55 private string[] _AppDomainInitializerArguments;
57 [OptionalField(VersionAdded = 2)]
60 [OptionalField(VersionAdded = 2)]
61 private string _ApplicationTrust;
63 [OptionalField(VersionAdded = 2)]
64 private byte[] _ConfigurationBytes;
66 [OptionalField(VersionAdded = 3)]
67 private bool _DisableInterfaceCache;
69 [OptionalField(VersionAdded = 4)]
70 private string _AppDomainManagerAssembly;
72 [OptionalField(VersionAdded = 4)]
73 private string _AppDomainManagerType;
75 [OptionalField(VersionAdded = 4)]
76 private string[] _AptcaVisibleAssemblies;
78 [OptionalField(VersionAdded = 4)]
81 [OptionalField(VersionAdded = 5)]
82 private string _TargetFrameworkName;
85 internal AppDomainSortingSetupInfo _AppDomainSortingSetupInfo;
87 [OptionalField(VersionAdded = 5)]
88 private bool _CheckedForTargetFrameworkName;
90 [OptionalField(VersionAdded = 5)]
91 private bool _UseRandomizedStringHashing;
93 internal string[] Value
99 _Entries =
new string[18];
111 return _AppDomainManagerAssembly;
115 _AppDomainManagerAssembly = value;
125 return _AppDomainManagerType;
129 _AppDomainManagerType = value;
139 return _AptcaVisibleAssemblies;
145 _AptcaVisibleAssemblies = (
string[])value.Clone();
150 _AptcaVisibleAssemblies =
null;
159 [SecuritySafeCritical]
162 return VerifyDir(GetUnsecureApplicationBase(), normalize:
false);
166 Value[0] = NormalizePath(value, useAppBase:
false);
170 internal static string ApplicationBaseKey =>
"APPBASE";
176 [SecuritySafeCritical]
179 return VerifyDir(Value[1], normalize:
true);
187 internal string ConfigurationFileInternal => NormalizePath(Value[1], useAppBase:
true);
189 internal static string ConfigurationFileKey =>
"APP_CONFIG_FILE";
191 private static string ConfigurationBytesKey =>
"APP_CONFIG_BLOB";
199 return _TargetFrameworkName;
203 _TargetFrameworkName = value;
207 internal bool CheckedForTargetFrameworkName
211 return _CheckedForTargetFrameworkName;
215 _CheckedForTargetFrameworkName = value;
225 [SecuritySafeCritical]
228 return VerifyDir(Value[2], normalize:
true);
230 [SecuritySafeCritical]
243 stringBuilder.
Append(
'\\');
244 string value2 = ParseNumbers.IntToString(
ApplicationName.GetLegacyNonRandomizedHashCode(), 16, 8,
'0', 256);
245 stringBuilder.
Append(value2);
246 Value[2] = stringBuilder.
ToString();
250 internal static string DynamicBaseKey =>
"DYNAMIC_BASE";
259 return Value[11] !=
null;
281 return Value[13] !=
null;
303 return Value[12] !=
null;
325 return Value[14] !=
null;
340 internal string DeveloperPath
345 string text = Value[3];
356 string[] array = value.Split(
';');
357 int num = array.Length;
360 for (
int i = 0; i < num; i++)
362 if (array[i].Length != 0)
366 stringBuilder.
Append(
";");
372 stringBuilder.
Append(
Path.GetFullPathInternal(array[i]));
375 string stringAndRelease = StringBuilderCache.GetStringAndRelease(stringBuilder);
376 if (stringAndRelease.Length == 0)
382 Value[3] = stringAndRelease;
387 internal static string DisallowPublisherPolicyKey =>
"DISALLOW_APP";
389 internal static string DisallowCodeDownloadKey =>
"CODE_DOWNLOAD_DISABLED";
391 internal static string DisallowBindingRedirectsKey =>
"DISALLOW_APP_REDIRECTS";
393 internal static string DeveloperPathKey =>
"DEV_PATH";
395 internal static string DisallowAppBaseProbingKey =>
"DISALLOW_APP_BASE_PROBING";
411 internal static string ApplicationNameKey =>
"APP_NAME";
420 return _AppDomainInitializer;
424 _AppDomainInitializer = value;
434 return _AppDomainInitializerArguments;
438 _AppDomainInitializerArguments = value;
450 return _ActivationArguments;
454 _ActivationArguments = value;
467 return InternalGetApplicationTrust();
471 InternalSetApplicationTrust(value);
479 [SecuritySafeCritical]
482 string text = Value[5];
492 internal static string PrivateBinPathKey =>
"PRIVATE_BINPATH";
509 internal static string PrivateBinPathProbeKey =>
"BINPATH_PROBE_ONLY";
515 [SecuritySafeCritical]
518 string text = Value[7];
528 internal static string ShadowCopyDirectoriesKey =>
"SHADOW_COPY_DIRS";
540 if (value !=
null &&
string.Compare(value,
"true",
StringComparison.OrdinalIgnoreCase) == 0)
551 internal static string ShadowCopyFilesKey =>
"FORCE_CACHE_INSTALL";
557 [SecuritySafeCritical]
560 return VerifyDir(Value[9], normalize:
false);
564 Value[9] = NormalizePath(value, useAppBase:
false);
568 internal static string CachePathKey =>
"CACHE_BASE";
574 [SecuritySafeCritical]
577 return VerifyDir(Value[10], normalize:
true);
591 return _LoaderOptimization;
595 _LoaderOptimization = value;
599 internal static string LoaderOptimizationKey =>
"LOADER_OPTIMIZATION";
601 internal static string ConfigurationExtension =>
".config";
603 internal static string PrivateBinPathEnvironmentVariable =>
"RELPATH";
605 internal static string RuntimeConfigurationFile =>
"config\\machine.config";
607 internal static string MachineConfigKey =>
"MACHINE_CONFIG";
609 internal static string HostBindingKey =>
"HOST_CONFIG";
618 return _DisableInterfaceCache;
622 _DisableInterfaceCache = value;
626 [SecuritySafeCritical]
629 string[] value = Value;
632 string[] value2 = copy.Value;
633 int num = _Entries.Length;
634 int num2 = value2.Length;
635 int num3 = (num2 < num) ? num2 : num;
636 for (
int i = 0; i < num3; i++)
638 value[i] = value2[i];
642 for (
int j = num3; j < num; j++)
647 _LoaderOptimization = copy._LoaderOptimization;
650 _ApplicationTrust = copy._ApplicationTrust;
651 if (copyDomainBoundData)
657 _AppDomainInitializer =
null;
660 _DisableInterfaceCache = copy._DisableInterfaceCache;
664 if (copy._CompatFlags !=
null)
668 if (copy._AppDomainSortingSetupInfo !=
null)
670 _AppDomainSortingSetupInfo =
new AppDomainSortingSetupInfo(copy._AppDomainSortingSetupInfo);
672 _TargetFrameworkName = copy._TargetFrameworkName;
673 _UseRandomizedStringHashing = copy._UseRandomizedStringHashing;
700 [SecuritySafeCritical]
703 if (activationArguments ==
null)
709 string entryPointFullPath = CmsUtils.GetEntryPointFullPath(activationArguments);
710 if (!
string.IsNullOrEmpty(entryPointFullPath))
712 SetupDefaults(entryPointFullPath);
720 internal void SetupDefaults(
string imageLocation,
bool imageLocationAlreadyNormalized =
false)
722 char[] anyOf =
new char[2]
727 int num = imageLocation.LastIndexOfAny(anyOf);
735 string text = imageLocation.Substring(0, num + 1);
736 if (imageLocationAlreadyNormalized)
748 internal string GetUnsecureApplicationBase()
753 [SecuritySafeCritical]
754 private string NormalizePath(
string path,
bool useAppBase)
762 path = URLString.PreProcessForExtendedPathRemoval(checkPathLength:
false, path, isFileUrl:
false);
764 int num = path.Length;
770 if (num > 7 &&
string.Compare(path, 0,
"file:", 0, 5,
StringComparison.OrdinalIgnoreCase) == 0)
775 if (path[7] ==
'\\' || path[7] ==
'/')
777 if (num > 8 && (path[8] ==
'\\' || path[8] ==
'/'))
779 throw new ArgumentException(Environment.GetResourceString(
"Argument_InvalidPathChars"));
789 else if (path[7] ==
'/')
795 if (num > 8 && path[7] ==
'\\' && path[8] ==
'\\')
803 for (
int i = 0; i < num; i++)
808 stringBuilder.
Append(
'\\');
819 path = path.Substring(num2);
823 if (flag || (num > 1 && (path[0] ==
'/' || path[0] ==
'\\') && (path[1] ==
'/' || path[1] ==
'\\')))
829 int num3 = path.IndexOf(
':') + 1;
830 flag2 = ((num3 == 0 || num <= num3 + 1 || (path[num3] !=
'/' && path[num3] !=
'\\') || (path[num3 + 1] !=
'/' && path[num3 + 1] !=
'\\')) ?
true :
false);
834 if (useAppBase && (num == 1 || path[1] !=
':'))
836 string text = Value[0];
837 if (text ==
null || text.Length == 0)
839 throw new MemberAccessException(Environment.GetResourceString(
"AppDomain_AppBaseNotSet"));
843 if (path[0] ==
'/' || path[0] ==
'\\')
845 string text2 =
AppDomain.NormalizePath(text, fullCheck:
false);
846 text2 = text2.Substring(0, PathInternal.GetRootLength(text2));
847 if (text2.Length == 0)
854 int length = text.Length;
855 for (num4++; num4 < length && (text[num4] ==
'/' || text[num4] ==
'\\'); num4++)
858 for (; num4 < length && text[num4] !=
'/' && text[num4] !=
'\\'; num4++)
861 text2 = text.Substring(0, num4);
863 stringBuilder2.
Append(text2);
868 stringBuilder2.
Append(text);
870 int num5 = stringBuilder2.
Length - 1;
871 if (stringBuilder2[num5] !=
'/' && stringBuilder2[num5] !=
'\\')
877 stringBuilder2.
Append(
'\\');
881 stringBuilder2.
Append(
'/');
887 stringBuilder2.
Remove(num5, 1);
889 stringBuilder2.
Append(path);
890 path = StringBuilderCache.GetStringAndRelease(stringBuilder2);
894 path =
AppDomain.NormalizePath(path, fullCheck:
true);
900 private bool IsFilePath(
string path)
906 return path[1] ==
'\\';
917 if (_ConfigurationBytes ==
null)
921 return (
byte[])_ConfigurationBytes.Clone();
928 _ConfigurationBytes = value;
940 if (_AppDomainSortingSetupInfo !=
null)
942 _AppDomainSortingSetupInfo._useV2LegacySorting =
false;
943 _AppDomainSortingSetupInfo._useV4LegacySorting =
false;
945 _UseRandomizedStringHashing =
false;
946 if (switches !=
null)
949 foreach (
string @
switch in switches)
953 if (_AppDomainSortingSetupInfo ==
null)
955 _AppDomainSortingSetupInfo =
new AppDomainSortingSetupInfo();
957 _AppDomainSortingSetupInfo._useV2LegacySorting =
true;
961 if (_AppDomainSortingSetupInfo ==
null)
963 _AppDomainSortingSetupInfo =
new AppDomainSortingSetupInfo();
965 _AppDomainSortingSetupInfo._useV4LegacySorting =
true;
969 _UseRandomizedStringHashing =
true;
971 _CompatFlags.
Add(@
switch,
null);
992 if (functionName ==
null)
1000 if (
string.IsNullOrWhiteSpace(functionName))
1004 if (functionVersion < 1)
1008 if (_AppDomainSortingSetupInfo ==
null)
1010 _AppDomainSortingSetupInfo =
new AppDomainSortingSetupInfo();
1012 if (
string.Equals(functionName,
"IsNLSDefinedString",
StringComparison.OrdinalIgnoreCase))
1014 _AppDomainSortingSetupInfo._pfnIsNLSDefinedString = functionPointer;
1016 if (
string.Equals(functionName,
"CompareStringEx",
StringComparison.OrdinalIgnoreCase))
1018 _AppDomainSortingSetupInfo._pfnCompareStringEx = functionPointer;
1020 if (
string.Equals(functionName,
"LCMapStringEx",
StringComparison.OrdinalIgnoreCase))
1022 _AppDomainSortingSetupInfo._pfnLCMapStringEx = functionPointer;
1024 if (
string.Equals(functionName,
"FindNLSStringEx",
StringComparison.OrdinalIgnoreCase))
1026 _AppDomainSortingSetupInfo._pfnFindNLSStringEx = functionPointer;
1028 if (
string.Equals(functionName,
"CompareStringOrdinal",
StringComparison.OrdinalIgnoreCase))
1030 _AppDomainSortingSetupInfo._pfnCompareStringOrdinal = functionPointer;
1032 if (
string.Equals(functionName,
"GetNLSVersionEx",
StringComparison.OrdinalIgnoreCase))
1034 _AppDomainSortingSetupInfo._pfnGetNLSVersionEx = functionPointer;
1036 if (
string.Equals(functionName,
"FindStringOrdinal",
StringComparison.OrdinalIgnoreCase))
1038 _AppDomainSortingSetupInfo._pfnFindStringOrdinal = functionPointer;
1043 private string VerifyDir(
string dir,
bool normalize)
1047 if (dir.Length == 0)
1055 dir = NormalizePath(dir, useAppBase:
true);
1057 if (IsFilePath(dir))
1062 }, checkForDuplicates:
false, needFullPath:
false).
Demand();
1070 private void VerifyDirList(
string dirs)
1074 string[] array = dirs.Split(
';');
1075 int num = array.Length;
1076 for (
int i = 0; i < num; i++)
1078 VerifyDir(array[i], normalize:
true);
1085 if (_ApplicationTrust ==
null)
1091 applicationTrust.
FromXml(element);
1092 return applicationTrust;
1099 _ApplicationTrust = value.ToXml().ToString();
1103 _ApplicationTrust =
null;
1108 internal bool UpdateContextPropertyIfNeeded(LoaderInformation FieldValue,
string FieldKey,
string UpdatedField, IntPtr fusionContext,
AppDomainSetup oldADS)
1110 string text = Value[(int)FieldValue];
1111 string b = (oldADS ==
null) ?
null : oldADS.Value[(
int)FieldValue];
1114 UpdateContextProperty(fusionContext, FieldKey, (UpdatedField ==
null) ? text : UpdatedField);
1121 internal void UpdateBooleanContextPropertyIfNeeded(LoaderInformation FieldValue,
string FieldKey, IntPtr fusionContext,
AppDomainSetup oldADS)
1123 if (Value[(
int)FieldValue] !=
null)
1125 UpdateContextProperty(fusionContext, FieldKey,
"true");
1127 else if (oldADS !=
null && oldADS.Value[(
int)FieldValue] !=
null)
1129 UpdateContextProperty(fusionContext, FieldKey,
"false");
1134 internal static bool ByteArraysAreDifferent(
byte[]
A,
byte[]
B)
1137 if (num !=
B.Length)
1141 for (
int i = 0; i < num; i++)
1152 internal static void UpdateByteArrayContextPropertyIfNeeded(
byte[] NewArray,
byte[] OldArray,
string FieldKey, IntPtr fusionContext)
1154 if ((NewArray !=
null && OldArray ==
null) || (NewArray ==
null && OldArray !=
null) || (NewArray !=
null && OldArray !=
null && ByteArraysAreDifferent(NewArray, OldArray)))
1156 UpdateContextProperty(fusionContext, FieldKey, NewArray);
1161 internal void SetupFusionContext(IntPtr fusionContext,
AppDomainSetup oldADS)
1163 UpdateContextPropertyIfNeeded(LoaderInformation.ApplicationBaseValue, ApplicationBaseKey,
null, fusionContext, oldADS);
1164 UpdateContextPropertyIfNeeded(LoaderInformation.PrivateBinPathValue, PrivateBinPathKey,
null, fusionContext, oldADS);
1165 UpdateContextPropertyIfNeeded(LoaderInformation.DevPathValue, DeveloperPathKey,
null, fusionContext, oldADS);
1166 UpdateBooleanContextPropertyIfNeeded(LoaderInformation.DisallowPublisherPolicyValue, DisallowPublisherPolicyKey, fusionContext, oldADS);
1167 UpdateBooleanContextPropertyIfNeeded(LoaderInformation.DisallowCodeDownloadValue, DisallowCodeDownloadKey, fusionContext, oldADS);
1168 UpdateBooleanContextPropertyIfNeeded(LoaderInformation.DisallowBindingRedirectsValue, DisallowBindingRedirectsKey, fusionContext, oldADS);
1169 UpdateBooleanContextPropertyIfNeeded(LoaderInformation.DisallowAppBaseProbingValue, DisallowAppBaseProbingKey, fusionContext, oldADS);
1170 if (UpdateContextPropertyIfNeeded(LoaderInformation.ShadowCopyFilesValue, ShadowCopyFilesKey,
ShadowCopyFiles, fusionContext, oldADS))
1172 if (Value[7] ==
null)
1176 UpdateContextPropertyIfNeeded(LoaderInformation.ShadowCopyDirectoriesValue, ShadowCopyDirectoriesKey,
null, fusionContext, oldADS);
1178 UpdateContextPropertyIfNeeded(LoaderInformation.CachePathValue, CachePathKey,
null, fusionContext, oldADS);
1179 UpdateContextPropertyIfNeeded(LoaderInformation.PrivateBinPathProbeValue, PrivateBinPathProbeKey,
PrivateBinPathProbe, fusionContext, oldADS);
1180 UpdateContextPropertyIfNeeded(LoaderInformation.ConfigurationFileValue, ConfigurationFileKey,
null, fusionContext, oldADS);
1181 UpdateByteArrayContextPropertyIfNeeded(_ConfigurationBytes, oldADS?.
GetConfigurationBytes(), ConfigurationBytesKey, fusionContext);
1182 UpdateContextPropertyIfNeeded(LoaderInformation.ApplicationNameValue, ApplicationNameKey,
ApplicationName, fusionContext, oldADS);
1183 UpdateContextPropertyIfNeeded(LoaderInformation.DynamicBaseValue, DynamicBaseKey,
null, fusionContext, oldADS);
1184 UpdateContextProperty(fusionContext, MachineConfigKey,
RuntimeEnvironment.GetRuntimeDirectoryImpl() + RuntimeConfigurationFile);
1186 if (hostBindingFile !=
null || oldADS !=
null)
1188 UpdateContextProperty(fusionContext, HostBindingKey, hostBindingFile);
1194 internal static extern void UpdateContextProperty(IntPtr fusionContext,
string key,
object value);
1196 internal static int Locate(
string s)
1198 if (
string.IsNullOrEmpty(s))
1205 if (s ==
"APP_CONFIG_FILE")
1209 if (s ==
"APP_NAME")
1217 if (s ==
"APP_CONFIG_BLOB")
1223 if (s ==
"BINPATH_PROBE_ONLY")
1229 if (s ==
"CACHE_BASE")
1233 if (s ==
"CODE_DOWNLOAD_DISABLED")
1239 if (s ==
"DEV_PATH")
1243 if (s ==
"DYNAMIC_BASE")
1247 if (s ==
"DISALLOW_APP")
1251 if (s ==
"DISALLOW_APP_REDIRECTS")
1255 if (s ==
"DISALLOW_APP_BASE_PROBING")
1261 if (s ==
"FORCE_CACHE_INSTALL")
1267 if (s ==
"LICENSE_FILE")
1273 if (s ==
"PRIVATE_BINPATH")
1279 if (s ==
"SHADOW_COPY_DIRS")
1288 private string BuildShadowCopyDirectories()
1290 string text = Value[5];
1296 string text2 = Value[0];
1299 char[] separator =
new char[1]
1303 string[] array = text.Split(separator);
1304 int num = array.Length;
1305 bool flag = text2[text2.Length - 1] !=
'/' && text2[text2.Length - 1] !=
'\\';
1308 stringBuilder.
Append(text2);
1311 stringBuilder.
Append(
'\\');
1313 stringBuilder.
Append(text);
1317 for (
int i = 0; i < num; i++)
1319 stringBuilder.
Append(text2);
1322 stringBuilder.
Append(
'\\');
1324 stringBuilder.
Append(array[i]);
1327 stringBuilder.
Append(
';');
1332 return StringBuilderCache.GetStringAndRelease(stringBuilder);
The exception that is thrown when a null reference (Nothing in Visual Basic) is passed to a method th...
void FromXml(SecurityElement element)
Reconstructs an T:System.Security.Policy.ApplicationTrust object with a given state from an XML encod...
Encapsulates security decisions about an application. This class cannot be inherited.
FileIOPermissionAccess
Specifies the type of file access requested.
AppDomainSetup(ActivationArguments activationArguments)
Initializes a new instance of the T:System.AppDomainSetup class with the specified activation argumen...
string TargetFrameworkName
Gets or sets a string that specifies the target version and profile of the .NET Framework for the app...
bool DisallowApplicationBaseProbing
Specifies whether the application base path and private binary path are probed when searching for ass...
unsafe override string ToString()
Converts the value of this instance to a T:System.String.
string AppDomainManagerAssembly
Gets or sets the display name of the assembly that provides the type of the application domain manage...
LoaderOptimization
An enumeration used with the T:System.LoaderOptimizationAttribute class to specify loader optimizatio...
void SetNativeFunction(string functionName, int functionVersion, IntPtr functionPointer)
Provides the common language runtime with an alternate implementation of a string comparison function...
StringComparison
Specifies the culture, case, and sort rules to be used by certain overloads of the M:System....
string ShadowCopyFiles
Gets or sets a string that indicates whether shadow copying is turned on or off.
Identifies the activation context for the current application. This class cannot be inherited.
ActivationArguments ActivationArguments
Gets or sets data about the activation of an application domain.
LoaderOptimization LoaderOptimization
Specifies the optimization policy used to load an executable.
bool DisallowCodeDownload
Gets or sets a value that indicates whether HTTP download of assemblies is allowed for an application...
string [] AppDomainInitializerArguments
Gets or sets the arguments passed to the callback method represented by the T:System....
Provides a collection of static methods that return information about the common language runtime env...
new bool Equals(object x, object y)
When overridden in a derived class, indicates whether two objects are equal.
string ConfigurationFile
Gets or sets the name of the configuration file for an application domain.
string ApplicationBase
Gets or sets the name of the directory containing the application.
Represents assembly binding information that can be added to an instance of T:System....
void SetCompatibilitySwitches(IEnumerable< string > switches)
Sets the specified switches, making the application domain compatible with previous versions of the ....
string [] PartialTrustVisibleAssemblies
Gets or sets a list of assemblies marked with the F:System.Security.PartialTrustVisibilityLevel....
Provides information about, and means to manipulate, the current environment and platform....
KeyCollection Keys
Gets a collection containing the keys in the T:System.Collections.Generic.Dictionary`2.
string AppDomainManagerType
Gets or sets the full name of the type that provides the application domain manager for application d...
StringBuilder Append(char value, int repeatCount)
Appends a specified number of copies of the string representation of a Unicode character to this inst...
static void Sort(Array array)
Sorts the elements in an entire one-dimensional T:System.Array using the T:System....
Finds or creates a T:System.AppDomain.
AppDomainSetup(ActivationContext activationContext)
Initializes a new instance of the T:System.AppDomainSetup class with the specified activation context...
Represents the XML object model for encoding security objects. This class cannot be inherited.
int Length
Gets or sets the length of the current T:System.Text.StringBuilder object.
string DynamicBase
Gets or sets the base directory where the directory for dynamically generated files is located.
string PrivateBinPathProbe
Gets or sets a string value that includes or excludes P:System.AppDomainSetup.ApplicationBase from th...
A platform-specific type that is used to represent a pointer or a handle.
Provides methods for creating, manipulating, searching, and sorting arrays, thereby serving as the ba...
bool DisallowBindingRedirects
Gets or sets a value that indicates whether an application domain allows assembly binding redirection...
MethodImplOptions
Defines the details of how a method is implemented.
string PrivateBinPath
Gets or sets the list of directories under the application base directory that are probed for private...
ApplicationTrust ApplicationTrust
Gets or sets an object containing security and trust information.
Provides data for manifest-based activation of an application. This class cannot be inherited.
Represents a mutable string of characters. This class cannot be inherited.To browse the ....
bool SandboxInterop
Gets or sets a value that indicates whether interface caching is disabled for interop calls in the ap...
AppDomainInitializer AppDomainInitializer
Gets or sets the T:System.AppDomainInitializer delegate, which represents a callback method that is i...
AppDomainSetup()
Initializes a new instance of the T:System.AppDomainSetup class.
The exception that is thrown when one of the arguments provided to a method is not valid.
void Demand()
Forces a T:System.Security.SecurityException at run time if all callers higher in the call stack have...
static SecurityElement FromString(string xml)
Creates a security element from an XML-encoded string.
string ShadowCopyDirectories
Gets or sets the names of the directories containing assemblies to be shadow copied.
static readonly IntPtr Zero
A read-only field that represents a pointer or handle that has been initialized to zero.
Represents assembly binding information that can be added to an instance of T:System....
bool DisallowPublisherPolicy
Gets or sets a value that indicates whether the <publisherPolicy> section of the configuration file i...
ActivationContext ActivationContext
Gets the activation context for manifest-based activation of an application.
Specifies that the class can be serialized.
static StringComparer OrdinalIgnoreCase
Gets a T:System.StringComparer object that performs a case-insensitive ordinal string comparison.
string ApplicationName
Gets or sets the name of the application.
void Add(TKey key, TValue value)
Adds the specified key and value to the dictionary.
ClassInterfaceType
Identifies the type of class interface that is generated for a class.
string CachePath
Gets or sets the name of an area specific to the application where files are shadow copied.
Controls the ability to access files and folders. This class cannot be inherited.
byte [] GetConfigurationBytes()
Returns the XML configuration information set by the M:System.AppDomainSetup.SetConfigurationBytes(Sy...
The exception that is thrown when an attempt to access a class member fails.
Performs operations on T:System.String instances that contain file or directory path information....
Represents a string comparison operation that uses specific case and culture-based or ordinal compari...
StringBuilder Remove(int startIndex, int length)
Removes the specified range of characters from this instance.
void SetConfigurationBytes(byte[] value)
Provides XML configuration information for the application domain, replacing the application's XML co...
string LicenseFile
Gets or sets the location of the license file associated with this domain.