IMetaDataDispenser::DefineScope method (rometadataapi.h)
Creates a new area in memory in which you can create new metadata.
Syntax
HRESULT DefineScope(
[in] REFCLSID rclsid,
[in] DWORD dwCreateFlags,
[in] REFIID riid,
[out] IUnknown **ppIUnk
);
Parameters
[in] rclsid
The CLSID of the version of metadata structures to be created.
[in] dwCreateFlags
Flags that specify options.
[in] riid
The IID of the desired metadata interface to be returned. The caller will use the interface to create the new metadata.
The value of riid must specify one of the "emit" interfaces. Valid values are IID_IMetaDataEmit, IID_IMetaDataAssemblyEmit, or IID_IMetaDataEmit2.
[out] ppIUnk
The pointer to the returned interface.
Return value
If this method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
Remarks
DefineScope creates a set of in-memory metadata tables, generates a unique GUID (module version identifier, or MVID) for the metadata, and creates an entry in the module table for the compilation unit being emitted.
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | rometadataapi.h |
See also
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for