問題タブ [driver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - 32 ビット アプリケーションから 64 ビット ドライバーを使用する
32 ビットで実行する必要がある Windows アプリケーションがあります (他の制限により制御できないため)。ただし、私のアプリケーションは、インストールされているシステムに応じて、32 ビットまたは 64 ビットのドライバーを呼び出してアクセスする必要があります。
DeviceIoControl() 呼び出しを介してドライバーにアクセスし、インクルード ファイルで宣言されたデータ構造を交換します。データ構造には、「DWORD_PTR」として宣言されたフィールドが含まれています (インクルード ファイルも制御しません)。
私の問題は、64 ビット システムでは、ドライバーが構造体に 64 ビット整数が含まれていることを期待していることです (DWORD_PTR 宣言のため)。ただし、私の 32 ビット プログラムは、これらの DWORD_PTR を 32 ビット整数として認識します。次に、データ構造のプログラム バージョンと、それらの構造のドライバーの理解との間にデータの不一致があります。
DeviceIoControl() は ERROR_INSUFFICIENT_BUFFER で失敗します (システム コールに渡されるデータ領域が小さすぎます)。構造体の 64 ビット バージョンをドライバーに渡すと、このエラーが発生しないことを確認しました。
この混乱の中には、いくつかの醜いオプションがあります。しかし、誰かがより良い提案を持っているのだろうか?
解決:
- REAL 64 ビット データ フィールド (__int64) を使用して、共有構造体の新しいコピーを宣言します。
- OS アーキテクチャを動的にチェックする (32/64)
- DeviceIoControl() 呼び出しの構造体の 32 ビットまたは 64 ビット バージョンを使用します。
欠点:
- 構造体宣言の明示的な 64 ビット コピーを手動で維持する必要があります。それは時間が経つにつれて痛みになる可能性があります。
私の他のソリューションはこれのバリエーションですが、常に構造定義のコピーを維持する必要があります (たとえば、COM サーバーの IDL オプションなど)。
編集: これは Microsoft ドライバーであり、IoIs32bitsProcess(irp) を使用していないようです!
postgresql - Persevere データソース ドライバー
私は辛抱するのが初めてで、helloWorldチュートリアルを行いましたが、非常に印象的でしたが、実際のpostgresデータベースに接続しようとしていて、ドライバーを認識させるのに苦労していることに気づきました。
私が持っていたpostgres用のすべてのjdbcドライバーをpersevere/libフォルダーにドロップしました:
- postgresql-8.3-603.jdbc2ee.jar
- postgresql-8.3-603.jdbc2.jar
- postgresql-8.3-603.jdbc3.jar
- postgresql-8.3-603.jdbc4.jar
それでも、プロジェクトフォルダーから引数を指定せずにコマンド「persvr」で固執を開始すると、次のエラーメッセージが表示されます。
私は実際に helloWorld プロジェクトを演習として拡張しようとしているので、postgres.json ファイルを helloWorld/WEB-INF/config フォルダーに追加しました。そのファイルの内容は次のとおりです。
postgresドライバーが見つからない理由を教えてください。
ありがとう、ランスロット。
windows - WindowsデバイスドライバがPerlを使用してロードされているかどうかを確認するにはどうすればよいですか?
Perlを使用してデバイスドライバがロードされているかどうかをどのように確認できるのでしょうか。オペレーティングシステムはWindowsServer2003であり、特定のビデオカードのドライバが正しくロードされているかどうかを確認したいと思います。
linux - Linux の JFS ドライバーで起動する引数を変更する
私は QNX OS の方が一般的で、起動時に ide ドライバーの引数を変更できました。フラッシュカードをマウントする jfs ファイルシステムの Linux カーネルで開始される引数を変更したかったのです。この情報に関する適切な Web ソースが見つからないようですが、正しく「グーグル検索」していないことは確かです。
jfs/ide ドライバーで使用できるさまざまなオプションとは何ですか? また、現在実行中のドライバーのオプションはどこで変更できますか?
ありがとうございます。申し訳ありませんが、これは正確にはプログラミングではありませんが、プログラミングに関する質問をすると、このサイトは常に素晴らしい回答を提供してくれるので、ここでも役立つと思います.
java - mysql ドライバー jar が認識されない
jar ファイルにトークン クラス ファイルがあります。トークン クラス ファイルは、jdbc を使用してデータベースからデータを取得するクラスです。ただし、jar ファイルを呼び出すと、外部の mysql ドライバー jar ファイルが認識されないようです。
エラーは Class.forName(driver); という行に示されています。
Antビルドファイルでmysqlドライバーを参照し、考えられるすべてのクラスパスを参照しました。
何も機能していませんか?任意の助けをいただければ幸いです。
ありがとう
java.lang.ClassNotFoundException: mysql at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) java.lang.ClassLoader.loadClass(ClassLoader.java:316) で、sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:288) で、java.lang.ClassLoader.loadClass(ClassLoader.java:251) で。 lang.ClassLoader.loadClassInternal(ClassLoader.java:374) で java.lang.Class.forName0(Native Method) で java.lang.Class.forName(Class.java:169) で socksviahttp.server.token.getConnection(token. java:58) で socksviahttp.server.token.exists(token.java:75) で socksviahttp.server.ServletSocks.doPost(ServletSocks.java:328) で javax.servlet.http.HttpServlet.service(HttpServlet.java:760) ) javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at jhttpserver.JHttpServerThread.run(JHttpServerThread.java:217)
c - Visual Studio 2005 での WinDDK テスト ユーティリティの使用
現在、WinDDK 2003 で提供されている NdisProt ドライバーを実行しようとしています。ドライバーを正常にビルドしてインストールしました。
uiotestという名前のテストユーティリティが付属しています
make でユーティリティをビルドすると、正しく実行されます。
CreateFile( "\\.\\NdisProt"
Visual Studio 2005 で空の win32 アプリケーション ソリューションを作成すると、 [...])`の間、ドライバーに接続できません。呼び出しは常に無効なハンドルを返します。私のプロジェクトは、make とまったく同じようにビルドされていないと思われます。make で使用する「sources」ファイルの内容は次のとおりです。
プロジェクトに lib パスとインクルード パスを追加しました
これがddk環境からのmakeの戻り値です
何が起こっているのかを知るために何をチェックすればよいのかよくわかりません。新しいプロジェクトはコンパイルおよび実行されCreateFile()
ますが、INVALID_HANDLE_VALUE で失敗します
windows - カーネル モード ドライバーのファイルへの書き込み
Windows キーボード フィルター ドライバーに取り組んでおり、ファイルに書き込む必要があります。zwcreate、zwwrite、および zwclose を使用してみましたが、ドライバーが PASSIVE_LEVEL で実行されておらず、BSOD が発生しました。これまで Windows ドライバーを作成したことがありません。助けてくれてありがとう!
編集: ありがとう、J. Passing!
driver - Vista 64 用に署名されたドライバー WHQL を取得するにはどうすればよいですか?
私の会社が顧客のために数年間使用しているドライバーがあります。このドライバは、Vista 64 ではインストールできなくなりました。ドライバに署名してもらう必要があると思いますが、どうすれば開始できるかわかりません。
- 始めるのに最適な場所は何ですか?
- 通常、これにはどのくらいの時間がかかりますか?
- Microsoft に何を送信する必要がありますか?
- 私たちのためにこれをすべてやってくれるサードパーティはいますか?
- プロセス(サードパーティの有無にかかわらず)には通常いくらかかりますか?