C#で登録されたCOMサーバーのパスをプログラムで取得する良い方法はありますか?C#で登録済みのCOMサーバーのパスを取得するにはどうすればよいですか?
C#プロジェクトで参照するアウトプロセスCOMサーバー(exeファイル)があります。ただし、特定の場所からCOMサーバーを実行するように強制したいので、起動する前に、登録済みのexeファイルのパスを確認したいと考えています。レジストリにダイビングする以外に、これを行う良い方法はありますか?
C#で登録されたCOMサーバーのパスをプログラムで取得する良い方法はありますか?C#で登録済みのCOMサーバーのパスを取得するにはどうすればよいですか?
C#プロジェクトで参照するアウトプロセスCOMサーバー(exeファイル)があります。ただし、特定の場所からCOMサーバーを実行するように強制したいので、起動する前に、登録済みのexeファイルのパスを確認したいと考えています。レジストリにダイビングする以外に、これを行う良い方法はありますか?
機能QueryPathOfRegTypeLibはそれだけです。私が最初にユーザーごとに一つのパスから登録する場合
:
しかし、私は奇妙な癖に気づかなかった
C:\パス1 \ comserver.exe/regserverperuser
と次に、システムレベルに基づいて別のパスからの登録:
C:\パス2 \ comserver.exe/REGSERVER
そしてQueryPathOfRegTypeLibは、cを返す:\ Path1 \ comserver.exeですが、実際にはタイプライブラリをロードするときに起動するc:\ Path2 \ comserver.exeです。
レジストリの使用状況は、LocalServer32キーなど、実際に記録されています。https:/ /msdn.microsoft.com/en-us/library/windows/desktop/ms683844.aspx –
いいえ、良い方法はありません。サーバー自体が自明のことを伝えることができるときには、オラクルに頼らないでください。 –