검색결과 리스트
글
VS 2005를 만든 프로그램을 배포하는 방법에는 여러가지가 있지만 그중에서 가장 많이 사용하는 방법은
아래 두가지다. 첫째는 Private Assemble 설치방법(관련 DLL배포), 둘째는 .NET framework 2.0 설치방법이다.
1. Private Assembly를 설치
실행 파일 자체와 실행 파일에서 액세스하는 DLL들에 대한 manifest 파일들을 private assembly로서 같이 배포하면, 에러를 피할 수 있다. 실행 파일의 manifest 파일은 오브젝트 파일 생기는 디렉토리 잘 뒤져보면 있을 것이다. 대충 아래와 같은 내용이다.
XXX.exe.manifest
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>그 다음 각각의 어셈블리, 즉 DLL에 대한 manifest 파일도 같이 배포해야 한다. (이 파일들은 기본적으로 ...\Microsoft Visual Studio 8\VC\redist 디렉토리 아래에 각 플랫폼 별로 존재한다.)
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<dependency>
<dependentAssembly>
<assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly>
<assemblyIdentity type='win32' name='Microsoft.VC80.MFC' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
</dependentAssembly>
</dependency>
</assembly>
Microsoft.VC80.CRT.manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Copyright © 1981-2001 Microsoft Corporation-->
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<noInheritable/>
<assemblyIdentity
type="win32"
name="Microsoft.VC80.CRT"
version="8.0.50608.0"
processorArchitecture="x86"
publicKeyToken="1fc8b3b9a1e18e3b" />
<file name="msvcr80.dll"/>
<file name="msvcp80.dll"/>
<file name="msvcm80.dll"/>
</assembly>
Microsoft.VC80.MFC.manifest
<!-- Copyright © 1981-2001 Microsoft Corporation-->
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<noInheritable/>
<assemblyIdentity
type="win32"
name="Microsoft.VC80.MFC"
version="8.0.50608.0"
processorArchitecture="x86"
publicKeyToken="1fc8b3b9a1e18e3b" />
<file name="mfc80.dll"/>
<file name="mfc80u.dll"/>
<file name="mfcm80.dll"/>
<file name="mfcm80u.dll"/>
</assembly>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
이 manifest 파일과 DLL 파일들을 애플리케이션 실행 파일이 존재하는 디렉토리에 같이 넣어두면, 별도의 셋업 없이도 실행이 된다. 문제는 이렇게 했을 때, 저 DLL들의 새 버전이 나와도 XXX.exe는 이 혜택을 받을 수 없다는 점이다.
2. .NET framework 2.0 설치
출처 : http://serious-code.net/moin.cgi/RedistributingVisualCppRunTimeLibrary
'IT 이야기 > Programming' 카테고리의 다른 글
| [Win32] 다른 윈도우에 버튼 클릭 메시지 보내기 (0) | 2008/06/08 |
|---|---|
| 이클립스 WIPI 에뮬레이터 외부도구 설정 (0) | 2008/04/18 |
| VS 2005 배포 (1) | 2008/04/18 |
| [TOOL] Visual Stdio에서 Ruby 개발 (0) | 2008/04/18 |
| [Eclipse] Java Complier 설정 (0) | 2008/04/18 |
| [Tool] Debug View (0) | 2008/04/18 |
저 DLL들의 새 버전이 나와도