일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- algorithm
- nullable
- convert
- coding-test
- dotNET
- windows10
- C#
- tls
- Binding
- chashtag
- Coding
- commit
- git
- string
- logging
- WPF
- ListView
- Github
- File
- .net
- Process
- IValueConverter
- 코딩테스트
- log
- Visual Studio
- programmers
- csharp
- windows
- mysql
- Microsoft
Archives
- Today
- Total
CHashtag
[C#] 배포 exe 경로 dll 폴더 분리하기 (probing) (privatePath) 본문
반응형
제품을 릴리스하여 출시할 때 exe와 동일한 경로에 수많은 .dll 파일들이 위치해 있는 경우가 많습니다.
이럴 경우 매우 복잡하고 지저분해보일 수 있기 때문에 오늘은 이 .dll 파일들을 폴더로 분리해보려 합니다.
테스트 구성은 다음과 같습니다.
빌드를 하면 다음과 같이 지저분한 dll들이 보입니다.
이제 이 dll들을 폴더를 나누어 관리해보려 합니다. (참고로 pdb 파일들은 지워도 됩니다.)
app.config에 다음과 같은 코드를 추가해주면 됩니다.
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="Beautiful;Great;"/>
</assemblyBinding>
</runtime>
</configuration>
여기서 주의할 점은 privatePath는 exe하위 폴더여야 합니다.
여러 폴더를 지정하고 싶다면 ; 으로 나눠주면 됩니다. (공백이 생겨선 안됩니다.)
사실 app.config를 변경하고 빌드하지 않고 SomeAmazingWPFProgram.exe.config 파일을 수정해 주어도 결과는 같습니다.
SomeAmazingWPFProgram.exe.config 파일에도 app.config와 동일한 내용을 담고 있습니다.
주의할 점: Release 빌드 할 것.
(Debug모드로 빌드를 하게되면 작동을 하지 않습니다.)
반응형
'C#' 카테고리의 다른 글
[C#] [매크로] Low Level 키보드 입력 (Simulation) (2) | 2021.06.30 |
---|---|
[C#] 파일 확장자로 mime-type 구하기(File Extension) (0) | 2021.05.24 |
[C#] .net 4.0 기본 연결이 닫혔습니다. (tls 1.2) (https) (2) | 2021.05.07 |
[C#] Visual Studio 빌드시 pdb 파일 안나오게 하는법(or 나오게 하는법) (0) | 2021.05.07 |
[C#] 코딩 규칙 (Coding Convention) (0) | 2021.05.06 |