2009-10-06 2 views
0

Final Builder를 사용하여 vb6 및 .net 프로젝트의 빌드를 작성했습니다. 또한 Visual Source Safe를 사용하여 소스를 관리합니다. 일부 vb6 exe는 특정 ocx에 종속되어 있으므로 특정 vb6 exe가 ocx의 특정 버전을 요구할 수 있습니다.기본 앱을 빌드 할 때마다 구성 요소를 작성해야합니까?

우리의 exe 프로젝트에 대한 최종 빌더 스크립트도 ocx 프로젝트를 다시 빌드해야하는지 아니면 이미 컴파일 된 ocx의 특정 버전을 가져 오는 것이 더 낫습니까? 내 관심사는 다른 개발자들이 ocx 빌드를 깰 수 있거나 (또는 ​​버그를 만들었을 때) 빌드하려고하는 exe를 깨뜨릴 수 있다는 것입니다. 또한 ocx 프로젝트를 다시 빌드하면 동일한 버전의 ocx가 발생하지만 날짜가 달라 지므로 dllhell (ocx hell) 문제가 발생하면 혼동을 초래할 수 있습니다.

건배, 마이크 건물과 OCX와 액티브 X DLL을 사이에 응용 프로그램을 유지하는 측면에서 차이가 없습니다

+0

위의 Mike의 특별한 경우에는 ocx의 최신 버전을 항상 사용해야합니다. ocx는 동일한 VB6 응용 프로그램의 다양한 버전 (다른 고객을위한 다른 버전)에 통신 계층을 제공합니다. –

답변

2

. ocx는 바이너리 호환성을 사용하고 컴파일 프로세스의 일부가되어야합니다.

그러나 이것은 일반적인 규칙입니다. 이전에 거의 변경되지 않는 구성 요소가있을 수 있습니다. 내 자신의 VB6 응용 프로그램에서 거의 업데이트되지 내 참조 계층 구조의 bottomost 수준에있는 구성 요소 중 몇 가지 있습니다. 아마 1 년에 1 ~ 2 번 업데이트 될 수 있습니다. 일부는 몇 년 동안 업데이트되지 않았습니다.

그러나 설명에 따르면 컨트롤이 여전히 수정되는 것처럼 들립니다. 그래서 나는 두 번째 사례가 적용되는 것을 의심합니다.

결국에는 최선의 판단을 사용하십시오.

+0

이 경우 ocx는 이진 호환성을 사용하며 컴파일 프로세스의 일부입니다. ocx가 빌드되면 exe가 빌드됩니다. '일종의 정렬'이 적용됩니다. ocx는 매년 1 ~ 2 회만 업데이트됩니다. 최신 업데이트가 성능 향상을위한 것입니다. 모든 경우에 인터페이스는 변경되지 않고 이진 호환성이 유지됩니다. 빌드 프로세스는 릴리스 패키지의 모든 구성 요소도 압축하므로 빌드에 ocx를 포함하면 응용 프로그램이 항상 최신 (및 성능) 버전을 사용하도록 할 수 있습니다. –

0

OCX/DLL을 사용하는 데는 두 가지 방법이 있습니다. 코드 재사용 가능성과 대형 프로젝트의 조각화입니다.

재사용을 목적으로하는 것은 빌드, 빌드 및 재구성에 터무니없는 것이며 새 응용 프로그램에 맞게 사용자 지정할 필요가 거의 없습니다. 이것들은 당신의 왕관 보석이며, 대부분의 사람들은 그 근원을 수정할 능력이 없어야합니다. 그것이 바로 도서관의 "도서관 작가"의 영역입니다.

단순하고 규모가 큰 모 놀리 식 응용 프로그램이 있다면 다른 경로를 사용해야 할 수도 있습니다. 그렇다면 OCX와 DLL은 단순히 "모듈"개념의 어색한 확장이됩니다. 이것이 우리가 프로젝트 그룹을 갖는 이유입니다.

라이브러리 사용자가 라이브러리를 조작하지 않아야합니다. 나는 그들이 "최신이고 실적이 좋다"고 확신 할 수 있다고 확신하지만, 그것은 완전히 다른 논쟁이다.

관련 문제