asp.net 创建文件夹时出错:未找到路径“D:\”的一部分。(asp.net 使用 FSO)

这些天在整一个博客程序,其中的相册功能自然就用到IO.Directory和IO.DirectoryInfo对象,这两个对象会遍历网站所在的硬盘的磁盘根目录,不巧的是,博客传到购买的虚拟主机空间后,相册功能不能正常使用,现象是:向一个存在的文件夹上传文件可以成功,但是不能使用程序创建文件夹

经查询得知,是因为一般虚拟服务商没有给磁盘根目录开启service用户读取权限,所以在操作文件夹的时候,使用IO下的这两个类会出现如下错误:

未找到路径“D:\”的一部分。

D盘就是服务器上磁盘路径,可能会因为服务器的不同而不同,后来向空间商询问,说是.Net只给读取权限,不给写入权限的(迷惑~),但服务器支持FSO的。于是只好改程序了,我们知道在asp中可以使用fso创建文件夹和操作文件,于是想到用asp.net调用window中得fso组件。经测试可行:

1.先引用:

项目->引用->浏览->COM组件->Microsoft  Scripting  Runtime

2.代码中写:

Scripting.FileSystemObject  fso=new  Scripting.FileSystemObjectClass();  

fso.CreateFolder(Path)

编译后,在bin目录下多了一个Interop.Scripting.dll文件,把这个文件连同全站发布重新上传,OK了。

posted on 2006-12-06 09:51  三千  阅读(4198)  评论(7编辑  收藏  举报