删除事件收集器订阅

可以从本地计算机中删除事件收集器订阅。 必须知道订阅的名称,才能删除。 有关如何列出本地计算机上的当前订阅的详细信息,请参阅列出事件收集器订阅,或在命令提示符处键入以下命令:

wecutil es

注意

可以使用此示例删除事件收集器订阅,也可以在命令提示符处键入以下命令:

wecutil ds SubscriptionName

 

检索要删除的事件收集器订阅的名称后,可以将订阅的名称作为参数提供给 EcDeleteSubscription

以下 C++ 代码示例演示如何删除事件收集器订阅。

#include <windows.h>
#include <EvColl.h>
#include <strsafe.h>

#pragma comment(lib, "wecapi.lib")

void __cdecl wmain()
{
    DWORD dwRetVal;
    LPWSTR lpSubname = L"MyTestSubscription";

    // Delete the specified Event Collector subscription.
    if (!EcDeleteSubscription(lpSubname, 0))
    {
        dwRetVal = GetLastError();
        LPVOID lpwszBuffer;

        FormatMessageW( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
            NULL,
            dwRetVal,
            0,
            (LPWSTR) &lpwszBuffer,
            0,
            NULL);

        if (!lpwszBuffer)
        {
            wprintf(L"Failed to FormatMessage.  Operation Error Code: %u." 
                L"Error Code from FormatMessage: %u\n", dwRetVal, GetLastError());
            return;
        }

        wprintf(L"\nFailed to Perform Operation.\nError Code: %u\n"
            L"Error Message: %s\n", dwRetVal, lpwszBuffer);

        LocalFree(lpwszBuffer);
    }
}

列出事件收集器订阅

Windows 事件收集器参考