取り外し可能なドライブに現在ディスクが接続状態にあるかを調べるサンプルです。 フロッピーディスクドライブの場合には、例えばAドライブがFDDでフロッピーを挿入してない時、 「ドライブにディスクがありません。 ディスクをドライブ A: に挿入してください。」 とWindowsのメッセージダイアログが表示されてしまいますが、確認はできるようになっています。 このダイアログを表示しないようにするには、コチラのサンプルと併用してください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#module #deffunc getdrivestate int mref root, 0 mref stt, 64 s = "?:\\" : poke s, , root + 64 exist s + "nul" stt = (strsize = 0) return #global getdrivestate 5 // ドライブE if stat { mes "Eドライブは現在開くことができます。" } else { mes "Eドライブは現在開くことができません。" } stop
1 2 3 4 5 6 7 8 9 10 11 12 13
#module #defcfunc getdrivestate int root s = "?:\\" : poke s, , root + 64 exist s + "nul" return strsize = 0 #global if getdrivestate(5) { mes "Eドライブは現在開くことができます。" } else { mes "Eドライブは現在開くことができません。" } stop