문제

이미 사악한 교환에 대해 물었지만 항상 도움이되지 않았습니다. 오늘이 문제가 있습니다.

intraweb을 사용하여 독립형 웹 응용 프로그램을 만들 때 브라우저에서 내 앱에서 세션을 테스트하려고 할 때 IDE 에서이 예외를 얻습니다.

$ 7C812A6B의 첫 번째 기회 예외. 'Coinitialize가 호출되지 않았다'는 메시지가 포함 된 Exception Class eolesySerror. Process WebContactManager.exe (1112)

IDE 예외 대화 상자에서 "계속"을 클릭하면 브라우저 자체는 다음과 같습니다.

200 OK

... 내 주요 형태의 컨트롤보다는.

ADO를 DBEXPRESS 또는 BDE와 같은 다른 데이터베이스 구성 요소로 바꾸면이 오류가 발생하지 않는 것 같습니다.

이 오류는 나에게 알려주고 어떻게 고치는가?

(D2007과 함께 내장 된 주식 "웹 용 VCL"재고를 사용하고 있습니다).

모든 도움에 미리 감사드립니다!

도움이 되었습니까?

해결책

제공된 "솔루션" 당신이 인용 한 링크 기본적으로 잘못되었거나 최소한 불완전합니다. ServerController.comInitialization을 Cimultithreaded로 설정하여 True IW Will Gurantee 모든 스레드는 COM이 올바르게 초기화됩니다. (예를 들어 Ajax 콜백에 대해 생각하십시오)

자신만의 사용자 정의 스레드를 만들면 해당 스레드에 대해 Coinitialize를 호출해야합니다. Intraweb은 사용자 정의 스레드에 대해 알지 못합니다.

다른 팁

방금 이것에 대한 답을 찾았습니다 여기:

나는 전체 문제가 Intraweb를 사용함으로써 시작 되었기 때문에 더 우아한 솔루션을 발견했습니다. 오히려 Intraweb가 나를 위해 COM을 초기화하게합니다. 이것은 그것을 멋지게 분류합니다.

MS SQL DBEXPRESS 드라이버 또는 ADO 드라이버를 IntRawEB와 함께 사용하는 경우 ServerController의 Cominitialization 속성을 'CimultithReaded'로 설정해야합니다.

이렇게하면 "Coinitialize가"오류가 발생하지 않았습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top