2017-11-29 5 views
0

Paradox 데이터베이스 용 이전 ODBC 드라이버 (Intersolv ODBC Paradox 드라이버)에 문제가 있습니다. 데이터베이스의 주 프로그램이 실행되는 동안 Paradox 데이터베이스에 데이터를 읽고 쓰는 응용 프로그램이 있습니다. 나는 MS Paradox 드라이버로 문제가 발생했습니다. 이제이 드라이버로 모든 것이 잘 작동하고 데이터베이스에서 동시에 작업 할 수 있습니다. 내 문제는 Windows 10에서만 작동합니다. Win7에서 데이터베이스를 열려고하면 오류가 발생합니다 (SQLAllocHandle 오류). 주 프로그램을 닫으면 드라이버가 작동합니다. 윈도우 서비스로 데이타베이스에 접근하려고 시도했는데 Win7에서 작동합니다. 메인 프로그램이 열려있는 동안 데이타에 접근 할 수 있습니다.ODBC 드라이버가 Win10에서는 잘 작동하지만 Win7에서는 작동하지 않습니다.

나는 Adminrights가있는 응용 프로그램을 열고 Psexec System acc. 주 프로그램이 열려있을 때도 항상 같은 오류가 발생합니다. Win7과 Win10의 차이점을 아는 사람이 있습니까? 둘 다 64 비트.

답변

0

필자는 원래의 Delphi 애플리케이션이 실행되는 동안 Paradox 테이블을 열어 데이터를 읽으려고 시도하면서 64 비트 시스템에서 이와 똑같은 문제를 겪고있었습니다. Microsoft Paradox 드라이버를 사용하면 ODBC DataReader를 실행하려고 할 때 "외부 테이블이 예상 된 형식이 아닙니다"오류가 발생하고 Intersolv 드라이버를 사용하면 시도했을 때와 동일한 SQLAllocHandle 오류가 발생합니다 연결을여십시오.

I이 스레드의 코멘트에서 찾았 정적 객체의 연결을 갖는 차이를 만들어

Paradox Table - Oledb Exception: External table is not in the expected format

있다. 내 응용 프로그램에서 DB 연결과 쿼리 코드를 정적 클래스로 이동 한 다음 작업을 시작했습니다. 이것은 아마도 귀하가 언급 한 Windows 서비스가 귀하의 데이터를 읽을 수 있었던 이유 일 수 있습니다.

Win7과 Win10의 차이점은 확실하지 않지만 PDOXUSRS.LCK 파일을 열 때 스레드 사용 권한 문제라고 의심됩니다.

희망이 도움이됩니다.

관련 문제