리플렉션을 사용하여 다른 클래스 라이브러리 DLL을로드하는 실행 파일이 있습니다. 해당 클래스 라이브러리 내에서 클래스 라이브러리의 실제 경로가 무엇인지 알아야합니다. 원래 실행 파일이므로 실행 어셈블리가 필요하지 않습니다.반영된 어셈블리의 현재 실제 경로를 얻는 방법
예 : EXE 파일은 C에있을 수 있습니다 : 수 있습니다 \ 프로그램 \ 및 클래스 라이브러리 C : 나는 나를 돌려 무언가를 호출 할 필요가 Assembly1.dll 내부 원격 메소드 내에서 Assembly1.dll
을 \ \ \ 라이브러리
C : \ 라이브러리는 원격 \
내가 시도 \
var currentLocation = Assembly.GetAssembly(GetType()).Location;
하지만 그건 효과가없는 것 같습니다. 어떻게해야합니까?
var dllPath = new Uri(this.GetType().Assembly.GetName().CodeBase).LocalPath;
가능한 중복 http://stackoverflow.com/questions/52797/how-do-로드 된 DLL입니다 코드 - 인 - 어셈블리의 경로를 얻으십시오.) – thehennyy
내가 원한 것이 아닌 GetExecutingAssembly에 대한 이야기입니다. – NZJames
이 접근법은 모든 'Assembly'객체에서 사용할 수 있습니다. 어디에서 가져 왔는지는 중요하지 않습니다. – thehennyy