PLC - 在 C# WPF 应用程序中使用 Snap7 的 PC 通信

PLC - PC communication using Snap7 in C# WPF app

拜托,我有一个关于 snap7.dll 库的问题。很长一段时间我都在 C# 中工作,所以也许我做错了什么。但是可以在 C# WPF 项目中将 snap7 用作库,还是仅针对 windows 表单开发?我知道这很愚蠢,但我问是因为我无法将 snap7.dll 添加到我的项目引用中。谢谢。

下载并试用了 http://snap7.sourceforge.net/ 中的示例 看起来控制台应用程序没有直接引用程序集。

这不是 WPF 与 Winforms 的对比。这是托管代码与非托管代码的区别。

有一个 snap7.net.cs .net 包装器 class 文件。 它引用 "snap7.dll" 并将其功能公开为 C# class。在运行时,它将使用 DllImport 加载程序集。

将 snap7.net.cs 文件和 snap7.dll 文件复制到您的项目中。 在您的代码中使用 snap7 class methods/attributes。然后更新 snap7.dll 以复制到输出目录,或使用 post 构建事件将 snap7.dll 复制到输出目录。

编辑:我想重申一下 不要直接使用项目 -> 引用 添加对 snap7.dll 的引用。包装器 class 文件的 DllImport 注释将在运行时加载它。