Condividi tramite


CommentMarkProfile

Aggiornamento: novembre 2007

La funzione CommentMarkProfile inserisce un indicatore numerico e una stringa di testo nel file vsp. Per l'inserimento dell'indicatore e del commento, è necessario che l'analisi per il thread contenente la funzione CommentMarkProfile sia impostata su ON.

PROFILE_COMMAND_STATUS PROFILERAPI CommentMarkProfileA(
                                                                      long lMarker, 
                                                                      LPCTSTR szComment);

Parametri

lMarker

Indicatore numerico da inserire che deve essere maggiore o uguale a 0 (zero).

szComment

Puntatore alla stringa di testo da inserire. La stringa deve contenere meno di 256 caratteri, incluso il carattere di terminazione NULL.

Valore proprietà/Valore restituito

La funzione indica esito positivo o negativo utilizzando l'enumerazione PROFILE_COMMAND_STATUS. Il valore restituito può essere uno dei seguenti:

Enumerator

Descrizione

MARK_ERROR_MARKER_RESERVED

Il valore del parametro è minore o uguale a 0. Questi valori sono riservati. L'indicatore e il commento non vengono registrati.

MARK_ERROR_MODE_NEVER

La modalità di profilo è stata impostata su NEVER quando è stata chiamata la funzione. L'indicatore e il commento non vengono registrati.

MARK_ERROR_MODE_OFF

La modalità di analisi era impostata su OFF quando è stata chiamata la funzione. L'indicatore e il commento non vengono registrati.

MARK_ERROR_NO_SUPPORT

In questo contesto non sono supportati indicatori. L'indicatore e il commento non vengono registrati.

MARK_ERROR_OUTOFMEMORY

Memoria non disponibile per registrare l'evento. L'indicatore e il commento non vengono registrati.

MARK_TEXTTOOLONG

La stringa supera il limite massimo di 256 caratteri. La stringa di commento viene troncata e l'indicatore e il commento vengono registrati.

MARK_OK

MARK_OK viene restituito per indicare esito positivo.

Note

La stato di analisi per il thread contenente la funzione relativa all'indicatore di analisi deve essere impostato su ON quando vengono inseriti indicatori e commenti con il comando Mark di VSInstr o con le funzioni (CommentMarkAtProfile, CommentMarkProfile o MarkProfile).

Gli indicatori di profilo hanno un ambito globale. Un indicatore di profilo inserito in un thread può, ad esempio, essere utilizzato per contrassegnare l'inizio o la fine di un segmento di dati in qualsiasi thread del file vsp.

Nota importante:

Il metodo CommentMarkProfile può essere utilizzato solo con la strumentazione.

Equivalente .NET Framework

Microsoft.VisualStudio.Profiler.dll

Informazioni sulla funzione

Intestazione

Includere VSPerf.h

Libreria

Utilizzare VSPerf.lib

Unicode

Implementato come CommentMarkProfileW (Unicode) e CommentMarkProfileA (ANSI).

Esempio

Nel codice riportato di seguito è illustrata la chiamata della funzione CommentMarkProfile. Nell'esempio si presuppone l'utilizzo di macro di stringa Win32 e delle impostazioni del compilatore Unicode per stabilire se il codice chiama la funzione ANSI.

void ExerciseCommentMarkProfile()
{
    // Declare and initalize variables to pass to 
    // CommentMarkProfile.  The values of these 
    // parameters are assigned based on the needs 
    // of the code; and for the sake of simplicity
    // in this example, the variables are assigned
    // arbitrary values.
    long markId = 01;
    TCHAR * markText = TEXT("Exercising CommentMarkProfile...");

    // Variables used to print output.
    HRESULT hResult;
    TCHAR tchBuffer[256];

    // Declare MarkOperationResult Enumerator.  
    // Holds return value from call to CommentMarkProfile.
    PROFILE_COMMAND_STATUS markResult;

    markResult = CommentMarkProfile(
        markId,
        markText);

    // Format and print result.
    LPCTSTR pszFormat = TEXT("%s %d.\0");
    TCHAR* pszTxt = TEXT("CommentMarkProfile returned");
    hResult = StringCchPrintf(tchBuffer, 256, pszFormat, 
        pszTxt, markResult);

#ifdef DEBUG
    OutputDebugString(tchBuffer);
#endif
}

Vedere anche

Altre risorse

Riferimenti per le API del profiler di Visual Studio (native)