【问题标题】:Can we start a windows service off a dll instead of an exe?我们可以从 dll 而不是 exe 启动 Windows 服务吗?
【发布时间】:2012-08-20 11:21:50
【问题描述】:

只是想知道,是否可以从 .net 3.5 dll 而不是 exe 启动 Windows 服务?

是否有任何解决方法可以帮助您做到这一点?

在这种情况下如何指定入口点?

谢谢,

公斤

【问题讨论】:

  • 我认为您的问题 “在这种情况下如何指定入口点?” 在这里总结得差不多了 :)
  • :)..我听说 svchost.exe 可以帮助你做到这一点,但我不确定它在生产环境中的使用有多可靠。
  • 也许Windows服务专家会提供这个问题的答案,我自己很好奇。我一直使用 EXE。
  • 嗯..仅仅阅读 svchost 上的托管服务是一件很难弄清楚的事情。

标签: .net windows-services window


【解决方案1】:

没有“官方方式”将 .net dll 作为 Windows 服务运行。它需要 svchost.exe 加载 DLL 并绑定到启动/停止导出。但是,MS 没有提供有关此类主题的文档。

msdn documentation 中使用的术语是“服务应用程序”或“服务可执行文件”,因此也没有“dll 方式”。

编辑:

刚刚发现这种将 dll 作为服务运行的尝试(痛苦!):http://forum.sysinternals.com/topic11974.html

【讨论】:

  • 感谢您的回复。由于防病毒软件阻止了它,我在将服务 exe 下载到主机时遇到了一些问题。它看起来像一个死胡同,因为它阻止任何 exe 下载并且 dll 似乎可以通过。
  • 我明白了,如果您可以控制下载过程,也许您可​​以通过 http 加密字符串流下载 exe 以绕过 AV(尽管 AV 仍然可以阻止安装)。一个 msi 设置也可以是一个选项......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-01
  • 2015-11-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多