0

POSアプリケーション用にCD722UNカスタマーディスプレイを使用しています。

USB2.0接続とドライバー電気ショック療法を含むインストールパッケージが付属しています。

今、私のアプリケーションのために。このドライバーにアクセスしたい場合はどうすればよいですか?

現在、「CD722UNアプリケーション」の.dllパスを使用していますが、クライアントのOSなどから警告を受ける可能性があります。

    Declare Function opencd722usb Lib "C:\Program\cd7220 USB\cd722dusb.dll" () As Boolean
    Declare Function writecd722usb Lib "C:\Program\cd7220 USB\cd722dusb.dll" (ByRef dataoutput As Byte, ByVal Length As Integer) As Integer
    Declare Function readcd722usb Lib "C:\Program\cd7220 USB\cd722dusb.dll" (ByRef DataInput As Byte, ByVal size As Integer) As Integer
    Declare Function closecd722usb Lib "C:\Program\cd7220 USB\cd722dusb.dll" () As Boolean

私の最初の考えは、最初にデバイスマネージャにデバイスがインストールされているかどうかを確認し、そこからドライバを使用することでしたか?
または
、アプリケーションフォルダ内に.dllを配布し、
searchpathを使用します""installed directory"\cd722dusb.dll"

最善の解決策は何ですか?

前もって感謝します!

4

1 に答える 1

1

デバイスに自分でアクセスする方法を理解することは、適切にアクセスする方法に関するドキュメントがない場合、通常はお勧めできません。可能性が多すぎるため、管理された言語ではコードが非常に扱いにくい場合があります。サプライヤがすでにアクセスDLLを提供している場合は、おそらくドキュメントを入手することさえできません。

DLLをEXEと同じフォルダにコピーするだけで、このDLLが機能する可能性はかなり高くなります。最初にそれを試してください。DeclareステートメントではDLL名のみが必要です。問題が発生した場合にコピーする必要がある可能性のある他のDLLについては、インストールディレクトリを調べてください。次のオプションは、実行時にパスを検出できる場合は、SetDllDirectory()関数をP/Invokeすることです。次のオプションは、DLLを含むディレクトリをシステムPATH環境変数にインストーラーに追加させることです。パスをハードコーディングすることが最後の手段です。

于 2010-02-25T11:48:59.507 に答える