none
ASP.NET C# RRS feed

  • 質問

  • ビルドの際に下記エラーが出て困っております。権限の問題でCreateが出来ないのだと思いEveryoneのアクセス許可をフルコントロール許可にしたのですが同じエラーが出てしまいます・・・どなたか御教授おねがい致します。

    '/XXX'アプリケーションでサーバーエラーが発生しました。

    Cannot create XXX.xml

    2006年1月31日 4:59

すべての返信

  • 既に同名のファイルがあるとか、色々考えられそうです。
    ちょっと情報が不足しているので、詳細をお願いします。

    2006年1月31日 5:26
  • じゃんぬねっと様

    ご回答ありがとうございます。

    全検索してみましたが同名のファイルはありませんでした・・・

    情報ですが

    OS:WinXP Professional SP2

    開発環境(C#.NET):Visual Studio .NET2003 Ver7.1.3091 &

    .NET Framework 1.1 Ver 1.1.4322 SP1

    です。

    その他どのような情報が必要でしょうか?

    ASP.NETは超初心者で大変恐縮ですが何卒御教授の程よろしくお願い致します。

     

    2006年1月31日 6:17
  •  幸男 は書きました:

    ビルドの際に下記エラーが出て困っております。

    あれ? ビルド時の話なんですね。
    XXX はアセンブリ名でしょうか?

    だとすると、XML コメントを出力する時に失敗しているのかな。

    2006年1月31日 6:26
  • じゃんぬねっと様

     

    はい、ビルド時の話しです。

    ご推察のとおり '/XXX'はアセンブリ名です。

    XXX.xmlをCreateしようとして出来ないようなので

    おそらく権限の問題なのではないかなぁと思っております・・・

    2006年1月31日 6:39
  • そのxmlファイルは、プロジェクトのプロパティ -> 構成プロパティ -> ビルド -> 出力 のXMLドキュメントファイルのことでしょうか? もうそうであれば、出力パスはどうなっていますでしょうか?
    2006年1月31日 7:14
    モデレータ
  • trapemiya様

    ご回答ありがとうございます。

    xmlファイルは「出力のXMLドキュメントファイル」の事ではなくて、アプリケーション上でCreateしようとしてるファイルです。

    ちなみに以前は正常に動作していてその後ソースは一切変更していません。

    で、ビルドはとおるのですが実行すると下記のエラーが出てしまいます。

    大変恐縮ですが御教授おねがい致します。

    '/XXX'アプリケーションでサーバーエラーが発生しました。

    Cannot create XXX.xml

     

    2006年1月31日 7:53
  • 正常に動作してる時と違う点といえばアクセス権限くらいしかないと思うのですがIISでの権限と通常のエクスプローラーでみる権限とはなにか異なる事とかあるのでしょうか?

     

    2006年1月31日 8:23
  • アクセス権であれば、「アクセスが許可されていません」のようなメッセージが表示されます。この場合は、通常は、ASPNETユーザーに書込み権を与えてあげれば解決します。
    Cannot Creatと英語で出ているのが気になりますが、一度上のことを試してみて下さい。また、もし以前作成した.xmlファイルがあれば、その所有者が誰になっているか確認してみて下さい。基本的にはその所有者に書込み権を与えてあげれば良いはずです。

    また、もし既に.xmlファイルがあれば、一度それをどこかに移動してみるとか、違うディレクトリへの作成を試みてみるとかすると、何か糸口がつかめるかもしれません。

    2006年1月31日 8:52
    モデレータ
  • まちがってVSSに入れていてリードオンリーになっているとかじゃないでしょうか。

    プロジェクトのフォルダを見てみてください。

    2006年1月31日 9:35
  • trapemiya様

    ご回答ありがとうございます。

    「Everyone」の他に「ASP.NETコンピュータアカウント」でもフルコントロールアクセス許可にしたのですがやはり書き込みで失敗してるようです。

    ちなみに以前成功した時のxmlファイルの所有者はASPNETユーザーだったようです。(今はもうありません)

    謎は深まるばかりです・・・??

     

     

    2006年2月1日 1:42
  • 中博俊様

    ご回答ありがとうございます。

    確かにVSSは使用しておりますが書き込みが出来る状態でございます。

     

    2006年2月1日 1:44
  • 1台のマシンで開発およびテストされているんですよね?

    とりあえず適当なところに適当なファイルが書き込めますか?



    StreamWriter sw = new StreamWriter(@"c:\hoge\test.csv");
    sw.Write("a,b,c"); 
    sw.Close();

     

    2006年2月1日 2:09
    モデレータ
  • trapemiya様

    ソースコードありがとうございます。

    適当なところへのファイルの書き込みは出来ましたが今迄のエラーは相変わらずなおりません。

    今、色々アクセス権限を設定し直して試しているところです・・・

     

    2006年2月1日 7:01
  • 単純に、
     
    • ファイルパスが相対パスになっていて、カレントディレクトリが不定な ASP.NET からはきちんと動作しない場合がある(別のアプリケーションの影響をうけている)
    • アセンブリのシャドウコピーフォルダに作成しようとしている(動的に作成されている書き込み不可能なフォルダなので確実に失敗する)
     
    とか。
    2006年2月16日 2:55
  • こちらの件、再現環境をこちらで準備、調査したいと思います。差し支えない範囲でかまいませんので以下の情報をお寄せください。

    1. XMLファイルの出力先
    2. IISでのアプリケーション ディレクトリの構造
    3. 最小限の書き込みの部分のコード

    よろしくお願いいたします。

    ディベロッパー製品開発統括部インターナショナルPMチーム
    この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。
    2006年2月27日 12:19
  • 御世話になります、以下回答です。

    1.C:\Inetpub\wwwroot\XXX_1\env\Contracts

    2.C:\Inetpub\wwwroot\XXX_1

      C:\Inetpub\wwwroot\XXX_1\bin

      C:\Inetpub\wwwroot\XXX_1\Controls

      C:\Inetpub\wwwroot\XXX_1\env

      C:\Inetpub\wwwroot\XXX_1\env\Configurations

      C:\Inetpub\wwwroot\XXX_1\env\Contracts

    3.throw new System.NotSupportedException();

     

    こんな感じでよろしいでしょうか?

    ちなみにVSSで同じ環境を複数人が他PCで使用しているのですが問題がない人もいれば違うエラーの人もいます、ただエラーは全てファイルのアクセス権限によるもののように思います、何卒よろしく御願い致します。

    2006年2月28日 5:44
  • 幸男さん、ご返答ありがとうございます。Lady.Bugさんコメント恐れ入ります。

    拝見させていただきましたが、各開発ユーザーのデスクトップで問題の再現性に一定の法則がないようでしたらLady.Bugさんのご診断が正しい可能性があります。あと、VSSをお使いで、開発デバッグ中に"Contracts"のディレクトリに名前が同じファイルを書かれていらっしゃいますと、各開発者のデスクトップからチェックインが発生して、競合がおきる可能性があるのではと思います。この場合は、その開発時に一時的に書き込みをなされるディレクトリの属性を[隠しファイル(Hidden)]にして、避けてみてください。

    とりあえず、こんなところが考えられますが、いかがでしょうか。

    ディベロッパー製品開発統括部インターナショナルPMチーム
    この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。
    2006年3月1日 15:41
  • とりあえず、こちらでは簡単な検証をした、そちらのコードを以下に書きます。事前にフォルダの階層があるものとします。他の方で、なにかお気づきのことがありましたら、返信にてコメントをお願いいたします。

            using (XmlWriter writer = XmlWriter.Create(Server.MapPath("~/env/Contracts/") + "output.xml"))
            {
                writer.WriteStartElement("book");
                writer.WriteElementString("price", "19.95");
                writer.WriteEndElement();
                writer.Flush();
            }

     

    ディベロッパー製品開発統括部インターナショナルPMチーム

    この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。 
    2006年3月9日 4:47
  •  幸男 は書きました:

    xmlファイルは「出力のXMLドキュメントファイル」の事ではなくて、アプリケーション上でCreateしようとしてるファイルです。

    ちなみに以前は正常に動作していてその後ソースは一切変更していません。

    で、ビルドはとおるのですが実行すると下記のエラーが出てしまいます。

    最初の投稿には「ビルド時」のエラーであると書かれていましたが、結局「実行時」のエラーなんですか?

     

    2006年3月11日 6:05
  • 以下の可能がある:

    ①アクセス権限不足

    ②asp.net について、参照パスを使用してください

    2006年3月12日 7:36
  • ***.aspxの***の部分は何ですか?

    また、pageディレクティブの記述を教えて頂けないでしょうか?

    2006年8月22日 20:13