Process.Start()를 사용하여 실행 파일을 시작하려고합니다. exe DLL 종속성이없는 경우 제대로 작동합니다. 그러나 2 개의 DLL을 포함해야 할 때 작동하지 않습니다. WorkingDirectory를 설정하고 2 개의 필수 DLL이 있는지 확인했습니다. 어떤 아이디어?Process.Start로 시작된 exe에 DLL을 지정 하시겠습니까?
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = false;
startInfo.UseShellExecute = false;
startInfo.FileName = "memcached.exe";
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = arguments; //not shown
startInfo.WorkingDirectory = Environment.CurrentDirectory;
try
{
using (Process exeProcess = Process.Start(startInfo))
{
exeProcess.WaitForExit();
}
}
catch (Exception ex)
{
Trace.TraceError(ex.Message); // never gets here
}
이것은 code based on the Windows Azure Memcached Solution Accelerator입니다. memcached를 시작할 수 없으면 대화 상자가 표시됩니다. 불행히도 코드가 클라우드에서 원격으로 실행 중일 때는이를 볼 수 없습니다.
나는 Process.Start()가 하늘색에서 보안하기에는 너무 어려울 것이라고 생각했을 것입니다. Azure가 API의 일부로 마법 캐시를 제공하지 않습니까? 나는 모르고 호기심에주의한다. – Spence
Spence : Microsoft AppFabric Cache, 즉 "Velocity"는 분산 캐시이지만 Azure에서는 아직 작동하지 않습니다. 요즘은 관리자 권한이 필요하지 않는 한 Azure에서 원하는 모든 것을 실행할 수 있습니다. – mhstack
으. 클라우드에서 프로그램 할 때, 비가 어디에서 오는 것인지 어떻게 알 수 있습니까? –