0

我希望在 C# 中创建一个示例程序,它通过 USB 端口下载实时数据(即数据记录器)。C# 接受数据(十六进制或数字),然后自动下载一个 Python 文件(即 validatemethodA.ps),然后执行该文件。python接受来自C#代码的数据,然后对数据进行验证检查或进行复杂的计算并将结果返回给C#,其中数据显示在窗口窗体上并附加到文件中(通过C#)。

Python 是一个脚本,它不需要预先编译(在 c# 运行时),这意味着用户可以自由修改 python 脚本以优化 pass/fails 参数或计算结果,而无需返回 VS2010 编译整个程序。

这意味着我可以提供发布 C# 产品,并且只有用户可以修改 python 文件。

这是如何实现的?,是否有示例/演示,任何人都可以将我链接到这个解决方案,以便我可以试验这个概念证明吗?

4

2 回答 2

0

你看过IronPython吗?

Stack Overflow 上有大量信息,包括一些特别相关的问题,例如IronPython - 从 C# 4.0 应用程序中的字符串加载脚本

还有更多网络上。

于 2012-05-09T05:30:33.587 回答
0

有几种方法可以做到这一点……一种是通过从 C# 程序调用系统调用来“脱壳”到 Python。在那里,您将希望使用 .NET 运行时 Process.Start 方法将 Python 解释器作为 C# 程序的子进程运行。

另一种选择是使用IronPython 解释器在 C# 和 Python 之间进行更紧密的集成。IronPython (ipy),是在.NET 中实现的python 解释器,ipy 可以运行Python 代码(与普通的“c”python 基本相同,但有一些不同),但也可以导入.NET 程序集并与.NET 运行时交互,直接地。

于 2012-05-09T05:29:38.083 回答