- - PR -
VB.NET WEBサービスについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-01-05 16:42
VB.NET
WEBサービスについて Windows2000サーバーSP4.0 IIS5.0 Visual Studio.net 2003 Professional NET.FrameWork 1.1 上記の開発環境で、WEBサービスのテスト (実際にはDefaultのHellow world)を デバッグモードで実施したところ IEブラウザにはサービスの初期メニューが表示され Hellow Worldをクリックすると起動ボタンが表示され ボタンをクリックすると System.IO.FileNotFoundException: ファイルまたはアセンブリ名 6dbwqmc1.dll、またはその依存関係の 1 つが見つかりませんでした。 ファイル名 : "6dbwqmc1.dll" at System.Reflection.Assembly.nLoad(AssemblyName === Pre-bind state information === LOG: Where-ref bind. Location = D:\\WINNT\\TEMP\\6dbwqmc1.dllLOG: Appbase = file:///d:/inetpub/wwwroot/WEBS002LOG: Initial PrivatePath = binCalling assembly : (Unknown).===LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).LOG: Attempting download of new URL file:///D:/WINNT/TEMP/6dbwqmc1.dll. 上記のエラーメッセージが表示され、バインドが失敗する旨のメッセージが 実行ごとにアセンブリ名が異なって表示されます。 該当DLLの存在をファイルの検索で確認してもどこにも存在しません 情報をお持ちの方のご回答を期待しています。 よろしくお願いします。 | ||||
|
投稿日時: 2004-01-06 06:36
そのエラーは、他の端末でも発生しますか?
バインドできないといっているファイルはテンポラリファイル、おそらくキャッシュなので、毎回変わるのはそのためでしょう。エラーが発生する端末で使用しているブラウザのキャッシュがどのように設定されているか、確認してみてください。 | ||||
|
投稿日時: 2004-01-06 08:48
Jittaさん
投稿ありがとう御座います。 早速ブラウザを確認してみます。 | ||||
|
投稿日時: 2004-01-14 19:41
jittaさん
色々ご指導ありがとう御座いました。 本業に手間を取られながら、合間の調査でしたので よく判らないまま間延びしてしまいました。 一応解決しましたので結果の報告をしておきます。 1)pre-bindのエラーである。 2)\WINNT\TEMP上でのエラーである 3)エラーとなるDllが毎回変わる 4)該当dllがPC上に存在しない 以上の事から当初インストール上の問題も考えたのですが 参考資料を色々検討した結果 A)デバックの際ブラウザには.asmxのサービス内容が表示され 起動ボタンの表示画面まで到達する(SOAP経由でASP.NETに制御が移る) B)NETFrameworkのJITまでの段階のエラーである。 C)エラーがpre-bindなのでマネージコードのネイティブ化の段階である。 以上の事が初心者にも判断できましたので NETFrameWorkの参考資料を熟読しますと MSILのネイティブ化の際 クラスライブラリーからクラスローダーにより 共通アッセンブリがグローバルアッセンブリキャッシュに ロードされJITコンパイラーによりネイティブコード化され 実行されていることが判りました。 そのグローバルアッセンブリキャッシュにロードされる アッセンブリはmscorlibに包含され外部に表示されていない Dllであることも判明しました。 そこでWINNT\TEMPがそのグローバルアッセンブリキャッシュ と推測しWINNT\TEMPのプロパティよりセキュリティを確認すると ASPNETの権限が登録されていません。 ASPNETの権限を登録すると問題なく動作しました。 独り言 インストールの際IISの権限関係は自動設定されるのに グローバルアッセンブリキャッシュのほったらかし マイクロソフトらしいかな? | ||||
|
投稿日時: 2004-01-15 08:32
解決して良かったですね。 私の方も\Windows\Tempを確認しましたが、aspnet_wp accountがフルアクセスになっていました。が、私はこれを触った記憶がないんですよ(^^;。「ほったらかし」なのではなく、「XP以降をターゲット」にして、Windowsディレクトリ名の違うWindows2000は放っておかれたのかも。 #こっちの方がMSらしい? |
1