2008-11-07 2 views
1

응용 프로그램 디렉터리가 쓰기 가능하고 HD 공간이 문제가 아니라고 가정하면 .EXE의 디렉터리에 VB6 종속 파일 (msvbvm60.dll 등)을 넣을 때의 단점이 있습니까?VB6 종속 파일을 앱 디렉토리에 넣는 데 단점이 있습니까?

필자는 최신 의존성 파일을 가지고 있으며 MS가 최신 버전을 제공하지 않는다고 추측하므로 (DLL 지옥 등의 측면에서) 가장 안전한 것으로 나타났습니다. 내 응용 프로그램 디렉토리에 수정되지 않을 파일 (IFAIK)은 응용 프로그램에서 사용 된 첫 번째 파일입니다 (System32 디렉토리 등을 사용하기 전에).

답변

1

괜찮을 것입니다. VB6 프로젝트에서 수년 전에 사용했던 제 3 자 DLL에 대해이 작업을 과거에해야했습니다 (우리는 구성 요소를 기발한 구현 방식으로 사용하여 나중에 "고정"버전을 인기있는 소프트웨어 제품군과 함께 설치했습니다) COM의 regsvr32 라이브러리가 DLL 지옥을 피하기위한 계획을 망칠 수는 있지만

2

여러 가지 OCX 인 msvbvm60.dll과 같은 파일에는 사용자 응용 프로그램의 디렉터리에 설치하려고 할 때 혼란을 일으키는 미묘한 종속성이 있습니다. 우리의 솔루션은 모든 종속성을 추적하고 해당 요소가 설치의 일부이며 Microsoft의 규칙에 따라 올바르게 처리되었는지 확인하는 것이 었습니다.

MS가 VB6 개발을 중단한지 8 년 후 우리는 DLL 지옥을 거의 경험하지 못했습니다. (500 개 이상의 설치에서 약 6 건의 인시던트) 그리고 그곳에 도착하기 전에 Windows XP를 사용하는 고객의 결과였습니다.

간단히 말해서 사용자 지정 응용 프로그램이나 타사 프로그램은 응용 프로그램 디렉터리에 저장됩니다. 나머지는 MS의 제안에 따라 시스템 폴더에 설치되도록 모든 것이 포함되도록합니다.

2

심층 토론 in this question : VB6에서 .local 파일, reg-free COM 및 DirectCOM과 같은 다른 위치에서 종속 파일을로드하도록하는 다양한 방법에 대해 설명합니다.

0

정말로 요점은 없습니다. 자기 치유가 가능한 MSI 기반의 고품질 설치 프로그램을 사용하십시오. 그렇게 할 때마다 앱이 실행될 때마다 필요한 DLL 또는 기타 구성 요소를 확인하고 필요할 경우 설치 및 등록합니다. 그런 다음 파일을 가지고 주변에있는 사람들로부터 보호받을 수 있습니다.

관련 문제