0

一部のデータ ソース用に ODBC ドライバーを実装し、UnixODBC ドライバー マネージャーを使用して Linux でテストしました。このドライバーは、Windows だけでなく Linux でも動作するはずです。そのため、このドライバーを Windows でも展開して使用したいと考えています。このドライバー コードを Windows でビルドし、Visual Studio 2010 プレミアム エディションを使用して 64 ビット ドライバー DLL を作成しました。

ここで、このドライバーを Windows にインストールし、microsfot Driver Manager に登録してから、アプリケーションを使用してテストします。このドライバー用の MSI/セットアップ インストーラーはありません。そのため、このドライバー (DLL) を Windows に手動でインストールします。

Windows で「regsvr32」ツールを次のコマンドで使用しようとしました:「regsvr32」、次のエラーが発生しました:「モジュールはロードされましたが、エントリ ポイント DLLRegisterServer が見つかりませんでした」

ネットで検索したところ、このコマンドは DLL にないエントリポイント関数を探しているようです。DLL にこの機能が必要ですか?

Web でいくつかの調査を行った後、InstallDriver、ConfigDSN、ConfigDriver などのいくつかのメソッドをドライバーの一部として実装する必要があることがわかりました。これらのメソッドがドライバーに実装されていませんが、これは問題になりますか? これらのメソッドは、ドライバー dll をインストールするために ODBC ドライバー コードで必要ですか? このコードには、「DLLMain」という名前のメソッドも 1 つあります。これは、Windows での一般的な ODBC ドライバーの実装で必要ですか?

Windows に ODBC ドライバー (DLL) をインストールする他の方法はありますか? 同様の経験があるか、何か不足している場合は提案してください。

ありがとう。

4

2 に答える 2

0

同様の問題があり、必要なすべてのメソッドを実装する必要がありました。私の知る限り、DllMain は必要ありません。しかし、私は odbc dll ドライバーを扱ったことはありません。

于 2012-07-10T06:47:00.553 に答える
0

COM/ActiveX .dll を登録するには、「regsvr32」のみが必要です。

すべての .dll が COM/ActiveX であるとは限りません。

すべてのプログラムが .msi を必要とするわけではありません - おそらく単純なファイルコピーで十分です。

提案:

この .dll を他の人からコピーした場合は、そのインストール手順を読んでください。

于 2012-06-06T15:35:30.797 に答える