[재구성] C# VS 참조 프로그램 집합의 경로 설정 (exe와 dll을 분리하여 지정한 경로에서 호출)

샤오백은 최근에 dll의 생성과 인용이 불가능한 문제에 부딪혀 오랫동안 어려움을 겪었고 블로그 포럼을 두루 방문했다.
오늘 우리는 dll에 대해 이야기하자. 그는 라이브러리에서 라이브러리로 출력할 때 출력 경로에서 발생하는 파일이다.다른 라이브러리에서 인용을 통해 그 중의 방법을 호출해야 할 때, 실제로는 호출된 라이브러리의 dll 파일을 읽는다.(dll 동적 링크 라이브러리).그래서 인용하는 경로는 인용된 라이브러리 출력 dll의 주소입니다.
하지만 생각보다 간단하지 않다.
인용 프로그램 집합 경로에 따라 프로그램 집합 DLL은 두 종류로 나뉜다. 1) 전역 DLL(GAC에 등록, GAC-전역 프로그램 집합 캐시) GAC에 대한 상세한 자료는 링크를 참고할 수 있다.http://blog.csdn.net/prince_lintb/article/details/40789211
2) 개인 DLL. 기본적으로 프로그램 집합 인용을 추가할 때 프로그램 집합 DLL은 실행 가능한 디렉터리로 복사됩니다.개인 DLL은 숫자가 많을 때 분류가 없기 때문에 혼란스러워 보인다.소프트웨어를 발표할 때도 소프트웨어 설치 디렉터리에서 대량의 dll 파일을 보고 싶지 않다.분류를 다른 폴더 밑에 두면 더할 나위 없이 좋다.문제는 DLL을 찾는 애플리케이션의 경로 문제를 어떻게 해결할 것인가입니다.답은 설정 파일에 다음 설정 항목을 추가하는 것입니다.(app.config 또는 web.config, 없으면 새로 만들기, -> 프로필 추가)


      
    
          
        
        
    
  


여기서 privatePath는 *에 상대적입니다.exe.config 파일의 상대 경로입니다. 여러 폴더가 번호로 구분됩니다.컴파일한 후 생성 디렉터리에 접미사를 생성합니다.exe.config의 파일은 이 파일에 대한 것입니다.프로그램 세트 DLL 참조를 추가한 후 DLL의 속성 [로컬 복사]를 False로 설정합니다.프로그램을 컴파일하는 동안 Common 및 Security 폴더의 DLL 및 종속 항목이 자동으로 검색됩니다.
참고: xml 필드 및 노드 의미에 대한 질의:https://msdn.microsoft.com/zh-cn/library/twy1dw1e

좋은 웹페이지 즐겨찾기