내용 보기

작성자

관리자 (IP : 172.17.0.1)

날짜

2020-07-10 04:49

제목

[C#] C# 코드로 GAC 어셈블리 등록하기


예전에 MSDN Forum 에 자료를 찾던 중에 “C# 코드를 이용하여 GAC 에 어셈블리를 등록할 수 없나요?” 라는 질문을 본적이 있었습니다.
배포 시에 GAC 에 어셈블리를 등록할 경우가 생긴다면,,
1. GacUtil 을 리소스에 포함한다.
2. Deploy Project 에서 리소스를 파일로 복원하여, Command Prompt(Process.Start) 를 통해 GACUTIL 로 등록하고,
3. 배포를 종료한다
이런 시나리오를 머리 속으로 그렸던 적이 있었습니다.
하지만 오늘 단 한 줄이 이 코드를 보고, ‘정말 어리석었구나’ 느꼈습니다.
뭐 긴말 없이, 코드를 보세요.
new System.EnterpriseServices.Internal.Publish()
.GacInstall(@”...Path...\ClassLibrary1.dll");
이렇게 한 줄로, GAC 에 어셈블리를 등록할 수 있었습니다.
아마 저처럼 테스트 해 보실 분도 계실 거라고 생각합니다. Strong Key 를 주시고, 다시 해보시길~
( 훔… Strong Key 로 서명이 안되어 있어도, 오류는 없습니다. )
 
 
 

출처1

출처2