1

C ドライブ上の場所から、\address\content\ であるマップされたネットワーク ドライブ (Z) にファイルをコピーしようとしています。

ただし、次のエラー メッセージが表示されます。

System.UnauthorizedAccessException: Access to the path '\\192.168.100.227\content\2-Banner-20120402120304.png' is denied.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite)
   at System.IO.File.Copy(String sourceFileName, String destFileName, Boolean overwrite)
   at Admin.Controllers.OffersController.UploadNewFiles(OfferModel offer)

ディレクトリのセキュリティ設定を確認したところ、次のユーザーがフォルダに対してフル アクセス権を持っていることがわかりました

  • IUSER
  • システム
  • ネットワークサービス
  • ラック
  • スティーブン・ウェイド
  • 管理者
  • ユーザー

ASP.NET経由でコピーできない理由はありますか?

スティーブン

4

2 に答える 2

0

あるコンピューターから別のコンピューターにファイルをコピーしていますが、ネットワークサービスはローカルアカウントであり、両方のコンピューターで異なります。したがって、ワーカープロセスを実行するにはドメインアカウントが必要です。

于 2012-04-02T12:01:54.907 に答える
0

タグはマップされたドライブを示しますが、これらのドライブはこれらのユーザーにマップされていないため機能しません (システム全体の設定ではありません)。

これがマップされたドライブではなく共有を使用している場合でも、これを行うのは本当に悪い考えです。私が以前に行ったことは、FileSystemWatcher クラスを使用して FileWatcherService を実装し、その API を使用してコピーすることです。既知の DOMAIN ユーザーであり、これにはすべての権限があります。監視対象のディレクトリにファイルをドロップするのと同じくらい簡単で、コピーが検証された後にサービスがそのファイルをクリーンアップできます。

ファイルを別のディレクトリに書き戻し、それを監視してコピーされたことを確認することもできます:)

于 2012-04-02T11:59:35.503 に答える