【发布时间】:2019-10-21 13:27:12
【问题描述】:
我从事嵌入式软件开发,编写依赖于硬件设备的纯 C 代码。
在我们的硬件设备准备好之前,我需要完成我们嵌入式软件的应用模块,这些应用模块不会直接依赖于硬件。
有什么方法可以让我在 .NET 环境(VC++ 或 C#)中编写和执行 C 代码,有一些用于模拟应用程序的 UI,使用断点和监视进行调试,一旦逻辑得到证明,获取 C 文件并将它们移植到硬件(当然需要修改接口)?
由于我不是 .NET 方面的专家,我不确定这是否可以做到。 如果是,人们使用什么方法?
【问题讨论】:
-
创建一个 DLL 项目来托管您的 C 代码,在您的 C# 代码中使用 [DllImport]。
-
DLL 是否允许我逐行执行我的 C 代码?我可能想在调试时在我的 C 代码中设置断点。我能做到吗?
-
是的,这就是“项目”>“属性”>“调试”选项卡的“启用本机代码调试”复选框的作用。请在 Google 上搜索教程,它将为您节省大量的反复试验。查询“c# pinvoke 教程”。
-
好的,非常感谢,汉斯。我会试一试并在这里更新。