用 .NET 7 创建一个C# AOT 程序,运行前编译太强大了

作者: 一线码农聊技术分类: 职业职场 发布时间: 2022-11-21 18:44:55 浏览:8261 次

用 .NET 7 创建一个C# AOT 程序,运行前编译太强大了

魔の女ちゃん:
up主啥时候能来个栏目,教使用windbg?[笑哭]

【回复】你现在要找个生产出问题的dump,很蓝的拉~
魔の女ちゃん:
unity很早就有IL2CPP技术了,编译成本地代码对于像游戏这类有安全需求的场合意义非凡,还能无缝对接更变态的vm。

SunTai三台:
现在为止,还没啥用处,社区不支持aot你壳子支持也没啥用,比如连web服务都起不来,asp.net都不支持[doge]。 asp.net这种大型脚手架,近期也很难aot,光注入都是问题[吃瓜]

【回复】为什么spring已经支持aot了,微软为什么不让asp提供支持[笑哭]
【回复】回复 @震惊惊惊惊惊惊惊 :事实上,带pdb的情况下,用ida能直接逆出来完整的c#代码,连linq都可以 我今天试了一下都震惊了
【回复】回复 @震惊惊惊惊惊惊惊 :已经有能将机器码分析成抽象语法树再转成MSIL的工具了
bili_21759613653:
工控行业,还在用比较老的.net 2-4写winform,如果升级到AOT的话是不是意味着客户端不需要安装.net framework了?对操作系统有要求吗?

【回复】Aot最低要求win7 sp1还要打运行时
【回复】没用,这么老的版本未来都不会支持
istomyang:
好久没碰dotnet的东西了,巨硬还是很强的。

【回复】回复 @江海渔 :而且,感觉c# 好像是先做配套工具,然后再推出aot,因为直接推出aot周边的框架不支持也没用啊,总不能像graalvm一样全部通过繁琐的配置文件手动标记反射吧? c# 加入的源码生成器功能估计就是为了解决反射带来的问题,这样就可以让aot更方便
【回复】回复 @杨族九世 :你要不要看看时间,dotnet8下个月才出正式版aot,我这回复都年初的了,那时候graal早就可以用了
【回复】回复 @江海渔 :c# aot这个不是原生吗???
redfox6843:
如果做个aot 的DLL程序,会和c语言做的DLL 一样吗?

极速蜗牛1113:
.NET Core 和 .NET 5+ 本身就支持带框架的发布,这次的 AOT 只是将代码从 IL 字节码变成二进制而已,对于非计算密集型程序和对启动时间要求不高的程序意义不大

【回复】不能反编译意义大不大?
【回复】回复 @码农冰 :扯犊子吧。签名和加壳压根不是一个东西。而且加了壳也一样破,目前没有哪个壳是破不了的。
【回复】回复 @码农冰 :证书签名和反编译有半毛钱关系吗?
大梦童鞋:
感觉讲的太浅了,至少也要说下优缺点吧?

栎树下:
大佬问下,wpf程序直接访问数据库,如何隐藏连接字符串,反编译也看不到的那种,要是代码也看不见更好。

【回复】用中间件,登录数据库敏感操作用编译型语言写个dll
kami11:
aot 好像5就有了,这次更新的更准确应该叫原生aot或者本地aot

【回复】回复 @supersoar :打包3就有了
【回复】5的那叫selfhost 也是把运行时环境打包到单个exe,但是那个真就只是打包了(就是用一个native的exe启用clr加载.net的dll运行)
【回复】没有的,5只是r2r,预编译了部分代码
大师兄6789:
net有没有工具可以看到类型内存占用排行,类似于jvm里边有个看内存分析的画面

mengfengli:
引用第三方的组件之后还能编译成aot吗

C# windbg AOT .NET7

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!