2009-08-25 5 views
0

여기 물어하려고합니다 .NET 응용 프로그램이 w3wp 프로세스에서 실행될 때 오류가 발생합니다. 응용 프로그램 풀이 64 비트 프로세스로 실행되도록 구성되었습니다. PIA ADODB는 주로 레코드 세트 만 데이터 컨테이너로 사용합니다. CLSID {00000535-0000-0010-8000-00AA006D2EA4} 인 구성 요소의 COM 클래스 팩터 리를 검색CLSID와 구성 요소의 COM 클래스 팩터 리를 검색 {00000535-0000-0010-8000-00AA006D2EA4}

다음 오류로 인해 실패 : 800703fa (을 검사 물론 레코드가 이미이 컴퓨터에 설치되어 있어야합니다.)

개발 환경에서 C : \ Program Files \ Microsoft.NET \ Primary Interop Assemblies \ adodb.dll 버전 7.10.6070.0, WIN XP, VS 2008을 설치했습니다.

테스트 환경에서 win 2008 서버를 64 비트 설치했습니다. adodb.dll은 C : \ Program Files (x86) \ Microsoft.NET \ Primary Interop Assemblies \ adodb.dll 버전 7.10.2346.0에 있습니다.

불행히도 특정 시나리오를 가리킬 수 없습니다. 그것은 아주 산발적으로 일어난다. 그러나 일단 w3wp 프로세스가 작동을 멈 추면 모든 일이 발생합니다! iisreset 후에 시스템이 돌아오고 iis 재설정 직전에 실패한 동일한 비즈니스 프로세스가 성공적으로 실행됩니다!

나는 왜 2008 년 서버에 dll win win이 설치되었는지 확인하지 못했습니다. 그러나 서버는 최신 MS 업데이트로 최신 버전입니다.

도와주세요!

감사합니다, 예브게니

답변

0

같은 실행 파일에 32 비트 및 64 비트 코드를 혼합 할 수 없습니다. MS 오피스는 32 비트 코드를 사용하고 있습니다.

+0

그래서 해결책은 무엇입니까? – sarat

+0

풀을 32 비트 모드로 실행하도록 구성 하시겠습니까? 'enable32BitAppOnWin64' 메타베이스 속성이 있습니다. –

+0

그래서 webservice를 x86으로 컴파일하고 IIS에서이 플래그를 설정해야합니까? 나는 똑같이하고 같은 오류를 받았다고 생각한다! – sarat