2010-07-07 4 views
0

저는 공급 업체로 돌아 가지 않으면 해결할 수없는 문제가 있습니다.하지만 먼저 문제를 떠 올릴 생각입니다.서명되지 않은 어셈블리를 기존 응용 프로그램에 통합

어쨌든 기존 응용 프로그램에 통합해야하는 타사의 어셈블리가 있지만 서명되지 않았습니다. 이것은 분명히 내 모든 기존 제품 어셈블리가 서명 된 두통의 부하를 제공하고, 이들로부터 새 DLL을 참조하려면 나를 서명하지 않아도됩니다. 나는 정말로 그렇게하고 싶지 않다.

나는 a) 공급자에게 가서 서명을 시도하거나 b) 그것을 참조하는 dll을 서명하지 않는 것 외에 다른 옵션이 있습니까?

답변

2

최상의 방법은 공급 업체에 올바르게 서명 된 어셈블리를 요청하는 것입니다.

ILDASM을 사용하여 어셈블리를 분해 한 다음 자신의 강력한 이름 암호화 키를 사용하여 어셈블리를 다시 어셈블리하는 더러운 옵션이 있습니다. 이렇게하려면 약간의 작업이 필요합니다. 벤더에게 먼저 이야기하고 어셈블리를 분해 할 필요가 없다고 언급 할 수도 있습니다.

+0

나는 그 길이로가는 것을 고려하지 않았고, 나는 그럴 필요가 없길 바래! 내일 다시 공급 업체로 돌아갈 것이지만,이 DLL은 상업용 제품 (!!!)과 함께 제공됩니다. 나는 희망이 없습니다. 답변 해주셔서 감사합니다. – starskythehutch

+2

이것은 일리노이 라운드 트립 (round round tripping)이라고하며, 실제로는 상당히 쉽습니다. 'ildasm yourassembly.dll/out = yourassembly.il' 그리고 나서 'ilasm yourassembly.il /res=yourassembly.res/key=yourkey.snk/dll' –

+0

브라이언에게 감사드립니다. 정말 유용합니다. – starskythehutch

관련 문제