Windows 10으로 VB6 앱을 마이그레이션 할 때의 문제와 요약
소개
시작해, 타이틀대로, Windows10에 VB6 앱을 마이그레이션할 때 일어난 문제점을 정리하고 싶습니다.
본래라면 이미 레거시가 되고 있는 시스템입니다만, 세상에서 아직 이용자가 많다고 생각되는 VB6 앱을 Windows7(32bit판)에서 Windows10(64bit판)로 연명을 위해
이행하는 것이 되어, 그 때 일어난 문제를 중심으로 내용을 기재했습니다.
환경 정보
마이그레이션 소스:
마이그레이션 대상:
발생한 문제
자사 앱 설치 프로그램을 사용하여 설치한 후 앱을 시작한 후 다음 메시지가 발생했습니다.
원인
자사 어플의 사양이 됩니다만, 회사에서 가지고 있는 oralcedb에 접속해 처리를 실시하는 어플이며, 흐름으로서는 이하의 형태로 실시하고 있었습니다.
조사한 곳, Windows 어플리케이션으로 oralcle 접속을 실시할 때에, 사용하는 미들웨어가 존재해,
그것이 "oo4o (Oracle Objects for OLE)"입니다.
oracle을 취급할 때는 oracle client의 인스톨이 필요합니다만 oo4o의 제공이 행해지고 있는 것이 11g까지가 되고 있었습니다.
또, oracle client11g에는 32bit판, 64bit판의 2종류가 있어, 최초는 PC의 환경에 맞추어 64bit판을 넣었습니다만
Vb 자체는 32bit판 밖에 대응하고 있지 않기 때문에, 그쪽을 인스톨하고 있지 않은 것도 원인이었습니다.
※어플리케이션에 따라서는 ODBC를 사용한 접속 방법도 있을까 생각합니다만 이번은,oo4o를 사용하고 있었을 경우의 해소 방법을 기재하겠습니다.
oracle 지원 개요:
oracle client ver
지원 내용
오라클 클라이언트 11g 이하
· oo4o (Windows 용 애플리케이션 용 Oracle이 제공하는 데이터베이스에 연결하는 미들웨어) 제공
oracle client 12c 이상
・oo4o의 제공이 종료
해결 방법
oracle client11g 32bit 판을 인스톨 한 후, oracle client의 「Admin」폴더 내에 「tnsnames.ora」(각 DB에의 접속 정보가 정리된 파일)를 저장해, cmd를 시작해 「tnsping ●●」※● ●는 자사에서 가지고 있는 DB명을 기재
명령을 실행하여 tnsnames.ora 파일까지의 경로가 통과하고 있는지 확인한 후 자사 앱을 실행하면 문제없이 시작할 수있었습니다.
↑ "oracle client 11g의 setup.exe"를 클릭
↑설치 타입을 선택할 때는 「관리자」를 선택, ※oracle client에 상세한 사람은 커스텀으로 필요한 것만을 선택해 인스톨이라도 문제 없을까 생각합니다.
↑설치가 끝나면, DB 접속 정보가 기재되어 있는 「tnsnames.ora」파일을 격납
↑설치 완료 후는 cmd를 기동 「tnsping ●●」※자사에서 설정하고 있는 데이타베이스명을 입력
↑ 특별히 문제가 없으면, 상기 화상과 같은 표시가 됩니다.
그 후, 앱을 시작하면 문제없이 기동해, oracledb에 접속하는 처리에 관해서도 문제 없게 실시할 수 있었습니다.
마지막으로
위의 DB 연결이 얽힌 경우는 oracle client의 ver과 bit 수를 조심해야한다는 것을 알았습니다.
다만, 시스템 자체가 낡기 때문에, 향후는 리플레이스를 실시해 VB 어플리를 사용하지 않는 형태로 가져가고 싶습니다.
Reference
이 문제에 관하여(Windows 10으로 VB6 앱을 마이그레이션 할 때의 문제와 요약), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/n-jo/items/6dd4b970071c57d8a3a6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
자사 어플의 사양이 됩니다만, 회사에서 가지고 있는 oralcedb에 접속해 처리를 실시하는 어플이며, 흐름으로서는 이하의 형태로 실시하고 있었습니다.
조사한 곳, Windows 어플리케이션으로 oralcle 접속을 실시할 때에, 사용하는 미들웨어가 존재해,
그것이 "oo4o (Oracle Objects for OLE)"입니다.
oracle을 취급할 때는 oracle client의 인스톨이 필요합니다만 oo4o의 제공이 행해지고 있는 것이 11g까지가 되고 있었습니다.
또, oracle client11g에는 32bit판, 64bit판의 2종류가 있어, 최초는 PC의 환경에 맞추어 64bit판을 넣었습니다만
Vb 자체는 32bit판 밖에 대응하고 있지 않기 때문에, 그쪽을 인스톨하고 있지 않은 것도 원인이었습니다.
※어플리케이션에 따라서는 ODBC를 사용한 접속 방법도 있을까 생각합니다만 이번은,oo4o를 사용하고 있었을 경우의 해소 방법을 기재하겠습니다.
oracle 지원 개요:
oracle client ver
지원 내용
오라클 클라이언트 11g 이하
· oo4o (Windows 용 애플리케이션 용 Oracle이 제공하는 데이터베이스에 연결하는 미들웨어) 제공
oracle client 12c 이상
・oo4o의 제공이 종료
해결 방법
oracle client11g 32bit 판을 인스톨 한 후, oracle client의 「Admin」폴더 내에 「tnsnames.ora」(각 DB에의 접속 정보가 정리된 파일)를 저장해, cmd를 시작해 「tnsping ●●」※● ●는 자사에서 가지고 있는 DB명을 기재
명령을 실행하여 tnsnames.ora 파일까지의 경로가 통과하고 있는지 확인한 후 자사 앱을 실행하면 문제없이 시작할 수있었습니다.
↑ "oracle client 11g의 setup.exe"를 클릭
↑설치 타입을 선택할 때는 「관리자」를 선택, ※oracle client에 상세한 사람은 커스텀으로 필요한 것만을 선택해 인스톨이라도 문제 없을까 생각합니다.
↑설치가 끝나면, DB 접속 정보가 기재되어 있는 「tnsnames.ora」파일을 격납
↑설치 완료 후는 cmd를 기동 「tnsping ●●」※자사에서 설정하고 있는 데이타베이스명을 입력
↑ 특별히 문제가 없으면, 상기 화상과 같은 표시가 됩니다.
그 후, 앱을 시작하면 문제없이 기동해, oracledb에 접속하는 처리에 관해서도 문제 없게 실시할 수 있었습니다.
마지막으로
위의 DB 연결이 얽힌 경우는 oracle client의 ver과 bit 수를 조심해야한다는 것을 알았습니다.
다만, 시스템 자체가 낡기 때문에, 향후는 리플레이스를 실시해 VB 어플리를 사용하지 않는 형태로 가져가고 싶습니다.
Reference
이 문제에 관하여(Windows 10으로 VB6 앱을 마이그레이션 할 때의 문제와 요약), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/n-jo/items/6dd4b970071c57d8a3a6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
위의 DB 연결이 얽힌 경우는 oracle client의 ver과 bit 수를 조심해야한다는 것을 알았습니다.
다만, 시스템 자체가 낡기 때문에, 향후는 리플레이스를 실시해 VB 어플리를 사용하지 않는 형태로 가져가고 싶습니다.
Reference
이 문제에 관하여(Windows 10으로 VB6 앱을 마이그레이션 할 때의 문제와 요약), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/n-jo/items/6dd4b970071c57d8a3a6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)