将其作为服务实现还是集成到应用程序中更好?

时间:2012-01-26 15:41:42

标签: c# vb.net

我将创建一个应用程序,它将监视一个文件夹,该文件夹可能是一个网络文件夹,当在该文件夹中添加新文件时,它将通知应用程序。通知应用程序将这些文件名称导入列表框,并为用户提供将这些文件组织(移动)到不同目录的选项。

这里有两件主要的事情, 1.我必须实现一个逻辑来监视文件夹中的新文件。 2.我必须将其移动到新目录中,在某些情况下,我必须按用户指定创建这些新目录。

对于第一步,我很困惑要么使用FileSystemWatcher类将其实现为Windows服务,可以在此处看到示例。 http://www.codeproject.com/Articles/32591/Creating-a-Windows-Service-for-Watching-System-Dir

或根据计时器进行文件检查,让我们说每5分钟一次。

如果我将其作为服务,服务如何通知应用程序?

1 个答案:

答案 0 :(得分:2)

我会将其集成到应用程序中 - 您可能会遇到问题(以权限方式)从Windows服务中查看网络文件夹。

一些参考和示例代码:

为了避免一些陷阱(观看网络文件夹上的文件有时可能不可靠),例如每隔10分钟轮询该文件夹......

如果您真的想将其作为Windows服务使用,您可以使用任何形式的IPC来通知应用程序 - TCP或UDP或“共享内存”或管道或其他......