none
実環境に発行して起動すると、コンパイル エラー メッセージ: BC31019: RRS feed

  • 質問

  • お世話になります。

    歳の瀬も近づき、忙しいときですが、宜しくお願いいたします。

     

    【開発環境】

    OS:Windows 2000 pro SP4

    ISS Ver.5

    VS: Visual Studio 2005

     

    【VS の開発用サーバー】

    ウェブアプリを開発して、動作確認OKでした。

     

    【発行】

    VSのメニュー[ビルド]から、同一機の E:\Inetpub\wwwroot\ap\ に発行

     

    【インターネットエクスプローラ】

    http://localhost/ap/ をアクセスすると、インターネットエクスプローラに次のページが表示されて、動作しません。

     

    ------------------------------------------------------------------------------------------------------------------------

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

    コンパイル エラー

    説明: この要求を送信するために必要なリソースをコンパイル中に、エラーが発生しました。以下のエラーの詳細を確認して、ソース コードを修正してください。

    コンパイル エラー メッセージ: BC31019: 出力ファイル 'C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\ap\4a0a18e8\7cae016c\App_Web_default.aspx.cdcab7d2.qits0hjn.dll' に書き込めません: ディレクトリ名が無効です。

    ソース エラー:

    [関連したソースの行はありません]

    ソース ファイル: vbc :    行: 0

    ------------------------------------------------------------------------------------------------------------------------

     

    【試みた対策】

    「BC31019」でググッてみたところ、英語のページが幾つかヒットしたので、斜めに読んでみました。

    ap ディレクトリに書き込めないので、ディレクトリを消して、再構築してみるとよいとあったのでしてみましたが、だめでした。

    VS2005を消して、再インストールをするとよいとありましたが、ちょっと大変なことなので、試していません。

     

    なにか、ヒントでもご存知の方は、教えてください。

    よろしくおねがいいたします。


     

     

     

    2008年12月30日 13:01

回答

  • 日本語のmsdn libraryでも同じようなことが書かれていますね。
    http://msdn.microsoft.com/ja-jp/library/85s7w197.aspx

    まず、エラーメッセージで出ている"
    C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\"配下のフォルダにIISが書き込み可能なセキュリティ設定になっているでしょうか?手っ取り早い方法だとコマンドプロンプトから以下のコマンドを実行しなおすとか。

    C:\Winnt\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

    今Windows 2000環境が手元にないので、細かいところはわかりませんが、明示的にIISのアカウントに対して書き込み権限を追加するとか。
    2008年12月30日 14:21
  • こんにちは。

     

    'C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files'

    ディレクトリ以下に対して、ASP.NET のワーカープロセスの ID となっているユーザー

    (通常は ASPNET) が書き込み権限があることを確認すると良いと思います。

     

    お役に立ちましたら幸いです。

     

    -----------------------------------------

    だどさん http://keicode.com/

     

    2008年12月30日 23:29
  • IIS6以降ですと実行アカウントはNetwork Serviceになります。

    あと、以下が関係しているかもしれません。

     

    [PRB] インデックス サービスの実行中にコードに変更を加えるとアクセス拒否エラーが発生する
    http://support.microsoft.com/kb/329065/ja

    2008年12月31日 2:19
    モデレータ
  • こんにちは。中川俊輔 です。

     

    KKamegawaさん、だどさん、回答ありがとうございます。

     

    .NetFramework1.1についての情報なのですが、同じようなエラーメッセーが表示される現象についての技術情報がありました。

    PRB: CS0013 or CS0016 Compilation Errors in ASP.NET Web Applications

    http://support.microsoft.com/kb/825791/en-us

    (機械翻訳の日本語が不明瞭なので英語版を紹介させていただきます)

     

    環境変数のTEMP,TMPに、アクセス権を設定したテンポラリフォルダを指定すると解決するようです。

    .NetFramework2.0も同じ原因で発生している可能性がありますので、よろしければお試しください。

     

    参考になると幸いです。

    それでは!

     

    この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。

    コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。

    2009年1月8日 9:44

すべての返信

  • 日本語のmsdn libraryでも同じようなことが書かれていますね。
    http://msdn.microsoft.com/ja-jp/library/85s7w197.aspx

    まず、エラーメッセージで出ている"
    C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\"配下のフォルダにIISが書き込み可能なセキュリティ設定になっているでしょうか?手っ取り早い方法だとコマンドプロンプトから以下のコマンドを実行しなおすとか。

    C:\Winnt\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

    今Windows 2000環境が手元にないので、細かいところはわかりませんが、明示的にIISのアカウントに対して書き込み権限を追加するとか。
    2008年12月30日 14:21
  • こんにちは。

     

    'C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files'

    ディレクトリ以下に対して、ASP.NET のワーカープロセスの ID となっているユーザー

    (通常は ASPNET) が書き込み権限があることを確認すると良いと思います。

     

    お役に立ちましたら幸いです。

     

    -----------------------------------------

    だどさん http://keicode.com/

     

    2008年12月30日 23:29
  • IIS6以降ですと実行アカウントはNetwork Serviceになります。

    あと、以下が関係しているかもしれません。

     

    [PRB] インデックス サービスの実行中にコードに変更を加えるとアクセス拒否エラーが発生する
    http://support.microsoft.com/kb/329065/ja

    2008年12月31日 2:19
    モデレータ
  • 今回の環境は Windows 2000 ですから IIS 6.0 ではなく IIS 5.0 ですね。

     

    インデックスサービスの件は存じませんでした。これは困った現象ですね。ディレクトリをインデックスから除外しないといけないですね。ありがとうございます!

     

    -----------------------------------------

    だどさん http://keicode.com/

     

    2008年12月31日 12:07
  • いろいろ検討してみましたが、うまくいきません。

    >日本語のmsdn libraryでも同じようなことが書かれていますね。
    >
    http://msdn.microsoft.com/ja-jp/library/85s7w197.aspx
    の方法も全部試してみました。

    (Visual Studio のアンインストールに1日、再インストールにもう1日、計2日かかりました。)

    しかし、症状は改善しません。

     

    更に、情報をお待ちします。よろしくおねがいいたします。

    2009年1月8日 5:26
  • こんにちは。中川俊輔 です。

     

    KKamegawaさん、だどさん、回答ありがとうございます。

     

    .NetFramework1.1についての情報なのですが、同じようなエラーメッセーが表示される現象についての技術情報がありました。

    PRB: CS0013 or CS0016 Compilation Errors in ASP.NET Web Applications

    http://support.microsoft.com/kb/825791/en-us

    (機械翻訳の日本語が不明瞭なので英語版を紹介させていただきます)

     

    環境変数のTEMP,TMPに、アクセス権を設定したテンポラリフォルダを指定すると解決するようです。

    .NetFramework2.0も同じ原因で発生している可能性がありますので、よろしければお試しください。

     

    参考になると幸いです。

    それでは!

     

    この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。

    コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。

    2009年1月8日 9:44
  • こんにちは、フォーラムオペレータ大久保です。

     

    nife さん、年明け早々で申し訳ありませんが、本件いかがでしょうか?

    中川からのアドバイスが新年早々でしたのでご確認いただけたかちょっと心配なんですが、後日でも結構なのでお試しいただいた結果を教えていただければと思います。

     

    ひとまず、アドバイスいただいた皆様と、中川の投稿に「回答済み」チェックをつけさせていただきました。

    また何かあれば MSDN フォーラムをご利用ください!

    2009年1月15日 2:41
  • みなさま

     大変にお世話になり、ありがとうございました。

     いろいろ試しましたが、うまくいかなくて、開発環境そのものをWindowsXPに移行しました。
     (仕事で作業しているので、これ以上開発を遅れさせられないので)

    すっきりとした解決に至らず、申し訳ありませんでした。みなさまの援助には、いつも感謝しています。
    お礼の書き込みも遅くなり、申し訳ありませんでした。

    今後とも、よろしくお願いいたします。
    • 回答としてマーク nife 2009年2月5日 9:42
    • 回答としてマークされていない nife 2009年2月5日 9:42
    2009年2月5日 9:41