仮想ディレクトリを構成するスクリプトの記述
既定のBITS IISプロパティ値を使用して、ファイルをサーバーにアップロードできます。 アップロードファイルは、ジョブのリモートファイル名で指定されたURLに書き込まれます。 ファイルをサーバーアプリケーションにアップロードして応答を受信するには、BITSServerNotificationTypeプロパティを変更して、参照によってデータを送信するか (データを含むファイルの名前を送信します) 、値によってデータを送信します (要求の本文にデータを送信します) 。
変更できるプロパティの一覧と説明については、 「BITS IIS拡張機能のプロパティ」 を参照してください。 IBITSExtensionSetupインターフェイスのメソッドを使用して、アップロード用の仮想ディレクトリを有効または無効にします。
次の例は、Windowsスクリプトホストを使用して、BITSアップロード用のIIS仮想ディレクトリを作成、構成、および有効にする方法を示しています。
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 );
データをサーバーアプリケーションにアップロードするように前の例を変更するには、SetInfoの前に次のコードを追加します。
VirtualDir.BITSServerNotificationType = 1;
VirtualDir.BITSServerNotificationURL = "https://myserver/mypath/myasp.asp";
アップロードファイルの場所は、BITS-Request-DataFile-Nameヘッダーでサーバーアプリケーションmyasp.aspに渡されます。 要求の本文でアップロードファイルを受信するには、BITSServerNotificationTypeプロパティを2に設定します。
サーバーアプリケーションでアップロードデータを受信する方法の詳細については、 「BITS通知の要求/応答ヘッダーの使用」 を参照してください。