- PR -

サーバーからクライアントに複数のファイルを同時にコピーする方法を教えてください。

1
投稿者投稿内容
金星太郎
会議室デビュー日: 2002/12/12
投稿数: 7
お住まい・勤務地: 新潟市
投稿日時: 2002-12-12 21:14
はじめまして、V2000sv01と申します。
サーバーから複数のファイルを同時にクライアントにコピーしたいのですが、
うまくいきません。最初、
 Response.AppendHeader("content-disposition", "attachment; filename=" & HttpUtility.UrlEncode("c:\Temp\*.xls"))
のような感じのダウンロードでトライしてみたのですが、
「パスに無効な文字が含まれています」とエラーが出て失敗しました。
それで、サーバーサイドでIO.File.Copy()を使って、コピーすることにしました。
クライアントのコピー先フォルダを、共有フォルダにして、
アクセス権はEveryOndeのフルコントロールにしました。
試しに、サーバーでバッチファイルでコピーを実行すると、成功します。
ところが、ウェブフォームで実行すると、
「ログオン失敗: ユーザー名を認識できないか、またはパスワードが間違っています。」
とエラーになります。

CopyのCodeは、
  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
   Dim pos As Integer
   Dim FolderName As String
   Dim CopyFolderName As String
   Try
    FolderName = Server.MapPath(Request.Url.AbsolutePath)
    pos = InStrRev(FolderName, "\")
    FolderName = Left$(FolderName, pos)
    CopyFolderName = "\\" & Request.UserHostAddress & "\Temp"
    IO.File.Copy(FolderName & "テスト.xls", CopyFolderName & "\テスト.xls", True)
   Catch
    Response.Write(ErrorToString())
   End Try
  End Sub
となっております。

サーバーの環境は、Windows2000Server(SP3), .Net FrameWork(SP2)です。
クライアントの環境は、WindwosNT4.0(SP6), IE(Ver. 6.0)です。

どなたか、うまくCopyする方法をご存知でしたら、教えてください。
もしくは、失敗する理由を教えてください。
1

スキルアップ/キャリアアップ(JOB@IT)