Skip to content
Merged
Show file tree
Hide file tree
Changes from 35 commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
5ea5af8
Initial plan
Copilot Jun 26, 2025
47b51fc
Move metadata and hosting APIs from framework to core folder
Copilot Jun 26, 2025
cf91c30
Fix cross-references to moved metadata and hosting APIs
Copilot Jun 26, 2025
9e84548
Fix linting issues and finalize API move
Copilot Jun 26, 2025
4dc6065
Fix invalid link warnings in moved API documentation
Copilot Jun 26, 2025
98c008d
Fix invalid link warnings in all 723 moved API documentation files
Copilot Jun 26, 2025
a635021
Fix invalid file links in moved unmanaged API documentation
Copilot Jun 26, 2025
987c709
human edits
gewarren Jun 26, 2025
ad67a4c
more human edits
gewarren Jun 26, 2025
2430742
more human edits
gewarren Jun 26, 2025
aa85d44
more human edits
gewarren Jun 26, 2025
b0895af
undo separate changes
gewarren Jun 26, 2025
6bc9ea2
undo strong naming changes
gewarren Jun 26, 2025
b9f0e6f
resets for hosting
gewarren Jun 26, 2025
80b88fa
reset index and toc for hosting
gewarren Jun 26, 2025
0c4dcc1
reset hosting files
gewarren Jun 26, 2025
7ee39f0
fix invalid links
gewarren Jun 26, 2025
e596d05
add redirects
gewarren Jun 27, 2025
d3201b5
final touchups
gewarren Jun 27, 2025
98f9cee
fix build warnings
gewarren Jun 27, 2025
22bfa4f
undo non-imetadata moves
gewarren Jul 22, 2025
93d7f89
undo move of imetadata* apis
gewarren Jul 22, 2025
005a38b
update TOCs, add imetadata interfaces index
gewarren Jul 23, 2025
a4207de
fix build errors
gewarren Jul 23, 2025
84ef0bb
fix more build errors
gewarren Jul 23, 2025
886363b
move more enums to .net core
gewarren Jul 23, 2025
e22cf15
build fixes
gewarren Jul 23, 2025
98dde3f
more organization
gewarren Jul 24, 2025
373c038
add redirects
gewarren Jul 24, 2025
6b6c441
more fixes
gewarren Jul 24, 2025
e6ab459
more fixes
gewarren Jul 24, 2025
79a1fc3
more fixes
gewarren Jul 24, 2025
814fe4f
more fixes
gewarren Jul 24, 2025
5e874b4
fix typo
gewarren Jul 24, 2025
045111a
reset unrelated files
gewarren Jul 24, 2025
3b7b7d0
respond to feedback
gewarren Jul 28, 2025
505c80a
fix build warnings
gewarren Jul 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1,190 changes: 1,190 additions & 0 deletions .openpublishing.redirection.framework.json

Large diffs are not rendered by default.

23 changes: 23 additions & 0 deletions docs/core/unmanaged-api/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
description: "Learn more about unmanaged APIs for .NET"
title: .NET unmanaged API reference
ms.date: 09/19/2023
---
# .NET unmanaged API reference

This section includes information on unmanaged APIs that can be used by managed-code-related applications, such as runtime hosts, compilers, disassemblers, obfuscators, debuggers, and profilers.

These articles describe APIs that were introduced in .NET Core 2.0 and later versions, or APIs that can be used with both .NET Framework and .NET.

For .NET Framework-specific unmanaged APIs, see [.NET Framework unmanaged API reference](../../framework/unmanaged-api/index.md).

## In this section

[Debugging](./debugging/index.md)\
Describes the debugging API, which enables a debugger to debug code that runs in the common language runtime (CLR) environment.

[Metadata](./metadata/interfaces/metadata-interfaces.md)\
Describes the metadata interfaces, which enable a client such as a compiler to generate or access a component's metadata without the types being loaded by the CLR.

[Profiling](./profiling/index.md)\
Describes the profiling API, which enables a profiler to monitor a program's execution by the CLR.
Original file line number Diff line number Diff line change
Expand Up @@ -2,61 +2,55 @@
description: "Learn more about: AssemblyFlags Enumeration"
title: "AssemblyFlags Enumeration"
ms.date: "03/30/2017"
api_name:
api_name:
- "AssemblyFlags"
api_location:
api_location:
- "mscoree.dll"
api_type:
api_type:
- "COM"
f1_keywords:
f1_keywords:
- "AssemblyFlags"
helpviewer_keywords:
- "AssemblyFlags enumeration [.NET Framework metadata]"
ms.assetid: 40f9bd9e-16ec-447e-81b0-168c875e9866
topic_type:
topic_type:
- "apiref"
---
# AssemblyFlags Enumeration

Contains values that describe run-time features of an assembly.

## Syntax

```cpp
typedef enum {
afImplicitExportedTypes = 0x0001,
afImplicitResources = 0x0002,
afNonSideBySideAppDomain = 0x0010,
afNonSideBySideProcess = 0x0020,
afNonSideBySideMachine = 0x0030
} AssemblyFlags;
```

## Members

|Member|Description|
|------------|-----------------|
|`afImplicitExportedTypes`|Specifies that exported type definitions are implicit within the files that comprise the assembly. In the .NET Framework versions 1.0 and 1.1, this value is always assumed to be set.|
|`afImplicitResources`|Specifies that resource definitions are implicit within the files that comprise the assembly. In the .NET Framework 1.0 and 1.1, this value is always assumed to be set.|
|`afNonSideBySideAppDomain`|Specifies that the assembly cannot execute with other versions if they are running in the same application domain.|
|`afNonSideBySideProcess`|Specifies that the assembly cannot execute with other versions if they are running in the same process.|
|`afNonSideBySideMachine`|Specifies that the assembly cannot execute with other versions if they are running on the same computer.|

## Remarks

The values between 0x0010 and 0x0070, inclusive, are used to describe side-by-side compatibility features of the referenced assembly. If none of these values are set, the assembly is assumed to be side-by-side compatible.

## Requirements

**Platforms:** See [System Requirements](../../get-started/system-requirements.md).

**Header:** MsCorEE.h

**Library:** Included as a resource in MsCorEE.dll

**.NET Framework Versions:** [!INCLUDE[net_current_v10plus](../../../../includes/net-current-v10plus-md.md)]

Contains values that describe run-time features of an assembly.

## Syntax

```cpp
typedef enum {
afImplicitExportedTypes = 0x0001,
afImplicitResources = 0x0002,
afNonSideBySideAppDomain = 0x0010,
afNonSideBySideProcess = 0x0020,
afNonSideBySideMachine = 0x0030
} AssemblyFlags;
```

## Members

|Member|Description|
|------------|-----------------|
|`afImplicitExportedTypes`|Specifies that exported type definitions are implicit within the files that comprise the assembly. In the .NET Framework versions 1.0 and 1.1, this value is always assumed to be set.|
|`afImplicitResources`|Specifies that resource definitions are implicit within the files that comprise the assembly. In the .NET Framework 1.0 and 1.1, this value is always assumed to be set.|
|`afNonSideBySideAppDomain`|Specifies that the assembly cannot execute with other versions if they are running in the same application domain.|
|`afNonSideBySideProcess`|Specifies that the assembly cannot execute with other versions if they are running in the same process.|
|`afNonSideBySideMachine`|Specifies that the assembly cannot execute with other versions if they are running on the same computer.|

## Remarks

The values between 0x0010 and 0x0070, inclusive, are used to describe side-by-side compatibility features of the referenced assembly. If none of these values are set, the assembly is assumed to be side-by-side compatible.

## Requirements

**Platforms:** See [.NET supported operating systems](https://github.com/dotnet/core/blob/main/os-lifecycle-policy.md).

**Header:** MsCorEE.h

**Library:** Included as a resource in MsCorEE.dll

## See also

- [Metadata Enumerations](metadata-enumerations.md)
- [IMetaDataAssemblyEmit Interface](imetadataassemblyemit-interface.md)
- [IMetaDataAssemblyEmit Interface](../interfaces/imetadataassemblyemit-interface.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
description: "Learn more about: AssemblyRefFlags Enumeration"
title: "AssemblyRefFlags Enumeration"
ms.date: "03/30/2017"
api_name:
- "AssemblyRefFlags"
api_location:
- "mscoree.dll"
api_type:
- "COM"
f1_keywords:
- "AssemblyRefFlags"
topic_type:
- "apiref"
---
# AssemblyRefFlags Enumeration

Contains values that describe features of an assembly reference.

## Syntax

```cpp
typedef enum {
arfFullOriginator = 0x0001
} AssemblyRefFlags;
```

## Members

|Member|Description|
|------------|-----------------|
|`arfFullOriginator`|Specifies that the assembly reference contains full, unhashed information about the publisher of the assembly.|

## Requirements

**Platforms:** See [.NET supported operating systems](https://github.com/dotnet/core/blob/main/os-lifecycle-policy.md).

**Header:** Cor.h

## See also

- [IMetaDataAssemblyEmit Interface](../interfaces/imetadataassemblyemit-interface.md)
- [DefineAssemblyRef Method](../interfaces/imetadataassemblyemit-defineassemblyref-method.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
---
description: "Learn more about: CorAssemblyFlags Enumeration"
title: "CorAssemblyFlags Enumeration"
ms.date: "03/30/2017"
api_name:
- "CorAssemblyFlags"
api_location:
- "mscoree.dll"
api_type:
- "COM"
f1_keywords:
- "CorAssemblyFlags"
topic_type:
- "apiref"
---
# CorAssemblyFlags Enumeration

Contains values that describe the metadata applied to an assembly compilation.

## Syntax

```cpp
typedef enum CorAssemblyFlags {

afPublicKey = 0x0001,
afPA_None = 0x0000,
afPA_MSIL = 0x0010,
afPA_x86 = 0x0020,
afPA_IA64 = 0x0030,
afPA_AMD64 = 0x0040,
afPA_ARM = 0x0050,
afPA_NoPlatform = 0x0070,
afPA_Specified = 0x0080,
afPA_Mask = 0x0070,
afPA_FullMask = 0x00F0,
afPA_Shift = 0x0004,

afEnableJITcompileTracking = 0x8000,
afDisableJITcompileOptimizer= 0x4000,

afRetargetable = 0x0100,
afContentType_Default = 0x0000,
afContentType_WindowsRuntime = 0x0200,
afContentType_Mask = 0x0E00,

} CorAssemblyFlags;
```

## Members

|Member|Description|
|------------|-----------------|
|`afPublicKey`|Indicates that the assembly reference holds the full, unhashed public key.|
|`afPA_None`|Indicates that the processor architecture is unspecified.|
|`afPA_MSIL`|Indicates that the processor architecture is neutral (PE32).|
|`afPA_x86`|Indicates that the processor architecture is x86 (PE32).|
|`afPA_IA64`|Indicates that the processor architecture is Itanium (PE32+).|
|`afPA_AMD64`|Indicates that the processor architecture is AMD X64 (PE32+).|
|`afPA_ARM`|Indicates that the processor architecture is ARM (PE32).|
|`afPA_NoPlatform`|Indicates that the assembly is a reference assembly; that is, it applies to any architecture but cannot run on any architecture. Thus, the flag is the same as `afPA_Mask`.|
|`afPA_Specified`|Indicates that the processor architecture flags should be propagated to the `AssemblyRef` record.|
|`afPA_Mask`|A mask that describes the processor architecture.|
|`afPA_FullMask`|Specifies that the processor architecture description is included.|
|`afPA_Shift`|Indicates a shift count in the processor architecture flags to and from the index.|
|`afEnableJITcompileTracking`|Indicates the corresponding value from the <xref:System.Diagnostics.DebuggableAttribute.DebuggingModes> of the <xref:System.Diagnostics.DebuggableAttribute>.|
|`afDisableJITcompileOptimizer`|Indicates the corresponding value from the <xref:System.Diagnostics.DebuggableAttribute.DebuggingModes> of the <xref:System.Diagnostics.DebuggableAttribute>.|
|`afRetargetable`|Indicates that the assembly can be retargeted at run time to an assembly from a different publisher.|
|`afContentType_Mask`|A mask that describes the content type.|
|`afContentType_Default`|Indicates the default content type.|
|`afContentType_WindowsRuntime`|Indicates the Windows Runtime content type.|

## Requirements

**Platforms:** See [.NET supported operating systems](https://github.com/dotnet/core/blob/main/os-lifecycle-policy.md).

**Header:** CorHdr.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
---
description: "Learn more about: CorCheckDuplicatesFor Enumeration"
title: "CorCheckDuplicatesFor Enumeration"
ms.date: "03/30/2017"
api_name:
- "CorCheckDuplicatesFor"
api_location:
- "mscoree.dll"
api_type:
- "COM"
f1_keywords:
- "CorCheckDuplicatesFor"
topic_type:
- "apiref"
---
# CorCheckDuplicatesFor Enumeration

Specifies the metadata tokens that will be checked for duplicates.

## Syntax

```cpp
typedef enum CorCheckDuplicatesFor {

MDDupAll = 0xffffffff,
MDDupENC = MDDupAll,
MDNoDupChecks = 0x00000000,
MDDupTypeDef = 0x00000001,
MDDupInterfaceImpl = 0x00000002,
MDDupMethodDef = 0x00000004,
MDDupTypeRef = 0x00000008,
MDDupMemberRef = 0x00000010,
MDDupCustomAttribute = 0x00000020,
MDDupParamDef = 0x00000040,
MDDupPermission = 0x00000080,
MDDupProperty = 0x00000100,
MDDupEvent = 0x00000200,
MDDupFieldDef = 0x00000400,
MDDupSignature = 0x00000800,
MDDupModuleRef = 0x00001000,
MDDupTypeSpec = 0x00002000,
MDDupImplMap = 0x00004000,
MDDupAssemblyRef = 0x00008000,
MDDupFile = 0x00010000,
MDDupExportedType = 0x00020000,
MDDupManifestResource = 0x00040000,
MDDupGenericParam = 0x00080000,
MDDupMethodSpec = 0x00100000,
MDDupGenericParamConstraint = 0x00200000,

MDDupAssembly = 0x10000000,

MDDupDefault =
MDNoDupChecks | MDDupTypeRef | MDDupMemberRef |
MDDupSignature | MDDupTypeSpec | MDDupMethodSpec

} CorCheckDuplicatesFor;
```

## Members

| Member | Description |
|-------------------------------|------------------------------------------------------------|
| `MDDupAll` | Check all metadata tokens for duplicates. |
| `MDDupENC` | Not used. |
| `MDNoDupChecks` | Do not check metadata tokens for duplicates. |
| `MDDupTypeDef` | Check for duplicates of `mdTypeDef` tokens. |
| `MDDupInterfaceImpl` | Check for duplicates of `mdInterfaceImpl` tokens. |
| `MDDupMethodDef` | Check for duplicates of `mdMethodDef` tokens. |
| `MDDupTypeRef` | Check for duplicates of `mdTypeRef` tokens. |
| `MDDupMemberRef` | Check for duplicates of `mdMemberRef` tokens. |
| `MDDupCustomAttribute` | Check for duplicates of `mdCustomAttribute` tokens. |
| `MDDupParamDef` | Check for duplicates of `mdParamDef` tokens. |
| `MDDupPermission` | Check for duplicates of `mdPermission` tokens. |
| `MDDupProperty` | Check for duplicates of `mdProperty` tokens. |
| `MDDupEvent` | Check for duplicates of `mdEvent` tokens. |
| `MDDupFieldDef` | Check for duplicates of `mdFieldDef` tokens. |
| `MDDupSignature` | Check for duplicates of `mdSignature` tokens. |
| `MDDupModuleRef` | Check for duplicates of `mdModuleRef` tokens. |
| `MDDupTypeSpec` | Check for duplicates of `mdTypeSpec` tokens. |
| `MDDupImplMap` | Check for duplicates of `mdImplMap` tokens. |
| `MDDupAssemblyRef` | Check for duplicates of `mdAssemblyRef` tokens. |
| `MDDupFile` | Check for duplicates of `mdFile` tokens. |
| `MDDupExportedType` | Check for duplicates of `mdExportedType` tokens. |
| `MDDupManifestResource` | Check for duplicates of `mdManifestResource` tokens. |
| `MDDupGenericParam` | Check for duplicates of `mdGenericParam` tokens. |
| `MDDupMethodSpec` | Check for duplicates of `mdMethodSpec` tokens. |
| `MDDupGenericParamConstraint` | Check for duplicates of `mdGenericParamConstraint` tokens. |
| `MDDupAssembly` | Check for duplicates of `mdAssembly` tokens. |
| `MDDupDefault` | Check for duplicates of `mdMemberRef`, `mdTypeRef`, `mdSignature`, `mdTypeSpec`, and `mdMethodSpec` tokens. |

## Requirements

**Platforms:** See [.NET supported operating systems](https://github.com/dotnet/core/blob/main/os-lifecycle-policy.md).

**Header:** CorHdr.h
Loading
Loading