Windowsサービスプログラム上で、.NETのアプリケーション実行することができるが、
レガシCOMを.NETアプリケーションが利用している場合、注意が必要なもよう
レガシCOMをロード中に、例外処理が発生する
ただし、通常のアプリケーションとして起動して動作させる場合正常に動作する
原因としてわかったのは、.NET COM Interopのアセンブル登録を行う必要があったようで
InstallShieldでは、.NET COM Interropプロパティを「はい」にすることで
.NETアセンブリを呼び出せるレジストリエントリがターゲットシステムに作成されるようです
通常アプリケーションでは、動作していたため、
はまってしまった
おそらく、通常アプリとサービスでは、レガシCOMのアプローチ方法が異なるみたい