Bagikan melalui


AppDomain.BaseDirectory Properti

Definisi

Mendapatkan direktori dasar yang digunakan pemecah rakitan untuk memeriksa rakitan.

public:
 property System::String ^ BaseDirectory { System::String ^ get(); };
public string BaseDirectory { get; }
public string? BaseDirectory { get; }
member this.BaseDirectory : string
Public ReadOnly Property BaseDirectory As String

Nilai Properti

Direktori dasar yang digunakan pemecah rakitan untuk menyelidiki rakitan.

Penerapan

Pengecualian

Operasi ini dicoba pada domain aplikasi yang tidak dimuat.

Contoh

Contoh kode berikut membuat domain aplikasi baru, menentukan direktori dasar yang akan digunakan saat mencari rakitan untuk dimuat ke domain. Contoh kemudian menggunakan BaseDirectory properti untuk mendapatkan jalur direktori dasar, untuk ditampilkan ke konsol.

using namespace System;
using namespace System::IO;
using namespace System::Reflection;
using namespace System::Security::Policy;    // For Evidence object.

int main()
{
   
   // Create application domain setup information
   AppDomainSetup^ domaininfo = gcnew AppDomainSetup;
   domaininfo->ConfigurationFile = String::Format("{0}{1}ADSetup.exe.config", 
                                                  Environment::CurrentDirectory,
                                                  Path::DirectorySeparatorChar);
   domaininfo->ApplicationBase = String::Format("{0}", System::Environment::CurrentDirectory);
   
   //Create evidence for the new appdomain from evidence of the current application domain
   Evidence^ adevidence = AppDomain::CurrentDomain->Evidence;
   
   // Create appdomain
   AppDomain^ domain = AppDomain::CreateDomain("Domain2", adevidence, domaininfo);
   
   // Display application domain information
   Console::WriteLine("Host domain: {0}", AppDomain::CurrentDomain->FriendlyName);
   Console::WriteLine("Child domain: {0}", domain->FriendlyName);
   Console::WriteLine();
   Console::WriteLine("Configuration file: {0}", domain->SetupInformation->ConfigurationFile);
   Console::WriteLine( "Application Base Directory: {0}", domain->BaseDirectory);
   
   AppDomain::Unload(domain);
}
// The example displays output like the following:
//    Host domain: adsetup.exe
//    Child domain: Domain2
//    
//    Configuration file: C:\Test\ADSetup.exe.config
//    Application Base Directory: C:\Test
using System;
using System.IO;
using System.Reflection;
using System.Security.Policy;

class ADSetupSnippet
{
    public static void Main()
    {
        // Create application domain setup information
        var domaininfo = new AppDomainSetup();
        domaininfo.ConfigurationFile = Path.Combine(System.Environment.CurrentDirectory, "ADSetup.exe.config");
        domaininfo.ApplicationBase = System.Environment.CurrentDirectory;

        //Create evidence for the new appdomain from evidence of the current application domain
        Evidence adEvidence = AppDomain.CurrentDomain.Evidence;

        // Create appdomain
        AppDomain domain = AppDomain.CreateDomain("Domain2", adEvidence, domaininfo);

        // Display application domain information.
        Console.WriteLine("Host domain: " + AppDomain.CurrentDomain.FriendlyName);
        Console.WriteLine("Child domain: " + domain.FriendlyName);
        Console.WriteLine();
        Console.WriteLine("Configuration file: " + domain.SetupInformation.ConfigurationFile);
        Console.WriteLine("Application Base Directory: " + domain.BaseDirectory);

        AppDomain.Unload(domain);
    }
}
// The example displays output like the following:
//    Host domain: adsetup.exe
//    Child domain: Domain2
//
//    Configuration file: C:\Test\ADSetup.exe.config
//    Application Base Directory: C:\Test
open System
open System.IO

// Create application domain setup information
let domaininfo = AppDomainSetup()
domaininfo.ConfigurationFile <- Environment.CurrentDirectory + string Path.DirectorySeparatorChar + "ADSetup.exe.config"
domaininfo.ApplicationBase <- Environment.CurrentDirectory

//Create evidence for the new appdomain from evidence of the current application domain
let adEvidence = AppDomain.CurrentDomain.Evidence

// Create appdomain
let domain = AppDomain.CreateDomain("Domain2", adEvidence, domaininfo)

// Display application domain information.
printfn $"Host domain: {AppDomain.CurrentDomain.FriendlyName}"
printfn $"Child domain: {domain.FriendlyName}\n"
printfn $"Configuration file: {domain.SetupInformation.ConfigurationFile}"
printfn $"Application Base Directory: {domain.BaseDirectory}"

AppDomain.Unload domain
// The example displays output like the following:
//    Host domain: adsetup.exe
//    Child domain: Domain2
//
//    Configuration file: C:\Test\ADSetup.exe.config
//    Application Base Directory: C:\Test
Imports System.IO
Imports System.Reflection
Imports System.Security.Policy

Module Example
   Public Sub Main()
      ' Create the application domain setup information.
      Dim domaininfo As New AppDomainSetup()
        domaininfo.ConfigurationFile = Path.Combine(Environment.CurrentDirectory, "ADSetup.exe.config")
      domaininfo.ApplicationBase = Environment.CurrentDirectory
      
      'Create evidence for the new appdomain from evidence of the current application domain.
      Dim adEvidence As Evidence = AppDomain.CurrentDomain.Evidence
      
      ' Create appdomain.
      Dim domain As AppDomain = AppDomain.CreateDomain("Domain2", adevidence, domaininfo)
      
      ' Display the application domain information.
      Console.WriteLine(("Host domain: " + AppDomain.CurrentDomain.FriendlyName))
      Console.WriteLine(("Child domain: " + domain.FriendlyName))
      Console.WriteLine()
      Console.WriteLine(("Configuration file: " + domain.SetupInformation.ConfigurationFile))
      Console.WriteLine(("Application Base Directory: " + domain.BaseDirectory))
     
      AppDomain.Unload(domain)
   End Sub 
End Module 
' The example displays output like the following:
'    Host domain: adsetup.exe
'    Child domain: Domain2
'    
'    Configuration file: C:\Test\ADSetup.exe.config
'    Application Base Directory: C:\Test

Keterangan

Properti ini sesuai dengan AppDomainSetup.ApplicationBase properti . Ini juga dapat diambil menggunakan GetData metode dengan string "APPBASE".

Berlaku untuk

Lihat juga