.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
相关推荐
追逐时光者8 小时前
一个 .NET 开源、功能强大的在线文档编辑器,类似于 Microsoft Word,支持信创!
后端·.net
techdashen11 小时前
性能比拼: .NET (C#) vs. Fiber (Go)
golang·c#·.net
唐青枫21 小时前
LinqToDB 从入门到精通:示例驱动教程
c#·.net
小清兔1 天前
c#基础知识
开发语言·数据库·学习·unity·c#·游戏引擎·.net
MicrosoftReactor1 天前
技术速递|使用 AI 应用模板扩展创建一个 .NET AI 应用与自定义数据进行对话
人工智能·.net
weixin_456904271 天前
C# .NET Framework 4.0 网络编程完全指南
网络·c#·.net
许泽宇的技术分享2 天前
当自然语言遇上数据库:Text2Sql.Net的MCP革命如何重新定义开发者与数据的交互方式
数据库·.net·text2sql·mcp
界面开发小八哥2 天前
.NET表格控件Spread .NET v18.0——支持富文本、增强PDF导出
信息可视化·pdf·.net·数据可视化·spread .net
百锦再2 天前
.NET + Vue 基于 WebSocket 的聊天室全面实现
vue.js·websocket·rabbitmq·.net·chat·message