2012-04-04 3 views
2

우리는 프로젝트에서 GAC를 사용하고 있으며 개발 중에는 새로운 DLL을 등록하기 전에 DLL의 이전 버전을 등록 해제해야하는 경우가 있습니다. GACutil.exe를 사용하여이 작업을 수행 할 수 있지만 & DLL을 C : \ Windows \ assembly에 끌어다 놓아 등록하고 + Uninstall을 마우스 오른쪽 단추로 클릭하여 등록을 취소 할 수 있습니다 (또는 때때로 명령 프롬프트에서 "del"및 DLL 이름).GACUtil 대 C : Windows assembly의 수동 편집

나의 질문 : 우리의 일에 반대하는 징후가 있습니까? "GACUtil -i"및 "GACUtil -u"와 같은가요? 아니면 문제가 발생할 수 있습니까?

감사합니다.

+1

나는 삭제가 많은 문제라고 생각하지 않습니다. 하지만 설치, 당신은 오른쪽 등 디렉토리 이름을 얻을 필요가 – leppie

+0

@예요하지만 드래그 앤 드롭을 사용하여 모든 것을 자동화하는 것 같습니다. – Jeff

답변

2

이 기능은 사용자 지정 셸 확장 인 shfusion.dll에서 제공합니다. GAC를 평평하게 만들고 단일 폴더처럼 보이게합니다. 또한 탐색기 창을 조작 할 때 자동으로 어셈블리 등록/등록을 처리합니다. 그럼 당신은 잘하고 있어요.

.NET 4에서는 더 이상 작동하지 않으며 다른 폴더 (c : \ windows \ microsoft.net \ assembly)에서 GAC를 사용하고 해당 폴더에는 동일한 종류의 셸 확장자가 없으므로, GAC 폴더의 원시 컨텐트가 표시됩니다. 그걸 망치지 마라.

일반적으로 이 아니라과 같은 dev 컴퓨터에서 GAC를 사용해야합니다. 하나는, 그것을 사용하는 지점은 여러 버전의 어셈블리가 공존 할 수 있도록하는 것입니다. 따라서 계속해서 un/registration은 의미가 없습니다. 다른 한편으로는, 개발하는 동안 [AssemblyVersion]을 계속 변경하는 것은 의미가 없습니다. IDE에서 지원하는 로컬 복사 기능을 강력히 권장합니다. GAC에 넣으면 사용자 컴퓨터에서 유용 할 수 있습니다. 또한 Microsoft가 더 이상 셸 확장을 지원하지 않는다고 생각합니다. 그것은 너무 자주 사용되었습니다 :)

+0

고마워요. 매우 명확한. – Jeff