ICorDebugFunction2::GetVersionNumber Method

Gets the Edit and Continue version of this function.

HRESULT GetVersionNumber (
    [out] ULONG32   *pnVersion
);

Parameters

  • pnVersion
    [out] A pointer to an integer that is the version number of the function that is represented by this ICorDebugFunction2 Interface object.

Remarks

The runtime keeps track of the number of edits that have taken place to each module during a debug session. The version number of a function is one more than the number of the edit that introduced the function. The function's original version is version 1. The number is incremented for a module every time ICorDebugModule2::ApplyChanges Method is called on that module. Thus, if a function’s body was replaced in the first and third call to ICorDebugModule2::ApplyChanges, GetVersionNumber may return version 1, 2, or 4 for that function, but not version 3. (That function would have no version 3.)

The version number is tracked separately for each module. So, if you perform four edits on Module 1, and none on Module 2, your next edit on Module 1 will assign a version number of 6 to all the edited functions in Module 1. If the same edit touches Module 2, the functions in Module 2 will get a version number of 2.

The version number obtained by the GetVersionNumber method may be lower than that obtained by ICorDebugFunction::GetCurrentVersionNumber Method.

The ICorDebugCode::GetVersionNumber Method method performs the same operation as ICorDebugFunction2::GetVersionNumber.

Requirements

Platforms: Windows 2000, Windows XP, Windows Server 2003 family

Header: CorDebug.idl

Library: CorGuids.lib

.NET Framework Version: 2.0, 1.1, 1.0

See Also

Reference

ICorDebugFunction2 Interface