2003. 1.10 新規

GIVEIO.SYSアクセスライブラリ


概要と目的

 WindowsNT/2000/XPでは、アプリケーションレベルからI/Oポートをアクセスできませんが、これを可能にするドライバが"GIVEIO.SYS"です。
 プリンタポートなどに独自のボードなどを接続して使用している人等は、GIVEIOを知らない人はいないでしょう。(知らない人は他で調べてね)

 GIVEIOドライバは、ファイルをオープンして閉じるだけという、とても使い方が簡単ですが。事前にドライバーのインストールサービスの開始を行なう必要があり、これが結構やっかいです。
 インストールは一度でよいのですが、新しいPCに移行したり、たまたま出先の会社で使用するときなどは、新たにインストールする必要があります。

 ドライバーのインストールには、フリーソフトのLOADDRV.EXEを使うこと比較的簡単に出来ますが、LOADDRVはソース公開されているので、これを流用して自動的にインストール/アンインストールする関数を作成しました。

ダウンロード

 GIVEIO用ライブラリ
 GIVEIO.SYSは、どこかで探してください。

動作説明

 giveio_start()ファンクションをコールすると、GIVEIOサービスが使用できる状態にします。

1.WIndowsをチェック、Win95/98系ならリターン
2.giveioをオープンしてみる。
3.だめなら、giveioサービス開始後、オープンする
4.それでもだめなら、カレントディレクトリにあるgiveio.sysを登録後、サービス開始、オープンする。

 と、いうぐあいに順を追ってgiveioの開始を試みます。
 アドミニ権限があれば、giveio.sysをカレントディレクトリに格納しておけば、GIVEIOドライバの状態がどんな状態でも自動的にアクセス出来る仕組みです。
 1,2,3、4(またはエラー)でどの作業を行ったかはリザルトに戻ります。

 giveio_stop()では、引数でgiveioサービスの停止や、ドライバの登録削除が選択出来ますが、giveio_start()のリザルトを引数にすれば、プログラム起動時の状態へ戻せます。

 具体的な使用例は、ここのspcisp用パラレルドライバやMMCテストにあります。