C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■103331 / )  [VB6+IIS(ASP)+C#] DLLが見つからない?
□投稿者/ ded (10回)-(2024/10/01(Tue) 14:23:29)

分類:[レガシ ASP] 

【環境】
OS:Win Svr 2022 Std
ASP:IIS10+Classic ASP(VBScript)
CGI:VB6
旧DLL:VC++5.0(コメントから、ソースなし)
新DLL:C# 12(VS2022Pro)
Framework:4.7.2

【経緯】
・Webサーバリプレースによる動作検証のタイミングで、CGIが呼んでいるDLLが動作しない(エラー)になるのを確認
・ソースを探すも見つからず、in/outから互換COMをC#で作成
・サーバ上でCGIを単体模擬実行すると、正常に動作
・IISから実行させると、実行ログは出力されるが、80070002エラーが発生している
・GetUserName APIはIUSRを返却している為、IISからDLL(COM)が見つからないと想定できるが原因が不明

【状態】
1.テストEXE(VB6)及び、CGI(VB6)の単体実行は正常に可能
2.IIS(ASP)経由でCGIを実行すると、「(80070002)Automation error The system cannot find the file specified.」が発生する
  ※その時の実行ユーザ(GetUserName API)は「IUSR」であることを確認
3.DLL(COM)は管理者でregasmを行い、一般ユーザでは動作しているのを確認
4.エラー発生時にCGI自体は動作しているのを確認(実行権限等ではない認識:DLL(COM)もIUSRに実行権限は確認)

【プロジェクトの設定(念のため)】
1.「アセンブリをCOM参照可能にする」にチェック
2.「COM相互運用機能の登録」にチェック
3.プラットフォームはx86
4.(IIS アプリケーションプール) 32ビットアプリケーションの有効化=True

【エラーログ】
ユーザID :IUSR
[-2147024894(80070002)]-2147024894
Automation error
The system cannot find the file specified.


よろしくお願いします。
返信 編集キー/


管理者用

- Child Tree -