2012-06-06 2 views
0

일부 데이터 소스에 대해 ODBC 드라이버를 구현하고 Linux에서 UnixODBC 드라이버 관리자로 테스트했습니다. 이 드라이버는 Windows뿐만 아니라 Linux에서도 작동합니다. 그래서 우리는이 드라이버를 Windows에 배포하고 사용하기를 원합니다. Windows에서이 드라이버 코드를 작성하고 Visual Studio 2010 premimate edition을 사용하여 64 비트 드라이버 DLL을 만들었습니다.MSI가없는 Windows에 ODBC 드라이버 (DLL)를 설치할 수 없습니다.

이제이 드라이버를 Windows에 설치하고 드라이버를 Microsfot Driver Manager에 등록한 다음 일부 응용 프로그램을 사용하여 테스트하려고합니다. 이 드라이버에는 MSI/setup 설치 프로그램이 없습니다. 따라서이 드라이버 (Dll)를 Windows에 수동으로 설치하려고합니다. "에 regsvr32"및 다음과 같은 오류가 :

우리는 "에 regsvr32"다음 명령을 사용하여 Windows에서 도구를 사용하여 시도 "모듈이로드되었지만, 진입 점의 DllRegisterServer를 찾을 수 없습니다"우리는 그물에 seached

이 명령은 DLL에없는 엔트리 포인트 기능을 찾습니다. DLL에이 기능이 필요합니까?

웹에서 조사를 한 후 InstallDriver, ConfigDSN과 같은 일부 메소드가 발견되면 ConfigDriver를 드라이버의 일부로 구현해야합니다. 드라이버에 이러한 메소드가 구현되어 있지 않습니다. 이것이 문제입니까? 드라이버 DLL을 설치하려면 ODBC 드라이버 코드에이 방법이 필요합니까? 이 코드에는 "DLLMain"이라는 메서드 하나가 있습니다. Windows에서 일반적인 ODBC 드라이버 구현시이 요구 사항이 맞습니까?

Windows에 ODBC 드라이버 (DLL)를 설치할 수있는 다른 방법이 있습니까? 비슷한 경험이 있거나 뭔가 빠뜨린 경우 제안하십시오.

감사합니다.

답변

0

"regsvr32"만 있으면 COM/ActiveX .dll을 등록 할 수 있습니다.

모든 .dll은 COM/ActiveX입니다. 사용자의 것 같지 않습니다.

일부 프로그램에는 .msi가 필요하지 않을 수도 있습니다. 간단한 파일 복사만으로 충분할 수 있습니다.

는 SUGGESTION : 당신이 다른 사람에서이 .DLL을 복사 한 경우

은 ... 그들의 설치 지침을 읽어!

+0

감사합니다. DLL은 어디에서나 복사되지 않으며 Visual Studio에서 코드를 컴파일하여 생성됩니다 (Linux에서 실행 됨). –

+0

.dll의 소스 코드를 복사 했습니까? 정확히 어디에서 가져 왔습니까? 그리고 "README"또는 다른 설치/사용법에 대한 메모가 있습니까? – paulsm4

0

비슷한 문제가있어서 필요한 모든 방법을 구현해야했습니다. 내가 아는 한 DllMain은 필요하지 않습니다. 그러나 나는 ODBC DLL 드라이버로 일한 적이 없다.

관련 문제