Дізнатися, яку версію Excel інстальовано в .NET Framework

Дата створення сторінки :

Щоб отримати інстальовану версію Excel, використайте метод типу. gettype-progfдля отримання типу Excel. Application і створення екземпляра зактиватором. метод createinstance . Не створює екземпляр Excel. додаток безпосередньо, щоб уникнути версії залежить від прямого lye. Таким чином, ви зможете побачити останню версію.

Потім ви можете посилатися на властивість версії зі створеного екземпляра застосунку, щоб отримати версію. Версія, що отримується, є версією, що Excel має внутрішньо. Наприклад, Excel 2010, 14,0 і Excel 2013 є 15,0.

Крім того, щоб використовувати ці класи, ви повинні налаштувати System. відображень і System. виконавчі файли. використання.

/// <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);
    }
  }
}

Інші сайти мають аналогічні описи, але деякі сайти не випускають програми з маршалом. випустять об'єкт. Якщо ви забули це, процес Excel залишиться, тому переконайтеся, що ви відпустіть його в кінці кінців.