2009-07-28 4 views
0

Windows 2003 Server에서 응용 프로그램을 실행하려고하면이 런타임 오류 R6034가 표시됩니다.Windows Server 2003에서 Firebird Server 2.1을 사용할 때 런타임 오류 R6034 (gds32.dll을로드 할 수 없음)

의 Microsoft Visual C++ 런타임 라이브러리

런타임 오류!

R6034

이 응용 프로그램은 C 런타임 라이브러리 잘못 하중을 시도하고있다. 정보는 애플리케이션 지원 팀에 문의하십시오.

이 서버는 Firebird 2.0이 설치되어 있고 작동하지만 제거한 후 Firebird 2.1을 설치했지만 Firebird 2.1이 전혀 작동하지 않습니다.

나는 내가 17910을 사용하고 파이어 버드 버전이 올바른 결과를 반환 설치되어있는 dll을 볼 수 instclient를 사용하는 경우 : 나는 또한 손실 될 수있는 다른 DLL을 찾았다

>instclient.exe query gds32 
Installed GDS32.DLL version : 6.3.1.17910 (shared DLL count 1) 

시스템은 없지만 시스템은 깨끗하지만 Firebird를 작동시킬 수는 없습니다.

왜 gds32가 필요한지 궁금하신 분은 TdsBackupService 구성 요소를 사용하고 gds32를 기본값 (또는 최악의 하드 코드 된)으로 사용하므로 fbclient.dll로 변경할 수 없기 때문입니다.

이 문제를 해결할 수있는 아이디어는 언제나 환영합니다. 감사합니다.

답변

2

대부분의 아마 당신은 system32 디렉터리에있는 기존 gds32.dll을 만들기 위해 선택했다,하지만 MSVC 런타임 라이브러리의 필요한 버전이 설치되어 있지 않습니다. Firebird 서버 버전에 따라 32 비트 또는 64 비트 버전의 Microsoft Dependency Walker을 사용하여 찾을 수없는 DLL을 확인하십시오. 어쨌든 MS 재배포 가능 패키지를 설치하면 도움이됩니다.

+0

오류는 C 런타임이 잘못로드 된 것이 아니라 잘못로드되었다고 말합니다. R6034는 MS 재배포 가능 패키지를 설치 한 후에도 발생할 수 있습니다. –

+0

Microsoft Visual C++ 2005 SP1을 설치했고 즉시 작동했습니다! 감사! –

1

아마도 C 런타임 DLL을 SxS 디렉토리가 아닌 경로에서로드하기 때문에 오류가 발생했을 수 있습니다. 의존성에 대해 OS 로더에게 알리는 exe에 매니페스트를 추가해야합니다. this answer을 참조하십시오. 직접 관련이 없지만 R6034를 수정하는 방법을 알려줍니다. 오류는 GDS32.dll이 아닌 C++ 런타임 라이브러리를 참조하십시오. 다른 질문은 R6034를 직접 언급하지는 않지만, 나는 그 질문에 답했으며 그 근본 원인 인 R6034가있었습니다.