CDドライブを取り出し不可にするには?


nine  2003-03-11 20:09:03  No: 77359

CD上からプログラムを実行しているのですが途中で取り出されてしまうとブルーバックになってしまいます。単純にCDドライブのイジェクトをロックするといいと思ったんですけど、どなたか分かる方はいらっしゃるでしょうか?
よろしくお願いします。
環境はWin98SE、VB6です。


Kenji  2003-03-12 06:01:24  No: 77360

ドライブのロックは難しそうなので…
MSDNで調べていたら、EXEファイルのヘッダ(起動時にWindowsのローダによって読み込まれる)
に次のようなものがありました。
IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
PEファイルがリムーバブルメディア(着脱可能ディスク)上にある場合はスワップファイルへコピーして実行することを示します。
参考にしたHPはhttp://www5e.biglobe.ne.jp/~randy/wps/backnumber/wps0005.txt
です。
コンパイルした後のEXEファイルをバイナリエディタなどで編集すればいいのですが、
Windows(MSDOS?)にEDITBINというソフトがあるようです。Win2000ではインストールされているようです。
詳しくは
http://www.compaq.co.jp/products/dvf/docs/vf-html/pg/pg26_09.htm
を見てください。

コマンドプロンプトを起動し、EXEファイルのあるフォルダに移動し
EDITBIN /SWAPRUN:CD (EXEのファイル名)
とすればできるようです。やってないのでできるかどうかわかりません。


nine  2003-03-13 20:31:59  No: 77361

遅くなってすみません
Kenjiさんレスありがとうございます
EDITBINを使用して試してみたんですけど、やはりやはりブルーバックになってしまいうまくいきませんでした。
一応、HDDにはスワップファイルはできてはいるんですが・・・
とりあえずもう少しこの方法に関しては調べてみます。

もし他に何かわかりましたら、又ご教授下さい。
お願いします。


Loreley  2003-04-12 19:27:00  No: 77362

いまさらもう見ていないかもしれませんが、
サンプルをみつけたので

http://www.mvps.org/vbnet/index.html?code/disk/deviolock.htm


Loreley  2003-04-12 19:28:39  No: 77363

あ、しかも環境あってない(^^;
win98だとサンクしないとだめですね。


岡田 之仁  2003-05-18 09:51:22  No: 77364

はじめまして。

もうかなり経過してしまっておりますが・・・

ずいぶん昔にコード書いたのですが・・・見つからなくて・・・
そのものズバリのコードがありましたので、参考までに・・・

http://plaza5.mbn.or.jp/~heropa/vb31.htm

ここをご参照下さい。

以上。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加