这个方法可以在你运行程序时预先按照你的要求设置好IIS的虚拟目录,如果希望客户自行定义设置内容你对COMMAND1做一下修改就可以了!希望可以帮到你。
Private Sub Command1_Click()
  strWebSite = ""             '虚拟站点名称
  strFriendlyName = ""           '程序名称
  strWebPath = ""     '网页文件路径
  strDefaultDoc                       '默认网站首页
 
MsgBox WebVirtualDir(strWebSite, strFriendlyName, strWebPath, strDefaultDoc)
'返回 True ,表示设置成功
End Sub
Public Function WebVirtualDir(ByVal strWebSite As String, ByVal strFriendlyName As String, ByVal strWebPath As String, ByVal strDefaultDoc As String) As Boolean
    Dim Han  As Object
    Dim Coco As Object
    
    On Error GoTo Wrong_Err                                   '出错控制
    
    Set Han = GetObject("IIS://LocalHost/W3SVC/1/Root")       '设置IIS根目录所在路径
    Set Coco = Han.Create("IIsWebVirtualDir", strWebSite)     '设置目录所在
        Coco.SetInfo
    
    Set Coco = Han.GetObject("IIsWebVirtualDir", strWebSite)
        Coco.AppCreate True
        Coco.Put "AppFriendlyName", strFriendlyName
        Coco.Put "AppRoot", "/LM/W3SVC/1/Root/" & strWebSite
        Coco.Put "Path", strWebPath
        Coco.Put "AppIsolated", 0                             '应用程序保护设置
        Coco.Put "DefaultDoc", strDefaultDoc
        Coco.Put "AccessFlags", 535
        Coco.SetInfo
    WebVirtualDir = True
    
Wrong_End:
    Set Coco = Nothing                                        '制空
    Set Han = Nothing
    Exit Function
    
Wrong_Err:
    WebVirtualDir = False                                     '差错控制
    strError = Err.Description
    Err.Clear
    Resume Wrong_End
    
End Function

解决方案 »

  1.   

    这个方法可以在你运行程序时预先按照你的要求设置好IIS的虚拟目录,如果希望客户自行定义设置内容你对COMMAND1做一下修改就可以了!希望可以帮到你。
    Private Sub Command1_Click()
      strWebSite = ""             '虚拟站点名称
      strFriendlyName = ""           '程序名称
      strWebPath = ""     '网页文件路径
      strDefaultDoc                       '默认网站首页
     
    MsgBox WebVirtualDir(strWebSite, strFriendlyName, strWebPath, strDefaultDoc)
    '返回 True ,表示设置成功
    End Sub
    Public Function WebVirtualDir(ByVal strWebSite As String, ByVal strFriendlyName As String, ByVal strWebPath As String, ByVal strDefaultDoc As String) As Boolean
        Dim Han  As Object
        Dim Coco As Object
        
        On Error GoTo Wrong_Err                                   '出错控制
        
        Set Han = GetObject("IIS://LocalHost/W3SVC/1/Root")       '设置IIS根目录所在路径
        Set Coco = Han.Create("IIsWebVirtualDir", strWebSite)     '设置目录所在
            Coco.SetInfo
        
        Set Coco = Han.GetObject("IIsWebVirtualDir", strWebSite)
            Coco.AppCreate True
            Coco.Put "AppFriendlyName", strFriendlyName
            Coco.Put "AppRoot", "/LM/W3SVC/1/Root/" & strWebSite
            Coco.Put "Path", strWebPath
            Coco.Put "AppIsolated", 0                             '应用程序保护设置
            Coco.Put "DefaultDoc", strDefaultDoc
            Coco.Put "AccessFlags", 535
            Coco.SetInfo
        WebVirtualDir = True
        
    Wrong_End:
        Set Coco = Nothing                                        '制空
        Set Han = Nothing
        Exit Function
        
    Wrong_Err:
        WebVirtualDir = False                                     '差错控制
        strError = Err.Description
        Err.Clear
        Resume Wrong_End
        
    End Function
      

  2.   

    有一个net XXX (具体是什么我不记得了)命令可以添加虚拟目录,你不如在安装脚本中执行该命令来添加虚拟目录
      

  3.   

    C:\>net share|help
    若需指定命令的详细信息,请键入“HELP 命令名”。
    ASSOC    Displays or modifies file extension associations
    AT       Schedules commands and programs to run on a computer.
    ATTRIB   Displays or changes file attributes.
    BREAK    Sets or clears extended CTRL+C checking.
    CACLS    Displays or modifies access control lists (ACLs) of files.
    CALL     Calls one batch program from another.
    CD       Displays the name of or changes the current directory.
    CHCP     Displays or sets the active code page number.
    CHDIR    Displays the name of or changes the current directory.
    CHKDSK   Checks a disk and displays a status report.
    CHKNTFS  Displays or modifies the checking of disk at boot time.
    CLS      Clears the screen.
    CMD      Starts a new instance of the Windows 2000 command interpreter.
    COLOR    Sets the default console foreground and background colors.
    COMP     Compares the contents of two files or sets of files.
    COMPACT  Displays or alters the compression of files on NTFS partitions.
    CONVERT  Converts FAT volumes to NTFS.  You cannot convert the
             current drive.
    COPY     Copies one or more files to another location.
    DATE     Displays or sets the date.
    DEL      Deletes one or more files.
    DIR      Displays a list of files and subdirectories in a directory.
    DISKCOMP Compares the contents of two floppy disks.
    DISKCOPY Copies the contents of one floppy disk to another.
    DOSKEY   Edits command lines, recalls Windows 2000 commands, and creates macros.ECHO     Displays messages, or turns command echoing on or off.
    ENDLOCAL Ends localization of environment changes in a batch file.
    ERASE    Deletes one or more files.
    EXIT     Quits the CMD.EXE program (command interpreter).
    FC       Compares two files or sets of files, and displays the differences
             between them.
    FIND     Searches for a text string in a file or files.
    FINDSTR  Searches for strings in files.
    FOR      Runs a specified command for each file in a set of files.
    FORMAT   Formats a disk for use with Windows 2000.
    FTYPE    Displays or modifies file types used in file extension associations.
    GOTO     Directs the Windows 2000 command interpreter to a labeled line in a
             batch program.
    GRAFTABL Enables Windows 2000 to display an extended character set in graphics
             mode.
    HELP     Provides Help information for Windows 2000 commands.
    IF       Performs conditional processing in batch programs.
    LABEL    Creates, changes, or deletes the volume label of a disk.
    MD       Creates a directory.
    MKDIR    Creates a directory.
    MODE     Configures a system device.
    MORE     Displays output one screen at a time.
    MOVE     Moves one or more files from one directory to another directory.
    PATH     Displays or sets a search path for executable files.
    PAUSE    Suspends processing of a batch file and displays a message.
    POPD     Restores the previous value of the current directory saved by PUSHD.
    PRINT    Prints a text file.
    PROMPT   Changes the Windows 2000 command prompt.
    PUSHD    Saves the current directory then changes it.
    RD       Removes a directory.
    RECOVER  Recovers readable information from a bad or defective disk.
    REM      Records comments (res) in batch files or CONFIG.SYS.
    REN      Renames a file or files.
    RENAME   Renames a file or files.
    REPLACE  Replaces files.
    RMDIR    Removes a directory.
    SET      Displays, sets, or removes Windows 2000 environment variables.
    SETLOCAL Begins localization of environment changes in a batch file.
    SHIFT    Shifts the position of replaceable parameters in batch files.
    SORT     Sorts input.
    START    Starts a separate window to run a specified program or command.
    SUBST    Associates a path with a drive letter.
    TIME     Displays or sets the system time.
    TITLE    Sets the window title for a CMD.EXE session.
    TREE     Graphically displays the directory structure of a drive or path.
    TYPE     Displays the contents of a text file.
    VER      Displays the Windows 2000 version.
    VERIFY   Tells Windows 2000 whether to verify that your files are written
             correctly to a disk.
    VOL      Displays a disk volume label and serial number.
    XCOPY    Copies files and directory trees.
      

  4.   

    D:\>net share test$=d:\test
    test$ 共享成功。
      

  5.   

    建议使用wwsas(韩柏)所例的方法,使用IIS的管理COM,也就是微软IIS 管理器HTML版的基础
      

  6.   

    不过Install Shield 7只支持CreateObject而不支持GetObject,令人头痛,只能写在VB程序里或WSH脚本文件里了
      

  7.   

    把wwsas(韩柏)的方法写到一个DLL中,然后在INSTALLSHIELD里调用这个库函数,肯定管用。
      

  8.   

    参考
    http://www.csdn.net/expert/topic/633/633634.xml?temp=.6560785
      

  9.   

    上铺的兄弟,WSH与API的调用方法一样吗?
      

  10.   

    WSH(Windows Scripting Host),可以将VBScript脚本写入扩展名为.vbs的文本文件中,然后通过双击或使用命令行运行:
    wscript vbs文件名

    cscript vbs文件名
    具体使用方法在MSDN中有详细说明
    另外,你可以将建立虚拟目录的代码写在VB程序中,通过InstallShield的函数调用并传递参数,参数可以使用VB的command函数获取