C++ で記述された Windows サービスがありますが、ソース コードを制御できません。つまり、ソース コードを書き換えることができません。また、サービスとしてインストールして ServiceController 経由で制御することもできません。
問題は、DllImport を使用し、C# からサービス コントローラーを「エミュレート」して、サービスを初期化し、そこから OnStart と OnStop を実行できるかどうかです。PEview などのツールを使用してエントリ ポイントを見つけようとしましたが、何も見つかりません。C# で実行して「main」を探すと、「System.EntryPointNotFoundException: 'Unable to find an entry point named 'main' in DLL ...」 が表示されます。
/exports を dumpbin.exe でダンプすると、エクスポートはまったくありません。
サービスコントローラーのようにWindowsサービスを管理する「標準的な」方法はありますか?