Hi folks,
I want to find out whether my projector is running from a write protected
drive. I don't want to rely on Windows drive letters because I want a
cross platform solution and in any case, an increasing number of people
have more than one write protected drive on their windows box. (e.g. both
a DVD and CD drive).
This turned out to be trickier than I thought. I felt sure there would be
some system property, or that buddyAPI or fileio would do it for me.
In the end, I've opted for fileIO, but it's a bit messy. FileIO will not
report an error if I try to open a file with the 'write' flag set to true,
which strikes me as a bug.
It will, however, cause an error if I try to create a file on a
non-writable drive, although if the drive is writable, I then have to
'clean up' and remove the dummy file that got created, which requires also
that I open it. (You can only delete a file that is open with fileIO).
This seems like a lot of messing about, but it works.
Here's my code, does anyone have a slicker approach? Suggestions for
freeware xtras are welcome.
on moviePathWritable
f = new(xtra "fileio")
dummyFilePath = the moviepath & "zxxxxxxz.txt"
f.createFile(dummyFilePath)
errCode = f.status()
if errCode <> 0 then
-- some error, assume that disk can not be written to
return false
end if
f.openfile(dummyFilePath, 0)
f.delete()
return true
end
Brennan
[To remove yourself from this list, or to change to digest mode, go to
http://www.penworks.com/lingo-l.cgi To post messages to the list, email [EMAIL
PROTECTED] (Problems, email [EMAIL PROTECTED]). Lingo-L is for learning and helping
with programming Lingo. Thanks!]