ドライブが書き込み可能なWindowsAPI関数であるかどうかを確認します[閉じ
質問
こんにちは、ドライブが書かれている場合に戻るWindows API関数はありますか。ドライブがドライブの下で表示される場合がありますが、プログラム的に書き込もうとすると、ユーザーがOKボタンを押すまでアプリケーションをフリーズするMSGボックスエラーが提供されます。迷惑なエラーボックスなしでドライブが書き込み可能であるかどうかを確認する組み込みの機能はありますか?
私はすでにTryCopyを試してみましたが、同じmsgboxエラーを返します:(
ありがとう!
解決
電話してみてください SetErrorMode( SEM_FAILCRITICALERRORS)
エラーメッセージボックスが表示されないようにします。
http://msdn.microsoft.com/en-us/library/ms680621(vs.85).aspx
他のヒント
Microsoft Scripting Runtimeへの参照を設定できます。
次のようなコードを使用できます。
Dim FSO as New FileSystemObject
Dim clsDrive as Scripting.Drive
Set clsDrive=FSO.GetDrive("C")
ドライブクラスにはフリースパースプロパティがあり、ドライブが書き込みできない場合はゼロになります。
さらに、Scripting.Folderクラスがあります。これは、FSO.getFolder()を使用して、属性プロパティを備えた型fileattributeのフラグで構成されるプロパティを備えています。次のようなコードを使用できます
clsFolder.Attributes And FileAttribute.Readonly
err ... readonlyness ;-)を確認するには
電話 getVolumeInformation() そして確認してください FILE_READ_ONLY_VOLUME
返されたフラグパラメーター。