CommentMarkProfileCommentMarkProfile

CommentMarkProfile 함수는 .vsp 파일에서 숫자 표식 및 텍스트 문자열을 삽입합니다.The CommentMarkProfile function inserts a numeric marker and a text string in the .vsp file. 삽입될 표시 및 주석의 경우 CommentMarkProfile 함수가 포함된 스레드에 대한 프로파일링이 ON이어야 합니다.For the mark and comment to be inserted, profiling for the thread that contains the CommentMarkProfile function must be ON.

구문Syntax

PROFILE_COMMAND_STATUS PROFILERAPI CommentMarkProfile(  
                                   long lMarker,   
                                   LPCTSTR szComment);  

매개 변수Parameters

lMarker

삽입할 숫자 표식입니다.Numeric marker to insert. 표식은 0보다 크거나 같아야 합니다.The marker must greater than or equal to 0 (zero).

szComment

삽입할 텍스트 문자열에 대한 포인터입니다.Pointer to the text string to insert. 문자열은 NULL 종결자를 포함하여 256자 이하여야 합니다.The string must be less than 256 characters including the NULL terminator.

속성 값/반환 값Property Value/Return Value

이 함수는 PROFILE_COMMAND_STATUS 열거형을 사용하여 성공 또는 실패를 나타냅니다.The function indicates success or failure by using PROFILE_COMMAND_STATUS enumeration. 반환 값은 다음 중 하나일 수 있습니다.The return value can be one of the following:

열거자Enumerator 설명Description
MARK_ERROR_MARKER_RESERVEDMARK_ERROR_MARKER_RESERVED 매개 변수가 0보다 작거나 같습니다.The parameter is less than or equal to 0. 이러한 값은 예약되어 있습니다.These values are reserved. 표시와 주석이 기록되지 않습니다.The mark and comment are not recorded.
MARK_ERROR_MODE_NEVERMARK_ERROR_MODE_NEVER 이 함수가 호출될 때 프로파일링 모드가 NEVER로 설정되었습니다.The profiling mode was set to NEVER when the function was called. 표시와 주석이 기록되지 않습니다.The mark and comment are not recorded.
MARK_ERROR_MODE_OFFMARK_ERROR_MODE_OFF 이 함수가 호출될 때 프로파일링 모드가 OFF로 설정되었습니다.The profiling mode was set to OFF when the function was called. 표시와 주석이 기록되지 않습니다.The mark and comment are not recorded.
MARK_ERROR_NO_SUPPORTMARK_ERROR_NO_SUPPORT 이 컨텍스트에서는 표시가 지원되지 않습니다.No mark support in this context. 표시와 주석이 기록되지 않습니다.The mark and comment are not recorded.
MARK_ERROR_OUTOFMEMORYMARK_ERROR_OUTOFMEMORY 메모리에 이벤트를 기록할 수 없습니다.Memory was not available to record the event. 표시와 주석이 기록되지 않습니다.The mark and comment are not recorded.
MARK_TEXTTOOLONGMARK_TEXTTOOLONG 문자열이 최대값인 256자를 초과합니다.The string exceeds the maximum of 256 characters. 주석 문자열이 잘리고 표시와 주석이 기록됩니다.The comment string is truncated and the mark and comment are recorded.
MARK_OKMARK_OK MARK_OK는 성공을 나타내기 위해 반환됩니다.MARK_OK is returned to indicate success.

설명Remarks

표시 및 주석을 VSInstr Mark 명령 또는 함수(CommentMarkAtProfile, CommentMarkProfile 또는 MarkProfile)를 사용하여 삽입한 경우 표시 프로필 함수를 포함하는 스레드의 프로파일링 상태는 ON입니다.The profiling state for the thread that contains the mark profile function must be on when marks and comments inserted with the VSInstr Mark command or with functions (CommentMarkAtProfile, CommentMarkProfile, or MarkProfile).

프로필 표시는 범위 내에서 전역입니다.Profile marks are global in scope. 예를 들어 한 스레드에 삽입된 프로필 표시를 사용하여 .vsp 파일의 스레드에 있는 데이터 세그먼트의 시작이나 끝을 표시할 수 있습니다.For example, a profile mark inserted in one thread can be used to mark the start or end of a data segment in any thread in the .vsp file.

중요

CommentMarkProfile 메서드는 계측에서만 사용할 수 있습니다.CommentMarkProfile method can only be used with instrumentation.

.NET Framework의 해당 값.NET Framework Equivalent

Microsoft.VisualStudio.Profiler.dllMicrosoft.VisualStudio.Profiler.dll

함수 정보Function Information

헤더Header VSPerf.h 포함Include VSPerf.h
라이브러리Library VSPerf.lib 사용Use VSPerf.lib
유니코드Unicode CommentMarkProfileW(유니코드) 및 CommentMarkProfileA(ANSI)로 구현됐습니다.Implemented as CommentMarkProfileW (Unicode) and CommentMarkProfileA (ANSI).

예제Example

다음 코드에서는 CommentMarkProfile 함수 호출을 보여 줍니다.The following code illustrates the CommentMarkProfile function call. 예제에서는 코드에서 ANSIANSI 함수 호출을 호출할지 여부를 결정하도록 Win32 문자열 매크로 및 Unicode 컴파일러 설정의 사용을 가정합니다.The example assumes the use of Win32 string macros and Unicode compiler settings to determine whether the code calls the ANSIANSI function call.

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  
}  

참고 항목See Also

Visual Studio 프로파일러 API 참조(네이티브)Visual Studio Profiler API Reference (Native)