Programming/C#

DLL 추가 / 열기 및 수정 / 추출

박쿠리 2024. 9. 1. 17:59

DLL : 동적 링크 라이브러리, 프로그램에서 공통으로 사용되는 코드, 데이터, 그리고 리소스를 모듈화하여 여러 응용 프로그램이 공유할 수 있도록 만드는 파일 형식이다.

C# 프로젝트에 DLL  파일을 참조하여 다른 사람이 만든 라이브러리를 사용할 수 있다.

DLL 개념 (tistory.com)

 

DLL 추가

 

프로젝트를 열어 참조(reference) 를 우클릭하면 참조 추가가 나온다.

 

 

준비해둔 DLL 파일을 선택하여 프로젝트에 추가한다.

 

 

DLL 이 추가된 것을 확인할 수 있다.

 

 

 

해당 라이브러리를 확인하고 싶다면 더블클릭해서 구조를 확인한다.

 

코드에서 사용하고 싶다면 using 구문으로 해당 라이브러리를 추가한다.

 

 

클래스를 불러온 후, 인스턴스 선언하여 사용한다.

 

 


 

DLL 열기

DLL 파일은 보통 바이너리 형식으로 컴파일된 파일이다. 그래서 직접 수정하려면 원본 소스 코드가 필요하거나, DLL 을 디컴파일하여 수정 후 다시 컴파일하여 DLL 파일을 생성 후 프로젝트에 추가하는 방식으로 진행한다.

 

DLL 파일을 디컴파일할 도구로는 ILSpy, dotPeek, dnSpy 등이 있다.

여기에선 dotPeek 을 사용할 것이다.

 

dotPeek 에서 원하는 DLL 파일을 연다.

 

 

아까 C# 에서 참조했던 NpgsqlConnection 클래스 소스를 확인할 수 있다.

 

 

해당 DLL 파일을 Visual Studio 로 내보내서 수정하면 된다.

Assembly Explorer - Export to Project

 

 


 

DLL 추출하기

DLL 파일을 수정했으면 추출해서 새 DLL 로 만들어야한다.

우선 프로젝트 속성에서 출력 형식이 클래스 라이브러리 인지 확인해야 한다.

그래야 빌드했을 때 DLL 파일 추출 가능

 

어셈블리 정보에서 DLL 파일의 정보를 설정할 수 있다.

 

 

빌드 후 /bin/Debug, /bin/Release 에서 DLL 이 생성된 것을 확인한다.

반응형

'Programming > C#' 카테고리의 다른 글

Npgsql - connection  (0) 2024.09.01
Npgsql - Connection Pooling  (0) 2024.09.01
C# - npgsql & IIS 포트  (0) 2024.08.30
C# - GPDB 커넥션 에러  (0) 2024.08.26
C# 에서 서버 간 JSON 데이터 주고받기  (0) 2024.08.19