3

Windows7 マシンでビットを書き込むためにパラレル ポートにアクセスする方法を見つけようとしています。このパラレル ポートは PCI カード上にあり、Windows7 によって自動的にインストールされ、LPT2 として監視できます。ポートに割り当てられるアドレスは E800-E807 および E480-E487 です。これは非物理アドレスのように見えます。http://www.logix4u.net/inpout32.htmの inpout32.dll または Java ソリューションとしてparport.dll を使用するなど、ポートに書き込むさまざまな方法を既に試しました。これらのポートを解放するために Userport をインストールしましたが、このアプリでは実際の物理ポートしか解放できないと思います。では、ポート アドレスをたとえば 378 に変更する方法、または inpout32.dll を使用して仮想アドレスにアプリを書き込む方法を教えてください。

BIOS で 378 アドレスを無効にするなど、Google で見つけたアドバイスをいくつか試してみました。または、LPT1、LPT2、LPT3 への割り当てを切り替えても、何も機能しないようです。

編集:誰かがこの PCI カードの特定のドライバーを知っているので、デフォルトのものを使用する必要はありませんか? それは: http://www.delock.de/produkte/gruppen/IO+Karten/1x_Parallel_UND_2x_Seriell_-_PCI_Karte_89004.html

4

1 に答える 1

0

E800-E807 および E480-E487 は 16 ビットの I/O アドレスです。そのため、 WinIOなどのツールキットを使用してそれらを読み書きできます。これは PCI デバイスであるため、I/O アドレスは起動時に動的に割り当てられ、いつでも変更される可能性があることに注意してください。適切に作成されたプログラムは、カードの I/O アドレスを Windows に問い合わせ、ハードコーディングする代わりにそれを使用します。

于 2014-05-09T17:34:07.337 に答える