Categorias
application diret??rio virtual dll iis site windows

Convertendo uma pasta em aplica????o no IIS via c??digo (C#)

Somente pelo IIS ?? poss??vel converter uma pasta em aplica????o? Mais ou menos. Na vers??o 7 do IIS j?? disp??e de m??dulos que simplificam o processo de cria????o de site, diret??rio virtual, pools de aplica????o e as aplica????es em si. Nesse artigo mostrarei bem r??pido como converter uma pasta em uma aplica????o.

Crie sua aplica????o e adicione, como refer??ncia, o bin??rio Microsoft.Web.Administration.dll que fica na pasta C:WindowsSystem32inetsrv . Agora adicione o seguinte c??digo:

using Microsoft.Web.Administration;

private void CriaEntradaIIS(string diretorio)
    {
        try
        {
            // Cria a pasta do site
            if (!Directory.Exists(diretorio))
                Directory.CreateDirectory(diretorio);


            // Servidor de Aplica????o
            ServerManager sm = new ServerManager();


            // Captura o site raiz onde ir?? adicionar a aplica????o
            Site st = sm.Sites[“Default Web Site”];


            // Cria a aplica????o no diret??rio criado apontando o caminho, ex: aplicacao
            Application app = st.Applications.Add(“/aplicacao”, diretorio);
            app.ApplicationPoolName = “ASP.NET v4.0”;
            sm.CommitChanges();


            // Libera
            sm.Dispose();
        }
        catch (Exception erro)
        {
            return;
        }
    }

Se tentar executar dar?? erro… Antes d?? permiss??o total ao grupo Servi??o de Rede (Network Service) ?? pasta C:WindowsSystem32inetsrvconfig . Agora sim ir?? criar. Para mais exemplos veja nesse post aqui.