Programing

Gacutil.exe는 어셈블리를 성공적으로 추가하지만 탐색기에서 어셈블리를 볼 수 없습니다.

lottogame 2020. 11. 15. 10:51
반응형

Gacutil.exe는 어셈블리를 성공적으로 추가하지만 탐색기에서 어셈블리를 볼 수 없습니다. 왜?


Visual Studio Command Prompt 2010 내에서 GacUtil.exe를 실행하여 dll (CatalogPromotion.dll)을 GAC에 등록하고 있습니다. 유틸리티를 실행 한 후라고 표시 Assembly Successfully added to the cache되고 실행 gacutil /l CatalogPromotionDll하면 GAC에 어셈블리가 포함되어 있음이 표시되지만 Windows 탐색기에서 C : \ WINDOWS \ assembly로 이동할 때 어셈블리를 볼 수 없습니다. Windows 탐색기에서 WINDOWS \ assembly의 어셈블리를 볼 수 없지만 gacutil.exe를 사용하여 볼 수있는 이유는 무엇입니까?


배경 : VS Tools의 명령 프롬프트에 입력 한 내용은 다음과 같습니다.


    C : \ _ Dev Projects \ VS Projects \ bmccormack \ CatalogPromotion \ CatalogPromotionDll \ bin
    \ Debug> gacutil / i CatalogPromotionDll.dll
    Microsoft (R) .NET 전역 어셈블리 캐시 유틸리티. 버전 4.0.30319.1
    저작권 (c) Microsoft Corporation. 판권 소유.

    어셈블리가 캐시에 성공적으로 추가되었습니다.

    C : \ _ Dev Projects \ VS Projects \ bmccormack \ CatalogPromotion \ CatalogPromotionDll \ bin
    \ Debug> gacutil / l CatalogPromotionDll
    Microsoft (R) .NET 전역 어셈블리 캐시 유틸리티. 버전 4.0.30319.1
    저작권 (c) Microsoft Corporation. 판권 소유.

    전역 어셈블리 캐시에는 다음 어셈블리가 포함됩니다.
      CatalogPromotionDll, 버전 = 1.0.0.0, 문화 = 중립, PublicKeyToken = 9188a175
    f199de4a, 프로세서 아키텍처 = MSIL

    항목 수 = 1

그러나 어셈블리는 C : \ WINDOWS \ assembly에 표시되지 않습니다.


이는 gacutil.exe의 .NET 4.0 버전을 사용하기 때문입니다. 어셈블리를 c : \ windows \ microsoft.net \ assembly 에있는 다른 GAC 에 저장합니다 . 모든 .NET 4.0 어셈블리가 저장되는 위치입니다. 이에 대한 셸 확장 처리기가 없으며 폴더는있는 그대로 표시됩니다. Windows 탐색기로 볼 수 있습니다. GAC 폴더의 내부 구조를 볼 수 있습니다. 어셈블리를 찾는 데 문제가 없어야합니다. GAC는 특별히 복잡하지 않습니다.

이전 버전의 .NET을 대상으로하는 앱에서 어셈블리를 사용하려는 경우 C : \ Program Files \ Microsoft SDKs \ Windows \ v6.0A \에 저장된 gacutil.exe의 .NET 2.0 버전을 사용해야합니다. 큰 상자


이는 GAC에 설치하는 어셈블리가 4.0 런타임을 대상으로 컴파일 되었기 때문입니다. 4.0 GAC 어셈블리는 다른 위치 c : \ windows \ microsoft.net \ assembly에 저장됩니다.

수락 된 답변이 잘못되었습니다. .NET 4.0 gacutil을 사용하여 3.5 또는 이전 런타임을 대상으로 컴파일 된 어셈블리를 설치하면 정상적으로 작동하며 OP가 예상했던 디렉터리 인 c : \ windows \ assembly에 어셈블리를 배치합니다.


경로는-> C : \ Windows \ Microsoft.NET \ assembly \ GAC_MSIL입니다. 여기서 모든 어셈블리는 .net 4.0 버전에 대해 저장됩니다.

참고 URL : https://stackoverflow.com/questions/3054304/gacutil-exe-successfully-adds-assembly-but-assembly-not-viewable-in-explorer-w

반응형