私は、登録不要の COM とマニフェストについてかなりの経験がありますが、克服できない問題に悩まされています。Windows サービスとして実行される実行可能ファイルがあり、(CreateProcess を使用して) 別の実行可能ファイルを生成します。生成された実行可能ファイルは、COM ライブラリ (同様に作成) を使用し、COM アセンブリを定義するマニフェスト ファイルを持っています。
Windows サービスは、デバッグ目的で、コマンド プロンプトからコンソール モードとして実行することもできます。コンソール モードでサービスを実行すると、生成された実行可能ファイルが COM ライブラリを「認識」するため、マニフェストは正しく機能します。サービスとして実行すると、生成されたプロセスで常に「クラスが登録されていません」というエラーが発生します。
なぜ機能しないのかわかりません。登録不要の制限ですか?COM ライブラリを登録すると、(コンソール モードまたはサービス モードで) すべて正常に動作しますが、明らかにそれは避けたいと思います。
ありがとう、
ノルマン