Excelin asennetun Version selvittäminen .NET Frameworkissa
Jos haluat asentaa Excelin asennetun version, hae Excel.Application-tyypin Type.GetTypeFromProgID-menetelmällä ja luo Excel.Application esiintymä Activator.CreateInstance-menetelmällä. Excel.Application-esiintymän luominen suoraan on sitä, että suora lye ei ole versioriippuvainen. Näin näet uusimman version.
Tämän jälkeen voit hakea version viittaamaan Version-ominaisuuteen luodusta sovellusesiintymästä. Haettu versio on Excelin sisäinen versio. Esimerkiksi Excel 2010 on 14.0 ja Excel 2013 15.0.
Jotta voit käyttää näitä luokkia, sinun on määritettävä Käytössä System.Reflection ja System.Runtime.InteropServices.
<summary>
インストールされている Excel のバージョンを取得します。
</summary>
<returns>インストールされている Excel のバージョン。</returns>
public static decimal GetInstallExcelVersion()
{
// Excelアプリケーションに接続
var type = Type.GetTypeFromProgID("Excel.Application");
object application = null;
try
{
application = Activator.CreateInstance(type);
if (application == null)
{
// 未インストールの場合
return 0;
}
// バージョンを取得
var ver =
application.GetType().InvokeMember(
"Version", BindingFlags.GetProperty, null, application, null);
decimal version;
if (!decimal.TryParse(ver.ToString(), out version))
{
return 0;
}
return version;
}
finally
{
if (application != null)
{
Marshal.ReleaseComObject(application);
}
}
}
Muilla sivustoilla on samanlaiset kuvaukset, mutta jotkin sivustot eivät julkaise sovelluksia Marshal.ReleaseComObject-sovelluksella. Jos unohdat tämän, Excel-prosessi säilyy, joten varmista, että vapautat sen lopulta.