728x90
반응형

Visual Studio 2005/2008 DLL 배포와 WinSxS의 활용법

Visual Studio 2005와 2008은 'DLL 지옥' 문제를 해결하기 위해 WinSxS(Windows Side-by-Side) 기술을 도입했습니다.

이는 .NET의 GAC(Global Assembly Cache)와 유사하게 네이티브 DLL을 버전별로 관리하고 접근할 수 있게 해줍니다.

WinSxS는 주로 Windows XP 이상 버전에서 사용됩니다.

WinSxS를 사용하지 않고 배포하려면, Visual Studio의 재배포 가능 패키지(redist) 경로에 있는 파일들을 실행 파일과 동일한 경로에 복사하는 방법이 있습니다.

예를 들어, Visual Studio 2005와 x86 시스템(32비트 Windows XP, Vista)에서는 다음과 같은 폴더를 복사해야 합니다:

  • Microsoft.VC80.ATL
  • Microsoft.VC80.CRT
  • Microsoft.VC80.MFC
  • Microsoft.VC80.MFCLOC
  • Microsoft.VC80.OPENMP

디버그 버전의 경우에는 다음 폴더도 포함됩니다:

  • Microsoft.VC80.DebugOpenMP
  • Microsoft.VC80.DebugCRT
  • Microsoft.VC80.DebugMFC

이 방법은 배포 시 보안 문제로 인해 시스템 경로 접근이 제한되는 경우 유용합니다.

그러나 서비스 팩 적용 여부에 따라 DLL 버전이 달라질 수 있으므로, 빌드한 컴퓨터의 Visual Studio 재배포 가능 패키지를 복사하는 것이 가장 정확합니다.

그렇지 않다면 WinSxS를 사용하는 것이 더 나은 방법입니다.

728x90
반응형

+ Recent posts