2011-02-11 7 views
1

64 비트 Windows 플랫폼 용 32 비트 OLE 컨트롤을 다시 컴파일했습니다 (ole이이 어플라이언스에 할당하는 메모리가 많기 때문에 필요합니다).32 비트 swt eclipse rcp 응용 프로그램에서 64 비트 OLE로드

JDK32bit 및 Eclipse 32 비트 (64 비트 Windows 32 비트 emualtion)에서 실행되는 내 eclipse rcp 응용 프로그램 안에이 내용을로드해야합니다. 나는 rcp 응용 프로그램을 재 컴파일하지 않으려 고하며 그것이 거대하고 많은 thigs가 잘못 될까봐 두려워합니다.

지금까지 (32 비트 플랫폼에서)이 사이트에서 설명한 방법 ActiveX Support In SWT을 사용하여이 activeX를로드했습니다. 이제 64 비트 창에서 ole로드가 실패합니다 (예외가 발생 함).

  1. 필자는 win64 (jdk64)에서 전체 rcp 응용 프로그램을 변환해야한다고 생각하십니까?
  2. 구성 요소가 잘 등록되어 있는지 어떻게 진단 할 수 있습니까? 시스템에 등록 된 모든 COM 개체를 검사하는 도구가 있습니까 (64 비트에서 작동하지 않는 32 비트 도구 만 있음). 사실 내가 사용한 유일한 방법은 해당 참조에 activex 구성 요소의 DLL을 포함하는 다른 .NET 응용 프로그램을 구현하는 것입니다.
  3. 누군가가 이클립스 rcp 응용 프로그램에서 64 비트 OLE를로드하려고 시도 했습니까? 조언이 필요합니다. (이 문제를 해결하기 위해 많은 노력을 기울였습니다.)

답변

1

감사합니다. 콘스탄틴. 필자는 문제를 발견했으며 향후 32 비트에서 64 비트 OLE RCP 응용 프로그램을 포팅해야하는 사람을 돕는 몇 가지 문제를 해결하려고합니다.

  1. jdk가 설치되어 있는지 확인하십시오. 32 비트와 64 비트가 모두있는 경우 시작 구성 (디버그 및 실행 구성 -> 기본 탭)에서 사용자가 가리키는 JDK를 확인해야합니다. 응용 프로그램이 이식이면 아마 잘못된 32 비트 JDK를 가리킬 것입니다
  2. 정확한 swt 플러그인을 가져 오십시오. 당신의 실행 구성 (디버그 및 실행 구성 -> 플러그인 탭)에서 SWT 필터 유형 * 설치 SWT 플러그인을 검색하고 내가 찾은 포팅 OLE를 들어 64 비트 버전의
  3. 을 선택합니다 매우 유용한이 링크

내 모든 노력이 다른 사람을 도울 수 있기를 바랍니다.

3

동일한 프로세스에서 32 비트와 64 비트 구성 요소를 혼합 할 수 없습니다. RCP 응용 프로그램에서 64 비트 OLE 컨트롤을로드하려면 64 비트 JDK 및 64 비트 Eclipse 런타임이 필요합니다.

관련 문제