Registre-se para eventos NLM (INetworkListManager, Advise, Sink, etc.)

No meu aplicativo Delphi, gostaria de ser informado sobre alterações de rede usando a API do NLM (Microsoft Network List Manager):http://msdn.microsoft.com/library/ee264321

Eu olhei para o exemplo vinculado "Como se registrar para eventos NLM" e o traduzi para o Delphi. No entanto, não tenho ideia de como continuar com isso.

var
    pNLM: INetworkListManager;
    pCpc: IConnectionPointContainer;
    pConnectionPoint: IConnectionPoint;
    pSink: IUnknown;
    dwCookie: LongInt;
const
    IID_IConnectionPointContainer: TGUID = '{B196B284-BAB4-101A-B69C-00AA00341D07}';
    IID_IUnknown: TGUID = '{00000000-0000-0000-C000-000000000046}';
begin
    if Succeeded(CoCreateInstance(CLASS_NetworkListManager, nil, CLSCTX_ALL, IID_INetworkListManager, pNLM)) then
    begin
        if Succeeded(pNLM.QueryInterface(IID_IConnectionPointContainer, pCpc)) then
        begin
            if Succeeded(pCpc.FindConnectionPoint(IID_INetworkEvents, pConnectionPoint)) then
            begin
                if Succeeded(pCpc.QueryInterface(IID_IUnknown, pSink)) then
                begin
                    pConnectionPoint.Advise(pSink, dwCookie);
                end;
            end;
        end;
    end;
end;

O artigo diz:

"Depois de criar o objeto INetworkListManager acima, você receberá notificações do INetworkEvents a partir desse ponto. O pSink implementa a interface INetworkEvent, incluindo os métodos de processamento de eventos como NetworkAdded, NetworkDeleted, NetworkConnectivityChanged e NetworkPropertyChanged."

Infelizmente não tenho ideia de como fazer isso. Não há mais instruções e, portanto, espero que alguém aqui possa me instruir / fornecer um exemplo do que mais fazer para chamar procedimentos personalizados para esses eventos. Obrigado.