Skip to main content

System.Runtime.InteropServices by Microsoft

NuGet / site data

Nuget GitHub last commit GitHub Repo stars

Details

Info

info

Name: System.Runtime.InteropServices

Provides types that support COM interop and platform invoke services.

Commonly Used Types: System.Runtime.InteropServices.GCHandle System.Runtime.InteropServices.GuidAttribute System.Runtime.InteropServices.COMException System.DllNotFoundException System.Runtime.InteropServices.DllImportAttribute

Author: Microsoft

NuGet: https://www.nuget.org/packages/System.Runtime.InteropServices/

You can find more details at https://learn.microsoft.com/en-us/dotnet/standard/native-interop/pinvoke-source-generation

Source: https://www.nuget.org/packages/System.Runtime.InteropServices/

Original Readme

note

About

note

Generate PInvoke calls

How to use

Example (source csproj, source files)

This is the CSharp Project that references System.Runtime.InteropServices

<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<PropertyGroup>
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
<CompilerGeneratedFilesOutputPath>$(BaseIntermediateOutputPath)\GX</CompilerGeneratedFilesOutputPath>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
</Project>

Generated Files

Those are taken from $(BaseIntermediateOutputPath)\GX

// <auto-generated/>
unsafe partial class DemoImport
{
[System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.LibraryImportGenerator", "7.0.10.26716")]
[System.Runtime.CompilerServices.SkipLocalsInitAttribute]
internal static partial int MessageBoxW_LI(nint hWnd, string lpText, string lpCaption, uint uType)
{
int __lastError;
int __retVal;
// Pin - Pin data in preparation for calling the P/Invoke.
fixed (void* __lpText_native = &global::System.Runtime.InteropServices.Marshalling.Utf16StringMarshaller.GetPinnableReference(lpText))
fixed (void* __lpCaption_native = &global::System.Runtime.InteropServices.Marshalling.Utf16StringMarshaller.GetPinnableReference(lpCaption))
{
System.Runtime.InteropServices.Marshal.SetLastSystemError(0);
__retVal = __PInvoke(hWnd, (ushort*)__lpText_native, (ushort*)__lpCaption_native, uType);
__lastError = System.Runtime.InteropServices.Marshal.GetLastSystemError();
}

System.Runtime.InteropServices.Marshal.SetLastPInvokeError(__lastError);
return __retVal;
// Local P/Invoke
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint = "MessageBoxW", ExactSpelling = true)]
static extern unsafe int __PInvoke(nint hWnd, ushort* lpText, ushort* lpCaption, uint uType);
}
}

Useful

Download Example (.NET C#)

Share System.Runtime.InteropServices

https://ignatandrei.github.io/RSCG_Examples/v2/docs/System.Runtime.InteropServices

aaa

Category "EnhancementClass" has the following generators:

1 ApparatusAOT Nuget GitHub Repo stars 2023-04-16

2 AspectGenerator Nuget GitHub Repo stars 2024-01-07

3 CommonCodeGenerator Nuget GitHub Repo stars 2024-04-03

4 Comparison Nuget GitHub Repo stars 2025-05-25

5 DudNet Nuget GitHub Repo stars 2023-10-27

6 Enhanced.GetTypes Nuget GitHub Repo stars 2024-09-17

7 FastGenericNew Nuget GitHub Repo stars 2023-08-10

8 Immutype Nuget GitHub Repo stars 2023-08-12

9 Ling.Audit Nuget GitHub Repo stars 2023-12-12

10 Lombok.NET Nuget GitHub Repo stars 2023-04-16

11 M31.FluentAPI Nuget GitHub Repo stars 2023-08-25

12 MemberAccessor Nuget GitHub Repo stars 2025-03-24

13 MemoryPack Nuget GitHub Repo stars 2023-08-04

14 Meziantou.Polyfill Nuget GitHub Repo stars 2023-10-10

15 Microsoft.Extensions.Logging Nuget GitHub Repo stars 2023-04-16

16 Microsoft.Extensions.Options.Generators.OptionsValidatorGenerator Nuget GitHub Repo stars 2023-11-17

17 Microsoft.Interop.JavaScript.JSImportGenerator 2023-04-16

18 OptionToStringGenerator Nuget GitHub Repo stars 2024-02-15

19 Program Nuget GitHub Repo stars 2025-11-06

20 QueryStringGenerator Nuget GitHub Repo stars 2024-11-07

21 RSCG_Decorator Nuget GitHub Repo stars 2023-09-30

22 RSCG_UtilityTypes NugetNuget GitHub Repo stars 2023-12-22

23 StaticReflection NugetNuget GitHub Repo stars 2023-10-13

24 SyncMethodGenerator Nuget GitHub Repo stars 2023-08-14

25 System.Runtime.InteropServices Nuget GitHub Repo stars 2023-04-16

26 System.Text.RegularExpressions Nuget GitHub Repo stars 2023-04-16

27 TelemetryLogging Nuget GitHub Repo stars 2023-11-30

28 ThisClass Nuget GitHub Repo stars 2024-04-19

See category

EnhancementClass