ドライブ文字を取得するには?


ますだ  2008-10-10 03:10:39  No: 140614

よろしくお願いします。
一番最後に振られているドライブ文字がFであればメッセージボックスを
出すプログラムを作成したいです。Web上よりサンプルコードを入手し
あと一歩のところまで来ています。

Dim letter As String

 Set Locator = CreateObject("WbemScripting.SWbemLocator")
 Set Service = Locator.ConnectServer
 Set BtcSet = Service.ExecQuery("Select * From Win32_BootConfiguration")

 For Each Btc In BtcSet
     letter = Btc.LastDrive & vbCrLf & vbCrLf
 Next
 
 If letter = "F:" Then
   MsgBox "Fドライブが既に使用されています。"
 End If
 
 Set BtcSet = Nothing
 Set Btc = Nothing
 Set Service = Nothing
 Set Locator = Nothing

これで実際に最終ドライブ文字がFの場合、letterにF:が取得できるのは確認しているのですが、
次のIf文で条件不一致となりメッセージボックスを出せません。このサンプルコードで
得られるドライブ文字というのは手入力した「F:」と違うのでしょうか。
不勉強の中でのご質問で申し訳ありませんが、ご教授いただけないでしょうか。


10月  2008-10-10 03:23:26  No: 140615

下記の様に修正して見て下さい。

 If Left$(letter, 1) = "F" Then
   MsgBox "Fドライブが既に使用されています。"
 End If

それにしても同じ内容の質問を4ケの投稿するなど不注意ですね。


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




  


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