2015-02-02 3 views
2

즉시 어셈블리의 서명 된 복사본을 만들어야합니다.즉시 내 어셈블리의 서명 된 복사본 만들기

내가 빌드 후 이벤트에이 스크립트를 추가하여 그렇게하도록 시도했다 : 나는 서명 된 어셈블리를 참조 할 때

call "$(DevEnvDir)..\Tools\vsvars32.bat" 
ildasm /all /out=MyAssemblySignedVersion.il $(TargetFileName) 
ilasm /dll /key=MyAssembly.snk MyAssemblySignedVersion.il 
그러나

가, 내가 런타임 예외가 "파일 또는 어셈블리를로드 할 수 없습니다 'MyAssembly, 버전 = 1.2.5511.31417, 문화 = 중립, PublicKeyToken = b025765091e877ec'또는 해당 종속성 중 하나. 지정한 파일을 찾을 수 없습니다. "

리플렉터를 사용하여 MyAssemblySignedVersion.dll에서 프로젝트를 만들려고했는데 디스 어셈블리 된 DLL을 재구성 한 결과 일부 네임 스페이스가 없어서 컴파일되지 않습니다. 이것이 관련 될 수 있습니까?

어떻게하면됩니까? 미리 감사드립니다. 나는 새로운 솔루션 구성 만들었습니다 :

답변

1

내 어셈블리의 서명 사본을 만들 수있는 방법을 발견했습니다 "ReleaseSigned"을하고 빌드 후 이벤트에 나는이 스크립트를 넣어 :

if $(ConfigurationName) == Debug (
    echo "Building in DEBUG. Skipping signing..." 
) else if $(ConfigurationName) == ReleaseSigned (
call "$(DevEnvDir)..\Tools\vsvars32.bat" 
    msbuild.exe "$(ProjectPath)" /property:Configuration=Release 
) 

이어를 이 게시물 변경 사항 : same project different solution sign configuration