0

ブラウザを介してクライアントにファイルを提供するASPアプリケーションを作成しています。ファイルは、IISが実行されているマシンからUNCパス(\ server \ some \ path)を介して利用できるファイルサーバーにあります。

以下のコードのようなものを使用してファイルを提供したいと思います。IISが実行されているマシンにローカルなファイルを提供することは、この方法でうまく機能しています。私の問題は、UNCマップされた共有からファイルを提供できることです。

//Set the appropriate ContentType.
Response.ContentType = "Application/pdf";

//Get the physical path to the file.
string FilePath = MapPath("acrobat.pdf");

//Write the file directly to the HTTP content output stream.
Response.WriteFile(FilePath);
Response.End();

私の質問は、ファイル名にUNCパスを指定する方法です。また、ファイル共有にアクセスするには、特定のユーザー名/パスワードで接続する必要があります。

私がこれをどのように達成できるかについてのいくつかの指針をいただければ幸いです(上記のアプローチを使用するか、他の手段を使用して)。

4

1 に答える 1

1

私はASPの人ではないので、これらの答えは完全に間違っている可能性があります。

パスに関しては、MapPathを使用する必要はないと思います。これは、相対パスを取得するためであり、物理パスをすでに知っているため、次のように変更することはできません。

string FilePath = @"\\Server\Directory\FileName.txt";

アカウントに関しては、なりすましを使用する必要があると思います。このリンクでは、これについてのみ説明しているようです。

http://aspalliance.com/336_Upload_Files_Using_ASPNET_Impersonation_and_UNC_Share.all

于 2010-04-24T18:58:30.920 に答える