ISymUnmanagedWriter::OpenScope 方法

在当前方法中打开新的词法范围。 该范围将成为新的当前范围,并推送到范围的堆栈上。 范围必须形成层次结构。 不允许同级重叠。

语法

HRESULT OpenScope(  
    [in] ULONG32 startOffset,  
    [out, retval] ULONG32* pRetVal);  

参数

startOffset
[in] 词法范围中第一条指令与方法开头的偏移量(以字节为单位)。

pRetVal
[out] 指向接收范围标识符的 ULONG32 的指针。

返回值

如果该方法成功,则返回 S_OK;否则返回 E_FAIL 或某种其他错误代码。

备注

ISymUnmanagedWriter::OpenScope 返回一个不透明的范围标识符,该标识符可与 ISymUnmanagedWriter::SetScopeRange 配合使用,用于之后定义范围的起始偏移量和结束偏移量。 在这种情况下,将忽略传递到 ISymUnmanagedWriter::OpenScopeISymUnmanagedWriter::CloseScope 的偏移量。 范围标识符仅在当前方法中有效。

要求

标头:CorSym.idl、CorSym.h

请参阅