AppDomainSetup.ApplicationBase Proprietà

Definizione

Ottiene il nome della directory contenente l'applicazione.

public:
 property System::String ^ ApplicationBase { System::String ^ get(); };
public:
 property System::String ^ ApplicationBase { System::String ^ get(); void set(System::String ^ value); };
public string? ApplicationBase { get; }
public string ApplicationBase { get; set; }
member this.ApplicationBase : string
member this.ApplicationBase : string with get, set
Public ReadOnly Property ApplicationBase As String
Public Property ApplicationBase As String

Valore della proprietà

Nome della directory della base dell'applicazione.

Implementazioni

Esempio

Nell'esempio seguente viene illustrato come usare la proprietà per impostare il ApplicationBase percorso in cui il caricatore dell'assembly inizia a eseguire il test per gli assembly da caricare in un nuovo dominio dell'applicazione.

Nota

È necessario verificare che la cartella specificata esista.

using namespace System;

int main()
{
    AppDomain^ root = AppDomain::CurrentDomain;

    AppDomainSetup^ setup = gcnew AppDomainSetup();
    setup->ApplicationBase = 
        root->SetupInformation->ApplicationBase + "MyAppSubfolder\\";

    AppDomain^ domain = AppDomain::CreateDomain("MyDomain", nullptr, setup);

    Console::WriteLine("Application base of {0}:\r\n\t{1}", 
        root->FriendlyName, root->SetupInformation->ApplicationBase);
    Console::WriteLine("Application base of {0}:\r\n\t{1}", 
        domain->FriendlyName, domain->SetupInformation->ApplicationBase);

    AppDomain::Unload(domain);
}

/* This example produces output similar to the following:

Application base of MyApp.exe:
        C:\Program Files\MyApp\
Application base of MyDomain:
        C:\Program Files\MyApp\MyAppSubfolder\
 */
using System;

class ADSetupInformation
{
    static void Main()
    {
        AppDomain root = AppDomain.CurrentDomain;

        AppDomainSetup setup = new AppDomainSetup();
        setup.ApplicationBase =
            root.SetupInformation.ApplicationBase + @"MyAppSubfolder\";

        AppDomain domain = AppDomain.CreateDomain("MyDomain", null, setup);

        Console.WriteLine("Application base of {0}:\r\n\t{1}",
            root.FriendlyName, root.SetupInformation.ApplicationBase);
        Console.WriteLine("Application base of {0}:\r\n\t{1}",
            domain.FriendlyName, domain.SetupInformation.ApplicationBase);

        AppDomain.Unload(domain);
    }
}

/* This example produces output similar to the following:

Application base of MyApp.exe:
        C:\Program Files\MyApp\
Application base of MyDomain:
        C:\Program Files\MyApp\MyAppSubfolder\
 */
open System

let root = AppDomain.CurrentDomain

let setup = AppDomainSetup()
setup.ApplicationBase <-
    root.SetupInformation.ApplicationBase + @"MyAppSubfolder\"

let domain = AppDomain.CreateDomain("MyDomain", null, setup)

printfn $"Application base of {root.FriendlyName}:\r\n\t{root.SetupInformation.ApplicationBase}"
printfn $"Application base of {domain.FriendlyName}:\r\n\t{domain.SetupInformation.ApplicationBase}"

AppDomain.Unload domain

(* This example produces output similar to the following:

Application base of MyApp.exe:
        C:\Program Files\MyApp\
Application base of MyDomain:
        C:\Program Files\MyApp\MyAppSubfolder\
 *)
Class ADSetupInformation

    Shared Sub Main()

        Dim root As AppDomain = AppDomain.CurrentDomain

        Dim setup As New AppDomainSetup()
        setup.ApplicationBase = _
            root.SetupInformation.ApplicationBase & "MyAppSubfolder\"

        Dim domain As AppDomain = AppDomain.CreateDomain("MyDomain", Nothing, setup)

        Console.WriteLine("Application base of {0}:" & vbCrLf & vbTab & "{1}", _
            root.FriendlyName, root.SetupInformation.ApplicationBase)
        Console.WriteLine("Application base of {0}:" & vbCrLf & vbTab & "{1}", _
            domain.FriendlyName, domain.SetupInformation.ApplicationBase)

        AppDomain.Unload(domain)
    End Sub
End Class

' This example produces output similar to the following:
'
'Application base of MyApp.exe:
'        C:\Program Files\MyApp\
'Application base of MyDomain:
'        C:\Program Files\MyApp\MyAppSubfolder\

Commenti

La directory di base dell'applicazione è la posizione in cui il gestore assembly inizia a eseguire il probe per gli assembly.

La ApplicationBase proprietà può influire sulle autorizzazioni concesse a un dominio dell'applicazione. Ad esempio, un dominio dell'applicazione proveniente dal computer locale riceve normalmente un trust completo in base alla posizione di origine. Tuttavia, se la proprietà di che AppDomain è impostata sul nome completo di una directory Intranet, ApplicationBase l'impostazione ApplicationBase limita le autorizzazioni concesse al dominio dell'applicazione a una concessione LocalIntranet anche se il dominio dell'applicazione proviene effettivamente dal computer locale.

Si applica a