2011-01-10 1 views

답변

5

ILMerge하면 페이지가


에 대한 약간의 오해의 소지가있다 찾고있는 정확하게 수행, ILMerge는 새로운 와 함께 잘 작동합니다 그 actual webpage

ILMerge 당 V3 및 V4 어셈블리에서 작동 .NET 버전. 옵션을 사용하십시오./targetplatform : v4 ,. 버전 3.5의 경우 대상 플랫폼을 설정하는 데 이 필요하지 않지만 디렉토리는/lib 옵션으로 v3.5 프레임 워크 디렉토리를 추가해야 거기에서 어셈블리를 찾을 수 있습니다. (그들이 GAC에있는 경우, 경우에는 찾을 수 있습니다.)ILMerge를 v4.0 런타임에서 실행하려면이 구성 파일을 사용하십시오.


당신이 다른 대답에 질문에서 사용 어떻게 대답하기 위해

사용법 : ilmerge [/ lib 디렉토리 : 디렉토리] * [/ 로그 [: 파일 이름] [/[/ 지연]] [/ 내재화 [: 파일 이름]] : (라이브러리 | exe | winexe)] [닫힘] [/ nedbug] [/ ver : 버전] [/copyattrs [/ allowMultiple]] [/ xmldocs] [/ attr : 파일 이름] [/ ta rgetplatform : [,] |/v1 | /v1.1 |/v2 |/V4] [/ useFullPublicKeyForReferences] [/ 와일드]/zeroPe 종류] [/ allowDup : 형식] */연합]/정렬 : N] /아웃 : 파일명 [...]

그래서 ilmerge /out:Combined.exe mainFile.exe otherDll.dll 사건에 대한 기본값의 대부분은

+0

@scott DLL은 다른 소스에서 이미 빌드되었습니다 –

+0

@herrow : 최신 버전은 .NET의 어떤 버전을 사용하고 있습니까? 응용 프로그램이 무엇입니까? –

+0

@reed winforms 버전 3.5NET –

2

ILMerge는 .NET 어셈블리에 대해이 작업을 수행 할 수 괜찮을 것 같은 -가 (예 : WPF 어셈블리 등) 어셈블리의 특정 유형의 몇 가지 제한 사항이 있지만.

또는 use the assembly as a resource and load it on demand을 사용하거나 어셈블리 병합을 지원하는 여러 가지 상용 obfuscator 중 하나를 사용할 수 있습니다. 많은 타사 옵션이 더 정교한 depedency 병합 및/또는 종속성 포함을 지원합니다. 좋은 예가 두 가지 옵션을 모두 지원하는 SmartAssembly입니다.

+0

+1. 너는 나를 다시 때렸다! 인생의 새로운 목표는 리드 코세이보다 빨리 타자를 치는 것입니다! ;-) – David

+0

@ree DLL이 이미 다른 소스에서 빌드되었습니다 –

+0

@herrow : 어떤 유형의 DLL입니까? NET Framework (v?) –