CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

在ASP中,如何用代码获取虚拟目录的物理目录?

楼主operfume(橘子香水)2006-03-16 20:42:21 在 Web 开发 / ASP 提问

主页目录位于C:\Inetpub\wwwroot\sante  
  在下面建立虚拟目录doc   =   d:\data\document  
   
  文件fileload.asp位于   sante\download下  
   
  在文件中有代码:  
      Server.MapPath("doc")   结果返回:C:\Inetpub\wwwroot\sante\download\doc  
      Server.MapPath("/doc")   结果返回:C:\Inetpub\wwwroot\doc  
      Server.MapPath("../doc")   结果返回:C:\Inetpub\wwwroot\sante\doc  
   
   
  怎样才能通过doc获得目录:d:\data\document?  
  问题点数:30、回复次数:14Top

1 楼fluxayxxx(阿茂)回复于 2006-03-16 22:29:56 得分 10

不懂你的意思....  
  文件fileload.asp位于   sante\download下,所以Server.MapPath("")   取得的结果就是C:\Inetpub\wwwroot\sante\downloadTop

2 楼operfume(橘子香水)回复于 2006-03-16 23:39:24 得分 0

我想把上传的数据存储另一个磁盘上,如在d:\data\document,  
  所以建立了一个虚拟目录doc指向它,因为写入文件需要知道物理路径,所以不知道在fileload.asp中怎样才得到doc的实际物理目录.  
  Top

3 楼operfume(橘子香水)回复于 2006-03-16 23:40:15 得分 0

按道理,   Server.MapPath("doc")应该返回d:\data\document?Top

4 楼sparks345(sparks345)回复于 2006-03-17 00:29:21 得分 0

doc=cStr(doc)  
  Server.MapPath(doc)Top

5 楼caixinke(<<虎讯网>>hoosoon.com)回复于 2006-03-17 01:46:15 得分 15

你想在文件C:\Inetpub\wwwroot\sante\download\fileload.asp文件中取得doc虚拟目录的物理路径d:\data\document对吧,分析一下,按找你说的,虚拟目录download和虚拟目录doc应该是同级关系,你当前在虚拟目录download下对吧,所以应该是Server.MapPath("../doc")   ,而你说这个取回的不正确是C:\Inetpub\wwwroot\sante\doc,不是想要的d:\data\document,我感觉这个是不可能的,非要找原因那我想只有一个原因:你的站点C:\Inetpub\wwwroot\sante不是iis的主目录,你的站点是虚拟目录sante,真正的主目录是C:\Inetpub\wwwroot,所以你要么改变主目录为C:\Inetpub\wwwroot\sante,要么用Server.MapPath("../sante/doc")    
  Top

6 楼caixinke(<<虎讯网>>hoosoon.com)回复于 2006-03-17 01:55:48 得分 0

更正一下,上面最后一句应该为Server.MapPath("/sante/doc")Top

7 楼operfume(橘子香水)回复于 2006-03-17 08:57:17 得分 0

Server.MapPath("/sante/doc")返回的是:c:\inetpub\wwwroot\sante\doc  
  Top

8 楼operfume(橘子香水)回复于 2006-03-17 08:59:21 得分 0

<a   href="doc/asp_1.htm">...</a>  
  能够打开d:\data\document中的文件asp_1.htmTop

9 楼caixinke(<<虎讯网>>hoosoon.com)回复于 2006-03-17 09:12:15 得分 0

改变主目录为C:\Inetpub\wwwroot\sante,目前的主目录是C:\Inetpub\wwwroot,只要改了什么都就好了。Top

10 楼chenyu112(晨雨)回复于 2006-03-17 10:27:11 得分 0

学习一下Top

11 楼chenyu112(晨雨)回复于 2006-03-17 10:42:39 得分 5

Server.mappath("/你要取的虚拟目录名称"),我试过了,可以Top

12 楼operfume(橘子香水)回复于 2006-03-17 21:29:19 得分 0

不行,我把主目录改成C:\Inetpub\wwwroot也不行,太怪了.Top

13 楼caixinke(<<虎讯网>>hoosoon.com)回复于 2006-03-17 22:06:17 得分 0

把主目录改成C:\Inetpub\wwwroot\santa,兄弟,咋这么笨呀Top

14 楼operfume(橘子香水)回复于 2006-03-17 23:16:43 得分 0

我知道了,只要把虚拟目录建立在网站的主目录下,  
  Server.MapPath("/doc")就对了.  
  当然把网站的主目录设置在santa也对,如果santa是一个应用,这样:  
  Server.MapPath("/santa/doc")才对.  
  我一直以为在一个应用下建立的虚拟目录,通过Server.MapPath("/doc")可以得到物理路径.  
  头脑短路了.Top

相关问题

  • asp源代码!
  • 求一虚拟江湖源代码!
  • 急需asp代码!!
  • asp代码问题
  • ASP代码问题?
  • 如何用VB(非ASP中的VB)取得IIS的信息,如本机IP,虚拟根目录对应的物理路径等
  • 你有没有见过有一种C# ASP。NET代码,把Aspx.CS和aspx文件放在虚拟目录里,不编译就能运行?
  • 怎么把虚拟路径转换为物理地址?
  • 有关虚拟路径和物理路径
  • 如何取得虚拟目录的物理路径?

关键词

  • 虚拟
  • 物理
  • 文件
  • document
  • asp
  • server
  • 目录
  • sante
  • wwwroot
  • inetpub

得分解答快速导航

  • 帖主:operfume
  • fluxayxxx
  • caixinke
  • chenyu112

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo