ローカルネットワークでホストされているWebページがあります。私のページには、ドキュメントへのリンクがあります。ドキュメントはネットワーク共有にリンクされています。ユーザーがファイルを開き、編集してからファイルを保存すると、共有にあるものが上書きされます。ファイルを開くときにユーザーにファイルをダウンロードしてもらいたいので、ファイルを保存するときに、ファイルを保存し直すオプションがありません。どうすればこれを行うことができますか?
サーバー側私はaspにアクセスできます。
ローカルネットワークでホストされているWebページがあります。私のページには、ドキュメントへのリンクがあります。ドキュメントはネットワーク共有にリンクされています。ユーザーがファイルを開き、編集してからファイルを保存すると、共有にあるものが上書きされます。ファイルを開くときにユーザーにファイルをダウンロードしてもらいたいので、ファイルを保存するときに、ファイルを保存し直すオプションがありません。どうすればこれを行うことができますか?
サーバー側私はaspにアクセスできます。
ファイルの実際の場所へのリンクではなく、クリックするとファイルのコンテンツをブラウザにストリーミングするリンクを作成する必要があります。これを行うと、ユーザーはファイルをローカルのどこかに保存するように求められます。
私は現在PCを使用していないため、サンプルコードを取得できませんが、コンテンツタイプを適切に設定して応答を送信する必要があります。正しい方向へのポインターのmimeタイプを調べてください。
ここで「ダウンロード」という用語は誤解されています。Windowsエクスプローラーを開いて、ネットワーク共有からローカルマシンにファイルをコピーする場合、ファイルを「ダウンロード」するという意味ではなく、コピーするだけです。「ダウンロード」とは、通常、ローカルネットワークの外部にあるリソースにアクセスし、そのリソースをそのネットワークに取り込むことを指します。
したがって、目的を達成するには、ローカルネットワークリソースであるファイルにアクセスしていないクライアントを説得する必要があります。これを行うには、ネットワーク共有内の適切なフォルダーを指す仮想フォルダーをIISサイトに追加します。サイトの仮想フォルダを指す「http:」プロトコルを使用するようにURLを変更します。
これで、ユーザーはネットワーク上の通常のファイルとしてファイルにアクセスするのではなく、Webサイトからファイルを取得します。
ネットワーク共有を開く代わりに、Web ページを介してファイルをストリーミングしてファイルをダウンロードできます。
例については、これを参照してください。
http://support.microsoft.com/kb/276488
ディレクトリの参照を有効にすることで、Web サーバーを介してディレクトリを共有することもできます。
IIS 6: http://blog.crowe.co.nz/archive/2006/03/18/603.aspx
IIS 7: http://technet.microsoft.com/en-us/library/cc731109(WS.10).aspx