응용 프로그램 도메인의 구조

Untitled

응용 프로그램 도메인의 생성과 파괴

static void Main()
{
  AppDomain newDomain = AppDomain.CreateDomain("New Domain");
  newDomain.ExecuteAssemly("test.exe");
  AppDomain.Unload(newDomain);
}
public string ApplicationName { get; set; } // 친근한 이름
public string ApplicationBase { get; set; } // 기준 디렉터리

public string ConfigureationFile { get; set; }
public string LicenseFile { get; set; }

// 자동 어셈블리 환원을 돕는 속성들
public string PrivateBinPath { get; set; }
public string PrivateBinPathProbe { get; set; }
AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = @"c:\\MyBaseFolder";
AppDomain newDomain = AppDomain.CreateDomain("New Domain", null, setup);
static void Main()
{
  AppDomain new Domain = AppDomain.CreateDomain("test");
  newDomain.AssemblyResolve += new ResolveEventHandler(FindAssem);
  ...
}

static Assembly FindAssem(object sender, ResolveEventArgs args)
{
  ...
}