0

Microsoft Office 2010 をインストールしました。場所は
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Visual Studio Tools for Office\PIA\Office14"
です。この場所からアセンブリを動的に読み込む必要があります。
「C:\Program Files (x86)\Microsoft Visual Studio 10.0\Visual Studio Tools for Office\PIA\Office14」という場所をプログラムで取得することはできますか?

4

2 に答える 2

2

インストールパスを取得するためのWMIクエリは次のとおりです。WMIクエリのlike句の後にプログラム名を渡す必要があります。プログラム名がわからなかったため、like句を使用しました。正確なプログラム名がわかっている場合「=」演算子と一緒に使用します。

DLL(System.Management)への参照を追加します。

Using System.Management

    ManagementObjectSearcher WMIQuery = new ManagementObjectSearcher("SELECT * FROM Win32_Product WHERE CAPTION LIKE \"%office%\" ");
    ManagementObjectCollection WMIQueryCollection = WMIQuery.Get();

    foreach (ManagementObject MO in WMIQueryCollection)
    {
        Console.WriteLine("Caption : " + MO["Caption"].ToString());
        Console.WriteLine("InstallLocation : " + (MO["InstallLocation"] == null ? " " : MO["InstallLocation"].ToString()));
    }

これは、WMIクエリ(WQL)の作成を開始するためのMSDNリンクです。
http://msdn.microsoft.com/en-us/library/windows/desktop/aa394606(v=vs.85).aspx

于 2012-09-26T12:19:01.020 に答える
0

私が理解できる限り、Office がインストールされている場所を見つける必要があります。はいの場合は、Windows Management Instrumentation が役に立ちます。これは、インストールされているソフトウェアや利用可能なリソースなどのデータをシステムに照会できる API です。

詳細については、こちらを参照してください: システムにインストールされているアプリケーションを取得する

于 2012-09-26T11:50:34.897 に答える