WS2022 ASP ActiveX dll exe の設定
必要に応じてファイアウォールの設定.
オートメーションを使用しているのでエラーになる.
サーバ上で確認すると,
An error occurred on the server when processing the URL. Please contact the system administrator.
If you are the system administrator please click here to find out more about this error.
「ASP」-「機能を開く」で「ブラウザへのエラー送信」を「True」に.
Server オブジェクト エラー ‘ASP 0177 : 800401f3’
Server.CreateObject に失敗しました
/_LIB_/L_Mainte.asp, 行 33
800401f3
エラーは Server.CreateObject を呼んでいる所.
set oFCnt = Server.CreateObject("AsFile.Counter")
AsFile.dll を登録 .
この dll は 32 ビットなので「32 ビット アプリケーションの有効化」.
次の様な asp を実行してテスト.
<%@ Language=VBScript %>
<% Option Explicit %>
<HTML>
<BODY>
<%
on error resume Next
dim oFCnt : set oFCnt = Server.CreateObject("AsFile.Counter")
dim oImgC : set oImgC = Server.CreateObject("AsImageConverter.Application")
Response.Write "AsFile Count.." & oFCnt.GetVersion & "<br>" & vbCrLf
Response.Write "AsImgC App …" & oImgC.GetVersion & "<br>" & vbCrLf
%>
</BODY>
</HTML>
AsimageConverter は exe でまだ登録していない状態.
「管理者」として起動したコマンドプロンプトで,AsImgCnv.exe を登録.
「コンポーネント サービス」で,IUSR が起動できるように設定.
32 ビット exe は,そのままの comexp.msc の起動では表示されない.
「 %windir%\system32\comexp.msc /32 」の様に /32 のオプションの指定が必要.
「セキュリティ」タブ-「起動と…」-「カスタマイズ」-「編集」.
「IUSR」を追加して「ローカルからのアクティブ化」にチェック.
これで 32 ビットのオートメーション dll と exe が起動できるようになる.
「ODBC データソース 32 ビット」の設定.
設定直後は,次のエラーになることがある?
Provider エラー ‘80004005’
この場合は OS を再起動すればうまく動作する 様になる.
参考にさせてもらったところ.
64bit Windows 環境で 32bit の DCOM コンポーネントを登録しても一覧に表示されない
64bit版Windowsでx32bit版のDCOMが表示されない