none
MoveToメソッドの例外発生原因について RRS feed

  • 質問

  • 開発したアプリケーション内でMSDNのライブラリを使用しており、

    アプリケーションの運用時に、例外が発生したため、原因調査のご協力をいただきたいです。

    ■環境(サーバ)
    ・WindowsServer2012

    ・IIS8.0

    ■環境(クライアント)
    ・Windows7
    ・IE11(エンタープライズモード)

    ・Office2010

    ■アプリケーションの概要
    ・WindowsServer2012上のフォルダをIIS8.0で公開している。外部からの認証はBasic認証。
    ・公開されたフォルダ・サブフォルダおよびそこに配置されたファイル群等をクライアントから参照している。
    ・公開されているファイルは主にdocx、html、htm、pdf、docx、等。

    ・公開元サーバ内には、MoveToメソッドを実行するアプリを配置しており条件に応じてメソッド実行している。

    ■事象
    System.IO.DirectoryInfo.MoveToメソッドを使用した際に下記例外が発生しました。
    例外

    :System.IO.IOException: パス 'XXXXXXXX' へのアクセスが拒否されました。

    ■問い合わせ内容

    System.IO.DirectoryInfo.MoveToメソッドで上記例外が発生するケースをご教示ください。

    ■補足

    例外が発生した付近で、アクセス拒否されたパスのフォルダ配下に対して、httpのGETリクエストがされていました。(このアクセスでロックがかかっている?と考えています)

    情報不足等ございましたら、追加いたします。


    • 編集済み camajak 2018年1月22日 6:55
    2018年1月22日 6:52

すべての返信

  • ・公開元サーバ内には、MoveToメソッドを実行するアプリを配置しており条件に応じてメソッド実行している。

    ■補足

    例外が発生した付近で、アクセス拒否されたパスのフォルダ配下に対して、httpのGETリクエストがされていました。(このアクセスでロックがかかっている?と考えています)

    上記2点の競合と考えているとの事ですが、この2つが競合するのは仕様上想定通りなのでしょうか?

    ※回避出来ませんか?

    2018年1月22日 7:37
  • 返信ありがとうございます。

    ご指摘の操作が同時に行われるのは、仕様通りですが、競合するのは想定外です。

    現在運用しているシステムのため、まずは例外が発生している原因を調査しています。

    例外の原因が想定通りだった場合、対処方法を検討したいと考えております。

    2018年1月22日 7:54