DLL 파일 사용하기 DLL 파일 내부 구조 확인
DLL(dynamic link library, 동적 링크 라이브러리)은 함수들을 모아 놓은 라이브러리 파일로 많은 프로그램들이 DLL 파일들 안에 있는 함수들을 호출한다. 그렇기 때문에 많은 프로그램들이 수많은 기능을 프로그램에 포함시키지 않고도 사용할 수 있게 된다.  DLL 파일은 윈도우 프로그램에서 중요하며, 좀 더 깔끔하고 효율적인 프로그램을 작성하는데 도움이 된다. DLL 파일은 프로그램의 실행을 지원하는 역할을 하며, 프로그램이 설치될 때 DLL 파일도 같이 설치된다. 따라서 DLL 파일을 함부로 이동시키면 프로그램이 정상적으로 작동하지 않을 수 있다.   가끔 인터넷에서 배포되는 프로그램을 쓰다 보면 어떤 DLL 파일을 어느 위치에 저장시키라는 내용의 글을 보게 되는 경우가 있다. 그런 경우, 그 프로그램이 정말 신뢰할만한 프로그램인지 우선 확인해 본다. 해로운 DLL 파일일 수 있기 때문이다. DLL 파일이 어떻게 구성되었지 궁금하다면 다음 섹션을 확인한다. 프로그램에서 사용할 수 있도록 DLL 파일을 직접 등록시킬 생각이라면, 미리 DLL 파일을 윈도우 레지스트리에 등록해야 할 것이다. 그러기 전에 진짜 그래야 하는지 프로그램의 문서를 다시 한 번 읽어 보자. (이런 과정을 거쳐야 한다는 것 자체가 무척 이상한 경우이기 때문이다.).  명령 프롬프트를 연다. 시작 메뉴에서 찾아 보거나 윈도우 키 + R을 누른 후cmd를 누른다. DLL 파일이 있는 경로로 이동한다. cd <폴더 이름>을 입력해 이동 가능하며, cd .. 를 입력하면 부모 폴더로 이동할 수 있다. 윈도우 7 이후 버전을 사용 중이라면, DLL 파일이 있는 폴더를 연 후, 폴더에서 시프트 키를 누른 채 마우스 오른쪽 버튼을 클릭한다. 그리고 "여기서 명령창 열기"를 클릭한다. 그러면 그 폴더 경로로 명령 프롬프트가 열릴 것이다.  regsvr32 dllname.dll라고 입력하고 엔터를 친다. 윈도우 레지스트리에 DLL 파일이 등록될 것이다. 레지스트리에서 DLL을 제거하고 싶다면, regsvr32 -u dllname.dll를 입력한 뒤 엔터를 친다. 디컴파일러란 파일이나 프로그램을 만드는데 사용된 소스 코드를 볼 수 있게 해 주는 파일이다. DLL 파일이 어떻게 만들어졌는지 확인해 보려면 디컴파일러로 사람이 읽을 수 있는 소스 코드를 만들어 내야 한다. 디컴파일러가 아니라 메모장 같은 프로그램으로 DLL 파일을 열면 괴상한 글자들이 끊임없이 나열된 파일을 보게 될 것이다.  dotPeek은 가장 유명한 무료 디컴파일러 중 하나이다. jetbrains.com/decompiler/에서 다운로드 가능하다. dotPeek은 .NET 용으로 만들어진 DLL을 디컴파일하는데 주로 사용된다. 내용을 조사해 보고 싶은 DLL이 C 언어로 만들어졌다면, http://www.dependencywalker.com/에서 Dependency Walker를 다운로드 받아 보자. C언어의 특성상 디컴파일 자체가 어렵기 때문에 코드를 보여 주는 기능은 없다. dotPeek을 사용 중이라면, File > Open으로 들어가 DLL 파일을 찾으면 된다. 시스템에 영향을 주지 않고 DLL 파일의 내용을 확인해 볼 수 있다. DLL 파일은 노드, 전체 DLL 파일을 구성하는 코드 모듈로 구성되어 있다. 노드를 클릭해 보면 소속된 하위 노드를 찾을 수 있다. 선택된 노드의 코드는 프로그램 오른쪽에 표시될 것이다. 스크롤하면서 코드를 읽어 보자. dotPeek을 이용하면 C#으로 코드가 표시된다. 다른 언어로 작성된 코드를 보려면 추가적인 라이브러리를 다운로드 받아야 할 수도 있다.  코드를 보기 위해 추가적인 라이브러리가 필요하다면, dotPeek에서 자동적으로 다운로드 받을 것이다. 코드 내용이 이해되지 않는다면, Quick Documentation 기능을 이용해 그 부분이 무슨 역할을 하는지 알아 볼 수 있다.   코드 뷰어에서 궁금한 내용에 마우스 커서를 갖다 댄다. 그 다음 Ctrl + Q를 누르면 Quick Documentation이 뜬다. 하이퍼링크들을 따라가면서 궁금한 코드에 대해 깊게 조사해 보자. 코드를 변경, 수정한 후 자신만의 프로그램을 만들어 보고 싶다면, 코드를 Visual Studio로 내보낼 수 있다. 다른 언어로 작성된 프로그램이라고 할지라도 C#으로 내보내질 것이다.   Assembly Explorer에서 DLL 파일을 마우스 오른쪽 버튼으로 클릭한다. "Export to Project"을 선택한다. 내보내기 설정을 살펴본다. 내보내자마자 Visual Studio가 바로 시작되기를 원한다면 그렇게 설정해 줄 수도 있다. Visual Studio 프로젝트가 열리면, 마음대로 코드를 수정해 원하는 대로 DLL 파일을 만들어 낼 수 있다. Visual Studio 및 C# 사용법에 대해서는 별도의 자료를 찾아 보도록 하자.
DLL 파일이 무엇인지 이해한다. 일반적인 사용자라면 DLL 파일을 열어 보거나 내용을 이해하려고 하지 않아도 된다. 새로운 DLL 파일을 등록한다. 디컴파일러를 다운로드 받아 설치한다. 디컴파일러에서 DLL 파일을 연다. Assembly Explorer를 이용해 DLL 파일의 노드를 확인해 보자. 코드를 읽어 보고 싶다면 노드를 더블 클릭한다. 이해하기 어려운 내용을 쉽고 빠르게 확인해 보자. 코드를 Visual Studio로 내보낸다. Visual Studio에서 코드를 편집한다.
https://www.wikihow.com/Open-DLL-Files https://www.wikihow.com/Open-DLL-Files
Using DLL Files Decompiling DLL Files