(ActiveX) 64비트 엑셀에서는 Active X가 동작하지 않네요~ Error 429

회사에 있는 장비들은 아무래도 ; out-of-date가 많다보니
뭔가 하나 바꿔서 설치하면 동작이 안되는 경우가 많습니다

오늘은 오랜만에 동기형이 뭔가 도와달라고 이야기해서 가보니까
PtrSafe를 입력해달라는 문구가 떠 있어서, 전에 직렬통신 모듈을 사용하던 기억이 나서 이걸 입력하면 해결되겠지? 생각하고, API 호출하는 줄에 PtrSafe를 추가를 했는데요~

이제 Error '429' can't create object ?? 무슨 에러가 뜨는거네요.

종일 궁금해서 찾다보니까
그 VB 프로그램이 ActiveX를 통해 외부 장비와 연결이 되있는데 이게 64비트 오피스에서는 지원을 안한다는 내용이었네요~ ㅋㅋ 마소형님들도 빠져있으니 32비트 오피스를 쓰라구~ ㅋㅋㅋ
(그 장비 말고도 다른 종류도 Ax로 연결된게 꽤 있는걸로 알고 있어요)

https://stackoverflow.com/questions/16121232/run-time-error-429-activex-component-cant-create-object?rq=1

전에 그래서 64bit Excel에서는 타이머 API도 조금 동작이 이상하게 했던 것 같기도 하네요. 32bit Excel에서 잘되던 타이머 API가 이상하게 64bit에서는 안되길래, 타이머를 돌리기전에 한 번 톡하고 타이머를 켰다가 끄면 제대로 돌아가더란 말이죠~ 이유는 모르겠습니다 ㅋㅋ 지금도 그렇게 쓰고 있습니다. (32bit / 64bit를 구분해놨습니다.)

제 생각엔 64bit에서는 위와 같이 ActiveX server를 쓸 수 없으니까, 아래와 같이 처리해야 한다고 결론을 냈습니다.

1) 오피스를 32bit 버전을 다시 설치해서 사용함 (여러 검색 결과에서는 이 방법을 추천합니다.)
2) Serial Comm, Ethernet Comm을 직접 연결해서 SCPI Command로 장비와 통신한다.

장기적으로 보자면 역시 2)의 방법을 쓰는게 좋아보이지만 당장 편하기는 1)이 편하지요~? 그리고 장비업체에 수리 의뢰하는 방법도 있으니까요~

한 가지 일에서 지난 몇 가지 일이 생각나서 글을 써봤습니다~ 역시 현실은 만만치 않아요~~

댓글

이 블로그의 인기 게시물

(Node.js) XLSX로 결과 출력하기 / 모듈 디자인 Exporting / Node.js modular design

(VBA) 009 - 닫힌 파일에서 데이터 읽어오기 (ExecuteExcel4Macro)

(Node.js) EUC-KR을 Cheerio - Iconv-lite로 불러올 때