معرفة إصدار Excel المثبت في إطار عمل .NET

تاريخ إنشاء الصفحة :

للحصول على الإصدار المثبت من Excel، استخدم أسلوب Type.GetTypeFromProgID للحصول على نوع Excel.Application وإنشاء مثيل باستخدام أسلوبActivateor.CreateInstance. عدم إنشاء مثيل Excel.Application مباشرة هو تجنب أن تكون تعتمد على الإصدار بواسطة lye مباشرة. بهذه الطريقة ، ستتمكن من رؤية أحدث إصدار.

يمكنك بعد ذلك الرجوع إلى خاصية الإصدار من مثيل التطبيق الذي تم إنشاؤه للحصول على الإصدار. الإصدار الذي تم استرداده هو الإصدار الذي يحتوي عليه Excel داخليًا. على سبيل المثال، Excel 2010 هو 14.0، وExcel 2013 هو 15.0.

أيضاً، لاستخدام هذه الفئات، يجب تكوين System.Reflection و 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);
    }
  }
}

مواقع أخرى لها أوصاف مشابهة، ولكن بعض المواقع لا النشرات التطبيقات مع Marshal.ReleaseComObject. إذا نسيت هذا، ستبقى عملية Excel، لذا تأكد من إصداره في النهاية.