如题!
我用vs.net制作web安装程序的时候,它都是装在wwwroot下面。能不能可以选择其他的安装路径。就像我们安装vs.net一样,可以选择安装在其他的地方,而不是它默认的c盘。
谢谢!

解决方案 »

  1.   

    http://dev.csdn.net/develop/article/25/25373.shtm
      

  2.   

    可以啊,比如你要将项目都装在E:\的话,将本机IIS的主目录设置为E:\就可以了
      

  3.   

    现在可以了,CSDN有时候老是出问题  -_-#
      

  4.   

    右击我的电脑-管理-iis-默认站点-属性-主目录(在这里设置你想自定义的文件夹)
      

  5.   

    这还简单呀,把那个文件拷出来,你把它放你要放的地方然后web共享.OK!
      

  6.   

    不是啊,我是说。在安装的时候可以让用户选择安装在哪里。而不是要用户再去操作iis。举例说:我们安装vs.net的时候。我们可以点击“浏览”选择安装路径。我现在就是要知道怎么样出现“浏览”这个对话框。
      

  7.   

    to :mymailyy  这个是可以,但是我不能这样对用户说啊,我希望是能在用户安装的时候就选择安装在哪里。谢谢
      

  8.   

    你想装到哪里都可以,最后在IIS中创建虚拟目录指向你的安装目录,或者建一个站点都可以。
      

  9.   

    http://dev.csdn.net/develop/article/25/25373.shtm
         WebApplication安装部署时,不能选择安装路径;解决思路:
        (1)创建一个控制台应用程序CreateWebDir.exe ,作用是创建 Web 虚拟目录。
        (2)安装部署制作采用windows Application安装部署,不是WebApplication安装
                部署。因为windows Application安装部署有选择路径的操作,选择的路径
                保存在 [TARGETDIR]。
        (3)在安装部署制作—“自定义操作”中[提交]下添加自定义操作,选择CreateWebDir.exe,其属性:
            (A)Arguments = Bug2000 [TARGETDIR]  ,即CreateWebDir.exe传入两个
                     参数。Bug2000指Web 虚拟目录;[TARGETDIR]指物理目录。
            (B)InstallerClass = false,设置为非ProjectInstaller类(二)创建一个控制台应用程序CreateWebDir.exe 
        (1) main.cs                
        (2)CreateWebDir.cs  见《IIS控制管理--Web虚拟目录的创建及管理》   
        (3)INIFile.cs 见《INI文件的操作(ASP.NET+C#)》(三)main.cs 文件using System;
    using System.IO;
    using System.DirectoryServices;
    using System.Runtime.InteropServices;namespace CreateWebDir
    {
     /// <summary>
     /// Class1 的摘要说明。
     /// </summary>
     class Start
     {
      /// <summary>
      /// 应用程序的主入口点。
      /// 参数 args :
      ///    args[0] :虚拟路径
      ///    args[1] :物理路径
      ///    args[2] :服务器名,可以不输入,默认 localhost
      ///    
      /// 运行示例:
      ///    CreateWebDir.exe VirDirTest D:\work
      ///    CreateWebDir.exe VirDirTest D:\work  deve-server
      /// </summary>
      [STAThread]
      static void Main(string[] args)
      {
       int i; 
       string iniFile;
       if (args.Length > 1)
       {
        iniFile = args[1];
        if (iniFile.Substring(iniFile.Length-1,1)=="\\")
         iniFile = args[1]+"Bug2004.ini";
        else
         iniFile = args[1]+"\\Bug2004.ini";
       }
       else
        iniFile = @"C:\Bug2004.ini";   //string iniFile = @"D:\Bug2000.ini";
       if (!File.Exists(iniFile))
       {
        using (FileStream fs = File.Create(iniFile))
        {
         fs.Close();
        }
       }   INIFile myINI = new INIFile(iniFile);   for(i=0;i<args.Length;i++)
       {
        myINI.IniWriteValue("WebDir","arg"+i.ToString(),args[i]);
       }
          string sServer = "localhost";
       if (args.Length > 2) sServer= args[2];   IISManager iisMg = new IISManager(sServer);
       iisMg.Connect();
       
       if (iisMg.Exists(args[0]))
       {
        Console.Write(args[0]+ " is exist!");
        myINI.IniWriteValue("WebDir","WebDirExist","true");
       }
       else
       {
        myINI.IniWriteValue("WebDir","WebDirExist","false");    iisMg.get_AnonymousUser();
        string[] anonymousUser = new string[2];
        anonymousUser[0] = iisMg.AnonymousUserName ;
        anonymousUser[1] = iisMg.AnonymousUserPass ;    VirtualDirectory newVirDir = new VirtualDirectory(args[0],args[1],anonymousUser);
        if (iisMg.Create(newVirDir))
        {
         Console.Write(args[0]+ " 创建成功!");
         myINI.IniWriteValue("WebDir","WebDirCreated","true");
        }
        else
        {
         Console.Write(args[0]+ " 创建不成功!");
         myINI.IniWriteValue("WebDir","WebDirCreated","false");
        }
       }   iisMg.Close();
      } }
    }
      

  10.   

    谢谢你, ajieboy(齐)
    我先看看,如果还不行,我再找你哈