VS2022开发Arduino(90%转载10%原创)

先上转载链接

VS2022开发Arduino(提供Visual.Micro.Processing.Sketch.dll)_hb2cpc的博客-CSDN博客_vs开发arduino

 Visual Studio 2022开发Arduino详述_liht_1634的博客-CSDN博客_visualstudio arduino

其中破解部分编译出错,此处为原创,其他为转载

主要用到ildasm和ILSpy这两款工具

  • 2:ILSpy/dnSpy 【免费】

官方网址:http://ilspy.net/
Latest release: https://github.com/0xd4d/dnSpy/releases

逆向反编译4大工具

C# 逆向反编译工具ILSPY - 简书

使用ilasm生成新的dll时,会出先失败为难题,没有提示

 参考一下文章,发现就是绝对路径的问题,文件需要增加绝对路径,编译才能通过

参考链接

ildasm & ilasm 反编译修改代码及注意事项 - bindot - 博客园


ildasm & ilasm 反编译修改代码
ildasm 用于查看 dll 中的 il 代码, ilasm 用于将 il 编译成 dll
ildasm 路径:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\ildasm.exe
ilasm  路径:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ilasm.exe

需要注意的几个坑:

  1. 如果未设置环境变量需要使用ilasm.exe编译的时候加上绝对路径
  2. output 需要当前用户有此次操作的权限,最简单的方法就是以管理员身份打开cmd,方法二,修改输出路径,比如D盘
  3. 需要在ilasm 的执行文件目录(C:\Windows\Microsoft.NET\Framework64\v4.0.30319\)中执行

.\ilasm.exe 绝对路径\my.il 绝对路径\my.res /output=绝对路径\ConsoleApp3.exe /exe

ilasm.exe 还支持.dll 格式

最终效果:

操作失败

  Failed to write output file, error code=0x80070005

操作成功

`#include "arduino.h"` 报错通常是因为Arduino IDE或者包含文件设置的问题。以下是几个解决步骤: ### 解决方案 1. **确认Arduino IDE版本**: - 首先检查您正在使用的Arduino IDE版本是否支持VSCode或其他现代IDE。某些较旧版本的Arduino IDE可能与Visual Studio Code (VSCode) 或其他高级IDE不兼容。 2. **安装Arduino扩展**: - 如果您的IDEVSCode,则需要安装Arduino扩展。打开VSCode,在“Extensions”菜单上搜索“Arduino”,然后点击安装。 3. **正确配置Arduino环境变量**: - 确保您的系统路径包含了Arduino的安装目录,这通常是安装Arduino IDE后的`Arduino\hardware`路径下。可以在环境变量设置中添加此路径到系统的“Path”。 4. **使用正确的Arduino库**: - `#include "arduino.h"` 通常用于Arduino的源代码中,而不是在IDE中直接编写程序时使用。在IDE中,应该使用Arduino IDE提供的预构建库函数。例如,使用`pinMode()`、`digitalWrite()`等,而不需要导入额外的`arduino.h`文件。 5. **检查项目设置**: - 确认您的VSCode项目设置中指定了正确的Arduino板和端口。这通常在Arduino IDE的“首选项”中可以找到,但在VSCode内可能需要手动设置或通过特定插件进行集成。 6. **编译设置**: - 检查IDE内的编译设置是否正确指向了Arduino IDE的bin目录。这可以通过在VSCode内运行Arduino的命令,如 `arduino: compile board` 来验证,看看是否有错误信息指出编译失败的原因。 7. **更新依赖或重启IDE**: - 如果上述步骤都不能解决问题,尝试更新IDE至最新版本,或者重启计算机,有时候软件冲突或缓存问题可能导致此类错误。 ### 相关问题: 1. **如何在VSCode中成功搭建Arduino开发环境?** 2. **在使用Arduino库时遇到错误:“未声明的标识符”怎么办?** 3. **VSCode下的Arduino项目无法正常编译,提示找不到必要的库文件,应如何排查解决?**
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值