2012-07-18 3 views
0

나는 C++의 코드 7 최대 11 버전에서 XULRunner가 잘 실행이 :최신 XULRunner sdk에서 Thebes 클래스를 사용하는 방법?

error LNK2019: unresolved external symbol "public: __thiscall gfxContext::gfxContext(class gfxASurface *)" ([email protected]@[email protected]@@@Z) 
error LNK2019: unresolved external symbol "public: __thiscall gfxWindowsSurface::gfxWindowsSurface(struct HDC__ *,unsigned int)" ([email protected]@[email protected][email protected]@[email protected]) 

I :

nsRefPtr<gfxWindowsSurface> targetSurface = new gfxWindowsSurface(hDC, gfxWindowsSurface::FLAG_FOR_PRINTING); 
    nsRefPtr<gfxContext> ctx = new gfxContext(targetSurface); 

하지만 XULRunner가 12 컴파일하고 나중에 그것을 연결 오류 원인을 시도 할 때 xul.lib에 대해 dumpbin을 만들었으며 이제 THEBES API에 대한 내보내기가 없음을 발견했습니다. SDK가 11에서 12로 버전을 바꿀 때 제거되었습니다. 최신 xulrunner sdk`s에서 이진 XPCOM에서 gfxWindowsSurface 및 gfxContext를 사용하는 방법입니까?

감사합니다,

서지

답변

0

관련 변화는 또한 확장 된 논의 bug 718985를 참조 bug 683891입니다. 타사가 그래픽 코드에 직접 액세스 할 수 있도록하는 것이 더 이상 바람직하지 않은 것으로 보입니다. 귀하의 질문에 대한 답변은 : 아니오, 더 이상 주식 XULRunner로이를 수행 할 수 없습니다. 따라서 목표를 달성하기위한 다른 방법 (예 : 버그에 제안 된대로 <canvas>과 같은 더 높은 수준의 드로잉 표면)을 찾거나이 특정 패치가 되돌려 진 상태로 자신 만의 XULRunner 빌드를 만들 수 있습니다.

+0

감사합니다. 블라디미르. –

+1

이것은 좋은 소식이 아닙니다. 나는이 사람들을 정말로 이해하지 못한다. XUL SDK의 출시가 속도 기차로 진행되고 API 변경이 산발적이며 신비스럽고 고대에는 문서가 손실되었으며 기본 확장 기능을 최신 상태로 유지하는 방법을 알지 못합니다. –

+0

@SergeZ : 음, 처음에는 사용하지 않아야 할 낮은 수준의 내부 API입니다 ... –