2013-08-15 5 views
-1

클라이언트 컴퓨터에 MySQL을 설치하고 데이터베이스를 생성하고 채 웁니다. MySQL이 실행 중입니다. 그런 다음 컴퓨터의 dbxmys.dlllibmysql.dll을 클라이언트의 Windows/system32 폴더로 복사하고 컴파일 된 프로젝트 EXE 파일을 복사했습니다. 프로젝트를 실행에 나는 "YYY 모듈의 xxx.exe이며 예외의 TDBXError. dbxmys.dll (errorCode126를)로드 할 수 없습니다. 그것은 시스템 경로에서 누락 될 수 있습니다."오류를"xxx의 xxx.exe 모듈에서 예외 TDBXError dbxmys.dll (errorCode126)을로드 할 수 없습니다. 시스템 경로에서 누락되었을 수 있습니다."

를 얻을 수

는 또한 실행 파일과 같은 폴더에 dbxmys.dlllibmysql.dll을 복사 시도했지만 그 중 하나가 작동하지 않았다.

+0

[MySQL 버전 5.1 오류가있는 [xxx3 delphi database]의 가능한 복제본. 모듈 내의 예외 TDBXError. dbxmys.dll (errorCode126)을로드 할 수 없습니다.] (http://stackoverflow.com/questions/18243087/delphi-xe3-database-with-mysql-version-5-1-error-exception-tdbxerror-in-module) –

답변

1

가장 자주 발생하는 설명은 64 비트 시스템에서 32 비트 프로세스를 사용한다는 것입니다. 이 경우 파일 시스템 리디렉터는 System32에 액세스하는 32 비트 프로세스가 32 비트 시스템 디렉토리 인 SysWOW64로 리디렉션된다는 것을 의미합니다. 실제로 시스템 디렉토리가 필요한 곳에 있다면 파일을 저장해야합니다.

다른 가능한 실패 모드는 64 비트 DLL과 32 비트 프로세스가있을 수 있습니다. 아니면 부통령.

즉, 시스템 디렉토리는 시스템 파일을위한 것입니다. 그리고 응용 프로그램은 그것을 수정해서는 안됩니다. 따라서 응용 프로그램 디렉토리에 DLL을 배치하는 것이 올바른 일인 것 같습니다. 당신은 성공하지 않고 그것을 시도했습니다. 왜 실패했는지 말하기 힘듭니다. 아마도 추가 종속성이있을 수 있습니다. Profile mode에서 Dependency Walker를 사용하여 이것을 디버깅하십시오.