HOW TO:判斷計數器和分類是否存在

更新:2007 年 11 月

您可以使用 PerformanceCounterCategory 類別中的 CounterExists 方法,來判斷在本機或遠端電腦上之特定分類內是否有指定的效能計數器。您可以在建立新的計數器前執行此動作,以免因相同名稱的其他計數器存在而引發錯誤。

除了判斷計數器是否存在外,您還可以使用 PerformanceCounterCategory 類別的 Exists 方法,來判斷指定的分類是否存在。如果您正要建立自訂計數器而且想要判斷此分類是否已存在時,可以執行此動作。如果您所指定的分類已建立,Create 方法將引發錯誤。

如果找到項目,則 ExistsCounterExists 方法兩者都會傳回 true,如果找不到則傳回 false。

若要判斷計數器是否存在

  • 呼叫 PerformanceCounterCategory 類別的 Exists 方法,指定下列參數。

    參數

    CounterName

    您希望查詢的計數器名稱。

    CategoryName

    伺服器中的任何效能物件的分類。

    MachineName

    放置分類和計數器的伺服器。

    注意事項:

    在 Visual Basic 中,MachineName 參數是選擇性項目,如果將其留為空白,則此參數預設會使用本機電腦。在 C# 中,如果您不想指定電腦名稱,可以使用 Exists 方法的多載。

若要判斷分類是否存在

  • 呼叫 PerformanceCounterCategory 類別的 Exists 方法,指定下列參數。

    參數

    CategoryName

    您想要查詢的任何分類。

    MachineName

    放置分類的伺服器。

    下列範例會顯示如何在建立分類和計數器前,使用 If 陳述式來判斷分類是否已存在:

    If Not (PerformanceCounterCategory.Exists("MyCat")) Then
        PerformanceCounterCategory.Create( _
           "MyCat", "Description", _
           PerformanceCounterCategoryType.SingleInstance, _
           "MyCounter", "Description")
    End If
    
         if (!System.Diagnostics.PerformanceCounterCategory.Exists("MyCat"))
            {
                System.Diagnostics.PerformanceCounterCategory.Create(
                   "MyCat", "Description", PerformanceCounterCategoryType.SingleInstance,
                   "MyCounter", "Description");
            }
    

請參閱

工作

HOW TO:將值寫入效能計數器

概念

分類和計數器管理

效能計數器值擷取