我正在尝试在.net Core Runtime上运行.net Core应用程序,但是在Windows服务中。
我没有尝试在完整的.net框架上运行该库(它现在无论如何都不起作用,因为它的ASP.net Core 2.0 Preview 1),而我的下一个最好的尝试是使用System.Diagnostics.Process。
我真的只想找到一种方法将控制台应用程序包装在Windows服务的启动/停止方法和身份验证方案中,但因为该控制台应用程序碰巧是.net Core,我想知道我是否可以只托管运行时本身(例如,一些P / Invoking)。我知道C ++应用程序可以承载整个运行时,但我还没有看到.net Core是否存在这样的机制。
有人试过吗?如果一个纯粹的C#方法不起作用,也许有些C ++ / CLI魔术?
答案 0 :(得分:3)
托管运行时是一项相当大的工作,因为您需要处理本机和托管库的解析逻辑。
你可以这样做:
Process.Start(..)
启动.net核心应用作为子流程 - 例如使用dll作为参数运行dotnet.exe
进程。