是否可以把需求再说详细一点是已经做好了一个小工具?是希望VS可以直接发布程序在IIS上么?做一个安装程序?还是想做一个小工具,实现制作在IIS上发布的安装程序?

解决方案 »

  1.   

    v求详解,做了个小工具,想实现 在服务器 IIS 上实现 VS 的发布功能, 并能在IIS 创建虚拟目录,用户可以直接访问。
    最好可以贴出代码
      

  2.   

    VS2008下IIS网站的发布主菜单->生成->发布->目标位置框右边的[...]按钮->本地IIS->默认站点->打开->发布如果你的IIS不支持ASP.Net,只需要在开始菜单->Visual Studio 2008->命令提示符->执行 aspnet_regiis -i -enable 直接在普通命令提示符下执行不了的,换台机器需要安装.Net的SDK, 然后还是在开始菜单的SDK里的那个命令提示符-> aspnet_regiis -i -enable,(不过如果先装IIS,再装.Net,IIS自动支持ASP.Net的),至于发布,把网站根目录(默认的Default.aspx所在目录)全部复制到IIS的根目录下,默认是C:\inetpub\wwwroot例如:
    1.
    我把D:\Visual Studio 2008\Projects\WebApplication1\WebApplication1下的所有文件复制到C:\inetpub\wwwroot下
    2.
    IIS启动(开始->运行->iis.msc->本地计算机->网站->默认网站->右键->启动),
    3.
    打开IE,打开http://localhost/Default.aspx 
      

  3.   

    使用DirectoryService命名空间,可以操作IIS
      

  4.   


    Using System.DirectoryServices;
    private void btnCreateDirectory_Click(object sender, EventArgs e)
    {
              string strSchema = “IIsWebVirtualDir“;
              string strRootSubPath = “/W3SVC/1/Root” ;            // you can specify any server name , “localhost” is for example
               DirectoryEntry deRoot = 
                            new DirectoryEntry(“IIS://” + “localhost” + strRootSubPath);
             try
            {
                     deRoot.RefreshCache();
                     DirectoryEntry deNewVDir = 
                                        deRoot.Children.Add(“Name of Virtual Directory“, strSchema);                 deNewVDir.Properties["Path"].Insert(0, “Path for Virtual Directory“);
                     deNewVDir.CommitChanges();
                     deRoot.CommitChanges();                // Create a Application
                    if (strSchema == “IIsWebVirtualDir“)
                               deNewVDir.Invoke(“AppCreate“, true);
                    // Save Changes
                               deNewVDir.CommitChanges();
                    
                    deRoot.CommitChanges();
                    deNewVDir.Close();
                    deRoot.Close();
                    lblResult.Text = “Virtual Directory ” 
                                       + (“Name of Virtual Directory“+ “(” + “Path for Virtual
                                                 Directory” + “) has  been created“;
           }
          catch (Exception ex)
         {
                    lblResult.Text = ex.Message;
          }
    }参考:
    http://chiragrdarji.wordpress.com/2007/06/04/create-virtual-directory-in-iis-using-c/
    这里有创建/删除/查看的源代码
    http://chiragrdarji.wordpress.com/2007/06/20/createdeleteview-virtual-directory-or-website-in-iis-using-c/
      

  5.   

    详细需求: 我有一个 VS 的工程,想做一个工具,工具可以选中这个工程的目录和IIS发布的目录,选好后,直接点击生成按钮,这个工程就自动编译好了,自动发布到IIS上了
      

  6.   

    VS2008下IIS网站的发布主菜单->生成->发布->目标位置框右边的[...]按钮->本地IIS->默认站点->打开->发布如果你的IIS不支持ASP.Net,只需要在开始菜单->Visual Studio 2008->命令提示符->执行 aspnet_regiis -i -enable  直接在普通命令提示符下执行不了的,换台机器需要安装.Net的SDK, 然后还是在开始菜单的SDK里的那个命令提示符-> aspnet_regiis -i -enable,(不过如果先装IIS,再装.Net,IIS自动支持ASP.Net的),至于发布,把网站根目录(默认的Default.aspx所在目录)全部复制到IIS的根目录下,默认是C:\inetpub\wwwroot例如:
    1.
    我把D:\Visual Studio 2008\Projects\WebApplication1\WebApplication1下的所有文件复制到C:\inetpub\wwwroot下
    2.
    IIS启动(开始->运行->iis.msc->本地计算机->网站->默认网站->右键->启动),
    3.
    打开IE,打开http://localhost/Default.aspx   
      

  7.   

    是的,不过,是通过IIS来实现,里面涉及到权限问题,难解决