Zjistěte, která verze Excelu je nainstalovaná v rozhraní .NET Framework
Chcete-li získat nainstalovanou verzi aplikace Excel, použijte metodu Type.GetTypeFromProgID k získání typu aplikace Excel.Application a generování instance pomocí metodyActivator.CreateInstance. Negenerování instance Excel.Application přímo je vyhnout se závislé na verzi přímým lye. Tímto způsobem budete moci vidět nejnovější verzi.
Potom můžete odkazovat na Version vlastnost z instance generované aplikace získat verzi. Načtená verze je verze, kterou má aplikace Excel interně. Například Excel 2010 je 14.0 a Excel 2013 je 15.0.
Chcete-li tyto třídy použít, je nutné nakonfigurovat služby System.Reflection a System.Runtime.InteropServices při použití.
<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);
}
}
}
Jiné weby mají podobné popisy, ale některé weby nevydávají aplikace s Marshal.ReleaseComObject. Pokud na to zapomenete, proces aplikace Excel zůstane, takže se ujistěte, že jej konečně uvolníte.