64bit版のIIS7.0でBasp21を使う方法

馬場氏の作成されたBASP21( http://www.hi-ho.ne.jp/~babaq/ )は、レガシーASP(active server pages)で動的ページを作成するのに非常に便利な機能がたくさんあるのですが、32bitCOMコンポーネントのため、64bitWindows + IIS環境では動きません。

これを動作させるようにするには、IISのアプリケーションプールを32ビットで動作させるよう変更する必要があります。

以下では例としてIIS7.0(WindowsServer2008)+Basp21の設定を行っています。

                                                                                                                • -

1.IISマネージャを開きます

2.basp21を使いたいサイトに対応するアプリケーションプールの「詳細設定」を開きます

3.上から2番目の「32ビットアプリケーションの有効化」を[True]にします。
※初期設定ではFalseになっています。

4.設定が終わったら[OK]をクリックして設定を保存すれば完了です。

                                                                                                                • -

気になる方はアプリケーションプールを再起動させてもいいですが、実験したところあえて再起動をしなくとも設定は反映されていました。

IIS6.0+Windows2003(64ビット)の場合、metabase.xmlを書き換えることで同様にbasp21等の32bitCOMを使用することができるようになります。
管理スクリプトをインストールしている場合、以下のコマンドで書き換えができるそうです。

cscript %systemdrive%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

もし管理スクリプトをセキュリティ保全の理由などで消してしまっている場合、c:\windows\system32\inetsrv 以下などに metabase.xmlがありますので、その中から[Enable32bitAppOnWin64]等の項目を探して変更してあげればいいのではないかと思われます。