如何在Director for windows 中判断光驱符号
很多用DIRECTOR作的多媒体光盘都是在光盘上运行的。在光盘上运行程序与在硬盘上 运行程序的最大区别就是运行速度。因此可能有的制作人员想把部分程序(可执行程序等)放在硬盘的某一目录下以提高运行速度,其它部分程序再从光驱上取得。但是这个好的想 法所碰到的第一个问题就是如何取得光驱符号。
在苹果电脑上,这一点非常容易做到。play movie "MyCD:Data:MovieA"任何挂在苹果电脑上的卷标(包括光驱)只要包含名字和路径就可自动执行。
而在PC机上路径名可能会变成"G:\MyCD\Data\MovieA" 或 "D:\MyCD\Data\MovieA" 不同的PC机由于分区不同,光驱的盘符也不同。那末如何在Director for windows 中判断光驱符号呢?
我用LINGO编写了一个函数CheckDrive(),首先我将在光驱的根目录下放一个文件名为Lingo.ini。 函数CheckDrive()只接受lingo.ini这个文件名作参数,它将返回本机的光驱符号。
具体用法如下:
put CheckDrive("lingo.ini") into myCD
程序将光驱符号传给出myCD 变量。
函数CheckDrive()的函数体如下:(因为大部分电脑的A驱和B驱为软盘驱动器,所以函数仅重C盘找起)。
on CheckDrive name
repeat with I = 66 to 90
set drive = numToChar( I )
set myThisPath = string(drive & ":\"& name)
set myFile = fileIO(mNew, "read", myThisPath)
if objectP(myFile) then
myFile(mDispose)
return drive&":"
exit
end if
end repeat
alert"Please check that"&"E&name"E&&"is on your CD drive."
end

