Compartilhar via


Escrevendo um script para configurar o diretório virtual

Você pode usar os valores de propriedade padrão do IIS do BITS para carregar um arquivo no servidor. O arquivo de carregamento é gravado na URL conforme especificado no nome do arquivo remoto do trabalho. Para carregar o arquivo em um aplicativo de servidor e receber uma resposta, altere a propriedade BITSServerNotificationType para enviar os dados por referência (envia o nome do arquivo que contém os dados) ou por valor (envia os dados no corpo da solicitação).

Para obter uma lista e descrição das propriedades que você pode modificar, consulte Propriedades da extensão IIS do BITS. Use os métodos da interface IBITSExtensionSetup para habilitar e desabilitar o diretório virtual para uploads.

O exemplo a seguir mostra como usar o Windows Script Host para criar, configurar e habilitar um diretório virtual do IIS para carregamentos do BITS.

if (WScript.Arguments.length < 2)
{
    WScript.Echo("Usage: bitsvdir virtual_directory local_directory");
    WScript.Quit(1);
}

VirtualDirectoryName = WScript.Arguments(0);
LocalDirectoryName = WScript.Arguments(1);

ServerObj = GetObject("IIS://LocalHost/W3SVC/1/ROOT");
VirtualDir = ServerObj.Create("IIsWebVirtualDir", VirtualDirectoryName );

VirtualDir.Path = LocalDirectoryName;
VirtualDir.AppIsolated = 0;
VirtualDir.AccessScript = true;
VirtualDir.AccessRead = false;
VirtualDir.AccessWrite = false;
VirtualDir.SetInfo();

//Set BITS specific IIS configuration settings
VirtualDir.EnableBITSUploads();
VirtualDir.BITSMaximumUploadSize = "4294967296";
VirtualDir.SetInfo();

WScript.Echo( "Created virtual directory " + VirtualDirectoryName + 
              " with a local directory of " + LocalDirectoryName );
WScript.Quit( 0 );

Para alterar o exemplo anterior para carregar os dados em um aplicativo de servidor, adicione o seguinte código antes de SetInfo.

VirtualDir.BITSServerNotificationType = 1;
VirtualDir.BITSServerNotificationURL = "https://myserver/mypath/myasp.asp";

O local do arquivo de carregamento é passado para o aplicativo de servidor, myasp.asp, no cabeçalho BITS-Request-DataFile-Name. Para receber o arquivo de carregamento no corpo da solicitação, defina a propriedade BITSServerNotificationType como 2.

Para obter informações sobre como receber os dados de carregamento em seu aplicativo de servidor, consulte Usando cabeçalhos de solicitação/resposta de notificação do BITS.