从DLL运行后台异步进程

问题描述:

我有一个我想作为后台进程运行的DLL。因此,在C#应用程序中,我首先想要在所选DLL中运行此过程,然后让我的应用程序继续运行在后台运行的DLL进程。从DLL运行后台异步进程

我见过一些文章和网站,但不知道哪一条是最佳路径。

任何人有任何想法?

欢呼声

DLL不是进程,不能运行本身。不过,您可以设计一个Windows服务并在您的DLL调用中包装服务代码,以使该功能可作为持续运行的后台进程提供。

http://msdn.microsoft.com/en-us/library/d56de412(v=vs.80).aspx

+0

是的,这就是我的意思,对不起,在这一天迟到:Sd – Funky 2011-02-16 15:59:33

假设你事先选择.DLL(静态绑定):

添加.dll文件作为参考到您的项目。然后调用MyDll.Core.Start();,其中MyDll是您的.dll的默认名称空间,Core是一个.cs类,而Start()是您定义的函数,ThreadPool.QueueUserWorkItem(new WaitCallback(DoWork), null);和DoWork会执行您的实际后台工作。

假设你想要的最终用户从应用程序中选择该.dll(后期绑定):

http://www.c-sharpcorner.com/UploadFile/samhaidar/LateBindingWithReflection09122005053810AM/LateBindingWithReflection.aspx并在改变。例如GetUserNameStart,以配合我上面的例子。