.NET Framework Class Library
AppDomainSetup..::.ConfigurationFile Property

Gets or sets the name of the configuration file for an application domain.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
Syntax

Visual Basic (Declaration)
Public Property ConfigurationFile As String
Visual Basic (Usage)
Dim instance As AppDomainSetup
Dim value As String

value = instance.ConfigurationFile

instance.ConfigurationFile = value
C#
public string ConfigurationFile { get; set; }
Visual C++
public:
virtual property String^ ConfigurationFile {
    String^ get () sealed;
    void set (String^ value) sealed;
}
JScript
public final function get ConfigurationFile () : String
public final function set ConfigurationFile (value : String)

Property Value

Type: System..::.String
A String that specifies the name of the configuration file.

Implements

IAppDomainSetup..::.ConfigurationFile
Remarks

The configuration file describes the search rules and configuration data for the application domain. The host that creates the application domain is responsible for supplying this data because the meaningful values vary from situation to situation.

For example, the configuration data for ASP.NET applications is stored for each application, site, and computer, while the configuration data for an executable is stored for each application, user, and computer. Only the host knows the specifics of the configuration data for a particular circumstance.

Examples

The following example demonstrates how to use the ConfigurationFile property to specify the path and name of the configuration file for a new application domain.

Visual Basic
Imports System
Imports System.Reflection
Imports System.Security.Policy 'for evidence object
Imports System.Security 'for securityzone object
Imports System.Collections 'for IEnumerator

Class ADCreateDomain

   Public Shared Sub Main()
      ' Create appdomainsetup information for new appdomain.
      Dim domaininfo As New AppDomainSetup()
      domaininfo.ApplicationBase = System.Environment.CurrentDirectory
      domaininfo.ConfigurationFile = System.Environment.CurrentDirectory & "\ADCreateDomain.exe.config"
      domaininfo.ApplicationName = "MyApplication"
      domaininfo.LicenseFile = System.Environment.CurrentDirectory & "\license.txt"

      'Create evidence for the new appdomain.
      Dim adevidence As Evidence = AppDomain.CurrentDomain.Evidence
      'Add the zone and url information to restrict permissions assigned to the appdomain.
      adevidence.AddHost(New Url("http://www.example.com"))
      adevidence.AddHost(New Zone(SecurityZone.Internet))

      ' Create the application domain.
      Dim newDomain As AppDomain = AppDomain.CreateDomain("MyDomain", adevidence, domaininfo)

      ' Write out the application domain information.
      Console.WriteLine("Host domain: " & AppDomain.CurrentDomain.FriendlyName)
      Console.WriteLine("child domain: " & newDomain.FriendlyName)
      Console.WriteLine()
      Console.WriteLine("Application base is: " & newDomain.SetupInformation.ApplicationBase)
      Console.WriteLine("Configuration file is: " & newDomain.SetupInformation.ConfigurationFile)
      Console.WriteLine("Application name is: " & newDomain.SetupInformation.ApplicationName)
      Console.WriteLine("License file is: " & newDomain.SetupInformation.LicenseFile)

      Dim newevidenceenum As IEnumerator = newDomain.Evidence.GetEnumerator()
      While newevidenceenum.MoveNext()
         Console.WriteLine(newevidenceenum.Current)
      End While 

      AppDomain.Unload(newDomain)
   End Sub 'Main 
End Class 'ADCreateDomain 
C#
using System;
using System.Reflection;
using System.Security.Policy;  //for evidence object
using System.Security;  //for securityzone object
using System.Collections;  //for IEnumerator

class ADCreateDomain
{
    public static void Main()
    {
        // Create appdomainsetup information for the new appdomain.
        AppDomainSetup domaininfo = new AppDomainSetup();
        domaininfo.ApplicationBase = System.Environment.CurrentDirectory;
        domaininfo.ConfigurationFile = System.Environment.CurrentDirectory    + "\\ADCreateDomain.exe.config";
        domaininfo.ApplicationName = "MyApplication";
        domaininfo.LicenseFile = System.Environment.CurrentDirectory + "\\license.txt";

        //Create evidence for new appdomain.
        Evidence adevidence = AppDomain.CurrentDomain.Evidence;
        //Add the zone and url information to restrict permissions assigned to the appdomain.
        adevidence.AddHost(new Url("http://www.example.com"));
        adevidence.AddHost(new Zone(SecurityZone.Internet));

        // Create the application domain.
        AppDomain newDomain = AppDomain.CreateDomain("MyDomain", adevidence, domaininfo);

        // Write out the application domain information.
        Console.WriteLine("Host domain: " + AppDomain.CurrentDomain.FriendlyName);
        Console.WriteLine("child domain: " + newDomain.FriendlyName);
        Console.WriteLine();
        Console.WriteLine("Application base is: " + newDomain.SetupInformation.ApplicationBase);
        Console.WriteLine("Configuration file is: " + newDomain.SetupInformation.ConfigurationFile);
        Console.WriteLine("Application name is: " + newDomain.SetupInformation.ApplicationName);
        Console.WriteLine("License file is: " + newDomain.SetupInformation.LicenseFile);
        
        IEnumerator newevidenceenum = newDomain.Evidence.GetEnumerator();
        while(newevidenceenum.MoveNext())
            Console.WriteLine(newevidenceenum.Current);
        

        AppDomain.Unload(newDomain);
    
        
    }
    
}

Visual C++
using namespace System;
using namespace System::Reflection;
using namespace System::Security::Policy;
//for evidence object
using namespace System::Security;
//for securityzone object
using namespace System::Collections;

//for IEnumerator
int main()
{

   // Create appdomainsetup information for the new appdomain.
   AppDomainSetup^ domaininfo = gcnew AppDomainSetup;
   domaininfo->ApplicationBase = System::Environment::CurrentDirectory;
   domaininfo->ConfigurationFile = System::Environment::CurrentDirectory + "\\ADCreateDomain.exe.config";
   domaininfo->ApplicationName = "MyApplication";
   domaininfo->LicenseFile = System::Environment::CurrentDirectory + "\\license.txt";

   //Create evidence for new appdomain.
   Evidence^ adevidence = AppDomain::CurrentDomain->Evidence;

   //Add the zone and url information to restrict permissions assigned to the appdomain.
   adevidence->AddHost( gcnew Url( "http://www.example.com" ) );
   adevidence->AddHost( gcnew Zone( SecurityZone::Internet ) );

   // Create the application domain.
   AppDomain^ newDomain = AppDomain::CreateDomain( "MyDomain", adevidence, domaininfo );

   // Write out the application domain information.
   Console::WriteLine( "Host domain: {0}", AppDomain::CurrentDomain->FriendlyName );
   Console::WriteLine( "child domain: {0}", newDomain->FriendlyName );
   Console::WriteLine();
   Console::WriteLine( "Application base is: {0}", newDomain->SetupInformation->ApplicationBase );
   Console::WriteLine( "Configuration file is: {0}", newDomain->SetupInformation->ConfigurationFile );
   Console::WriteLine( "Application name is: {0}", newDomain->SetupInformation->ApplicationName );
   Console::WriteLine( "License file is: {0}", newDomain->SetupInformation->LicenseFile );
   IEnumerator^ newevidenceenum = newDomain->Evidence->GetEnumerator();
   while ( newevidenceenum->MoveNext() )
      Console::WriteLine( newevidenceenum->Current );

   AppDomain::Unload( newDomain );
}

.NET Framework Security

Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
See Also

Reference

Tags :


Page view tracker