0

我正在计划一个项目,该项目将成为我公司专有服务器技术的管理系统。该系统将由三个主要组件组成:在我们要控制的服务器上运行的服务、从服务发送命令/获取数据的中央管理服务器以及连接到中央管理服务器的客户端应用程序。这些组件将用 C# 编写,并通过 WCF 进行通信。

我面临的挑战是为服务器上运行的服务启用插件支持。我发现的大多数教程/示例都有 10 年的历史,没有一个涉及 WCF 的含义。

这是我需要的功能示例:

我公司的另一位开发人员(无权访问系统源)希望能够使用管理系统的客户端应用程序在其中一个服务器上获取 C:\ 驱动器的磁盘空间。他将创建一个 dll 复制到服务器,并添加到服务的配置文件中。他现在应该能够获得该服务器的磁盘空间,而无需对系统进行进一步更改。

一个不错的选择,虽然我不确定这是否可能,但是支持用 C#、C++ 或 Delphi 编写的插件。

我正在寻找一个起点、一些教程/示例以及系统(和 WCF 服务合同)应如何处理插件的一般概念。

谢谢,尼克

4

1 回答 1

0

WCF 对插件的效果没有真正的影响,您只需在您app.configweb.config托管应用程序的文件中添加新 WCF 端点的配置信息,您就完成了。

您应该能够使用任何有关在 C# 中编写插件的教程,并且应该没问题。本教程很好地涵盖了它,我要做的唯一更改是不要扫描文件夹中的 dll,而是在配置文件中有一个明确列出要加载的每个插件的列表。

此外,您可能希望在单独AppDomain的 s 中加载插件,因此如果一个插件出现故障,它不一定会导致整个程序瘫痪。

为了在 C++ 或 Delphi 中加载非托管插件,您可能需要开发人员编写一个小型托管包装器,该包装器将负责调用非托管代码并自行清理。

于 2013-08-15T16:32:59.747 回答