원래 사용하던 ActiveX를 조금 변환해서 classid를 수정하여 다른 ActiveX 컨트롤러를 만들었습니다.
이상하게 기존 버전에서는 잘되던것이 새롭게 만든 cab에서 배포시 버전문제가 발생합니다.
그러니까 cab만들때 ocx에 박는 버전을 1,0,0,0 이라고 박고
ocx와 같이 cab안에 들어가는 inf의 버전값도 1,0,0,0이라고 줬습니다.
테스트해보려고 html하나 만들어서 cab파일 불러오도록해서 cab경로써주고 뒤에 버전값을
1,0,0,0으로 주면 cab파일을 불러와서 설치하지 않습니다. 아예 불러오지를 않습니다.
그런데 실제 cab파일 버전보다 상위버전값(예:1,0,0,1)을 주면 정상적으로 설치됩니다.
혹시나해서 cab생성시 버전값을 다르게해서 버전을 20,1,1,1 이런식으로도 만들어보아도
html에서 cab파일 불러올때 버전을 동일하게 20,1,1,1 하면 안되고 20,1,1,1보다 높은숫자로하면
또 잘 불러와서 설치합니다.
문제는 이게 html상에서는 실제 cab파일버전보다 값을 높에 주었기때문에
사용자들이 페이지에 접근할때마다 이미 cab이 설치되어있음에도 불구하고 매번 cab설치에
접근하는 문제가 발생되고 미치겠습니다.
원래 정상이라면 html에서 동일버전을 cab파일에 등록되어있는 값과 동일 버전값을 주면
설치되어야 하는건데 왜 이런문제가 발생하는 것일까요? 도와주십쇼!
언어는 델파이로 작성했습니다;
|