.net9 AOT编绎生成标准DLL,输出API函数教程-中国首创

1,安装VS2022预览版(Visual Studio Preview)

https://visualstudio.microsoft.com/zh-hans/vs/preview/#download-preview

2,选择安装组件:使用C++的桌面开发 和 .NET桌面开发


创建、编绎动态DLL:

1,C#命令行创建dll工程:

VS2022菜单:工具》命令行》开发者命令提示,输入:

dotnet new classlib -o CSharpDllExport -f net9.0

2,class1.cs修改代码:

vbnet 复制代码
using System.Runtime.InteropServices;

namespace CSharpDllExport
{
    public static class Class1
    {
        [UnmanagedCallersOnly(EntryPoint = "Add")]
        public static int Add(int a, int b)
        {
            return a + b;
        }
    }
}

3,编绎生成32位标准Dll,输出函数Add(加法计算)

用时12秒左右,DLL大小,1MB

dotnet publish CSharpDllExport -p:PublishAot=true -r win-x86 -c release /p:NativeLib=Shared -f net9.0

4,VB6中调用API

CSharpDllExport\bin\release\net9.0\win-x86\publish\CSharpDllExport.dll

vbscript 复制代码
Private Declare Function Add Lib "CSharpDllExport" (ByVal a As Long, ByVal b As Long) As Long

Private Sub Command1_Click()
    MsgBox Add(3, 4)
End Sub
相关推荐
海盗123435 分钟前
微软技术日报 2026-09-10:Project Zenith 开发者设备亮相,.NET 11 RC1 可投产
microsoft·r语言·.net
唐青枫16 小时前
C#.NET PInvoke 深入解析:封送、内存布局与原生互操作实战
c#·.net
yywww18 小时前
GenHTTP on .NET 11 登顶HTTP Arena 多个榜单(这是何方神圣)
.net
咕白m6251 天前
C# 如何限制 PDF 复制、打印权限?
c#·.net
慧都小妮子1 天前
GcExcel 服务端 Excel 组件:无需安装 Office 的 Java/.NET 报表方案
java·.net·excel·gcexcel·服务端excel组件
我是唐青枫2 天前
C#.NET StructureMap 从依赖注入到项目实战
开发语言·c#·.net
Lost of 程序猿2 天前
C# 12 / .NET 9 新特性机制深度:编译器替你写了什么,哪些糖吃下去会出事
windows·c#·.net
唐青枫3 天前
C#.NET StructureMap 从依赖注入到项目实战
c#·.net
智码看视界3 天前
.NET 10 推理大模型TensorSharp 3.3.0 部署实测:纯.NET推理引擎反超llama.cpp 1.5倍,DFlash2提速62%
c#·.net·llama.cpp·.net 10·tensorsharp·本地大模型推理·开源推理引擎