使用** SUBST cmd **创建的文件夹无法在IIS 6上运行

时间:2010-05-12 05:51:11

标签: iis-7 iis-6 virtual-directory

使用 SUBST cmd 创建的文件夹无法使用 IIS 6 。在 IIS 7 (使用Windows 7)中,虚拟驱动器在浏览时不会列出,以便为虚拟目录设置物理路径。

任何人都可以告诉我如何解决这个问题吗? 有没有更好的方法来创建 SUBST

以外的虚拟驱动器

2 个答案:

答案 0 :(得分:5)

从此开始:http://msdn.microsoft.com/en-us/library/aa363908%28v=VS.85%29.aspx

...似乎你可以通过win api或者可能使用DefineDosDevice函数或方法直接在注册表中实例化全局。对不起,我不知道这可能适用于IIS,也可能不适用于IIS,但它适用于apache ...

我的问题是尝试使用subst作为apache的文件夹,需要将mount视为系统用户,或全局(因此subst不起作用)。即使使用诸如RunAsSystem之类的东西,你试图做一个替代的任何方式都不会产生可行的结果。

然而,我发现通过在注册表中创建DosDevice我有一个可行的'subst'挂载,apache / mysql / php-win可以使用。你也可以通过wmi,vb,c +等找到方法,我不知道(我怀疑)注册表方法是否直接相同,但这里是......

示例,我想要:subst S:C:\ PortableUSB

asA.reg文件......

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices]
"S:"="\\??\\C:\\PortableUSB"

或者,在注册表中它看起来像这样(所以你可以这样手动添加它)... 字符串名称“S:”(不带引号。当然,请使用您首选的DriveLetter) 这个String的值是“\ ?? \ C:\ PortableUSB”(没有引号。当然,使用你自己的路径)

需要重启。该子网是持久的,可在全球范围内使我还不知道它有多可靠,但到目前为止,我正在成功地使用它。 TwoHawks

答案 1 :(得分:1)

在Windows 7中使用subst创建的驱动器仅供创建它们的用户使用。 (可能只在同一个流程链或会话中,但我并不完全确定。)

让你的IIS用户进行替换。