번역기 도구를 단순화하기위한 솔루션을 정교하게하려고합니다. 따라서 현재는 코드 내에서 Satellite 어셈블리를 자동으로 컴파일하려고합니다.코드 내에서 위성 어셈블리를 생성 할 수 있습니까?
그래서 내가 무엇을 실현하려 싶은 것은 다음 명령을 수동으로 실행을 대체하는 것입니다 : 지금까지 내가 일 .dll 파일을 생성, 테스트 한
AL.exe /culture:de /out:de\TestResource.resources.dll /embed:TestResource.de.resources
. 하지만 아래와 같이 ressource를 임베딩/링크하는 것은 효과가 없지만 dll의 크기를 확장합니다. 그래서 분명히 거기에 있지만 결과 dll이 위성 어셈블리였던 것처럼 사용할 수는 없습니다. 그것은 위성 어셈블리로 사용할 수 있어요 있도록
static void Main(string[] args)
{
CSharpCodeProvider codeProvider = new CSharpCodeProvider();
CompilerParameters parameters = new CompilerParameters();
parameters.GenerateExecutable = false;
parameters.OutputAssembly = "./output/satellite_test.dll";
parameters.EmbeddedResources.Add(@"./TestResource.en.resources");
parameters.LinkedResources.Add(@"./TestResource.de.resources");
CompilerResults results = codeProvider.CompileAssemblyFromSource(parameters, "");
}
하나 개의 언어만을위한 지역화 된 리소스를 포함하는 프로그래밍 방식으로 DLL을 생성 할 수있는 방법이 있나요?