PityOnU Posted September 3, 2007 Share Posted September 3, 2007 Is there a way t create a program in VB6 that will run at startu and continuously scan for a certain drive (in this case, my external one). AND, if the said drive is detecte, do one thing, and as soon as it is not deteced, do something else? Link to comment Share on other sites More sharing options...
gunsmokingman Posted September 4, 2007 Share Posted September 4, 2007 (edited) Is there a way t create a program in VB6 that will run at startu and continuously scan for a certain drive (in this case, my external one). AND, if the said drive is detecte, do one thing, and as soon as it is not deteced, do something else?How about a VBS Script that does the same thing. Here is a example script for you to try.Save As ActiveDrives.vbs Dim Fso :Set Fso = CreateObject("Scripting.FileSystemObject") Dim Act :Set Act = CreateObject("Wscript.Shell") Dim C1, Drv, Z1 StrD = "A_FILE_OR_SOMETHING_TO_CHECK_FOR" Do For Each Drv In Fso.Drives If Drv.IsReady Then '/-> There Was Something On The Drive Act.Run("%Comspec% /C @Echo Off && CLS && MODE 55,5 && COLOR F3 && " &_ "Echo. && Echo " & Chr(187) & Chr(160) & Drv.DriveLetter & ":\ && " &_ "Echo " & Drv.VolumeName & " && ping -n 2 127.0.0.1>nul"),1,True If Fso.FileExists(Drv.DriveLetter & ":\" & StrD) Then '/-> Exit The First Loop Code C1 = 1 'Place What You Want To Do Here End If If Fso.FolderExists(Drv.DriveLetter & ":\" & StrD) Then '/-> Exit The First Loop Code C1 = 1 'Place What You Want To Do Here End If Else '/-> The Drive Is Empty This Could Be The Floppy, CD Or DVD, USB Drive Act.Run("%Comspec% /C @Echo Off && CLS && MODE 55,5 && COLOR F3 && " &_ "Echo. && Echo " & Chr(187) & Chr(160) & Drv.DriveLetter & ":\ && " &_ "ping -n 2 127.0.0.1>nul"),1,True End If WScript.Sleep 1000 '/-> Exit The Inside Loop When C1 = 1 If C1 = 1 Then WScript.Quit Next '/-> Check To See If The Exit Code Is True, After The Inside Loop Has Ran If C1 = 1 Then WScript.Quit Else Z1 = Act.Popup("Did You Want To Continue With The Script.",7,"Exit Or Continue",4132) 'This Is For No You Do Not Want To Continue, Other Wise It Starts The Inside Loop Again If Z1 = 7 Then C1 = 1 End If Loop Until C1 = 1 Edited September 4, 2007 by gunsmokingman Link to comment Share on other sites More sharing options...
jcarle Posted September 6, 2007 Share Posted September 6, 2007 That's going to create a lot of disc activity... what is your goal with this? Link to comment Share on other sites More sharing options...
jdoe Posted September 6, 2007 Share Posted September 6, 2007 That's going to create a lot of disc activity... what is your goal with this?jcarle,Sure a program doing a scan, every 1 second for example, adds a little cpu activity but if the drive is not connected then it does not create activity on that disk. A call to GetDriveType, PathIsRoot or PathIsDirectory might be somehow a good choice IMHO, depending on which one have the less footprints. Link to comment Share on other sites More sharing options...
PityOnU Posted September 7, 2007 Author Share Posted September 7, 2007 Thank you for the code. I figured it would be continually scanning things.I was actually hoping for some kind of interface API with a Windows dll that will create activity only when the dll activates, but since we dont even know how to zip natively in windows, i doubt microsoft has released this Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now