[C#] WPF 응용 프로그램에서 응용 프로그램 디렉토리 가져 오기

AppDomain을 사용하여 Windows Forms에 대한 솔루션을 찾았지만 WPF Application객체 와 동등한 솔루션은 무엇 입니까?



답변

한 가지 방법 :

System.AppDomain.CurrentDomain.BaseDirectory

다른 방법은 다음과 같습니다.

System.IO.Path.GetDirectoryName(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName)


답변

여기 또 다른 것이 있습니다 :

System.Reflection.Assembly.GetExecutingAssembly().Location


답변

명령 행 인수의 첫 번째 인수를 사용할 수도 있습니다.

String exePath = System.Environment.GetCommandLineArgs()[0]


답변

나는 간단하게 string baseDir = Environment.CurrentDirectory;그 작업을 사용 했다.

행운을 빕니다

편집하다:

나는이 유형의 실수를 삭제하는 데 사용했지만이 답변의 마이너스 포인트가 사람들이 잘못된 방법을 아는 데 도움이된다고 생각하기 때문에 편집하는 것을 선호합니다. 🙂 위의 솔루션이 유용하지 않다는 것을 이해했으며 string appBaseDir = System.AppDomain.CurrentDomain.BaseDirectory;
다른 방법으로 변경했습니다 .

1. string baseDir =
    System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
 2. String exePath = System.Environment.GetCommandLineArgs()[0];
 3. string appBaseDir =    System.IO.Path.GetDirectoryName
    (System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName);

행운을 빕니다


답변

String exePath = System.Reflection.Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName;
 string dir = Path.GetDirectoryName(exePath);

이 시도!


답변

이 시도. 잊지 마세요 using System.Reflection.

string baseDir = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);


답변

나는 이것을 시도했다 :

    label1.Content = Directory.GetCurrentDirectory();

디렉토리도 얻으십시오.