如何从VBScript调用Windows服务的方法?
|
假设我创建了一个公开Windows服务的方法“ 0”
是否可以通过某种方式直接从VBScript调用ѭ1(即无需启动其他进程)?
用例是这样的:我正在尝试为hMailServer(hMS)编写一个“扩展”应用程序,但是hMS仅在事件发生时才能调用VBscript脚本。每当事件发生时,我都可以让VBscript启动一个.exe,但是处理过程涉及打开和关闭与后端数据库的连接。因此,每次调用都非常昂贵。我一直在想,可以通过使用服务来维护连接来减少费用(即打开一次,如果连接关闭则重新打开)。另外,通过将处理实现为后台工作线程将导致无阻塞处理+更少的进程启动开销。
更新:我是怎么做到的
ew。经过大量的搜索和试验,我想我找到了一种方法。我将其发布为下面的答案。如果有人能提供比我更好的答案,请随时发表。如果确实更好,我将取消标记我的答案并标记您的答案。
次要更新/错误:
我忘了告诉您Windows服务是使用VB.Net 2010创建的。对不起。
最后更新:我放弃
在互联网上搜索了所有内容并尝试了无尽的尝试后,我放弃了。
我决定不公开该方法,而是改用命名管道。现在,VBScript脚本只需要写一个向ѭ2打开的FSO,然后让服务确定VBScript想要什么。
无论如何,谢谢您的帮助,朋友们。
没有找到相关结果
已邀请:
4 个回复
泻伴墓荒
蔬谢窗港
茬贺努充尽
属性标记要公开的类 选中项目“属性”>“应用程序”>“程序集信息”中的“使程序集COM可见”复选框。 使服务安装程序类 发布 使用
进行部署。例如。:
使用
发布COM接口。例如。:
做完了! 现在,我可以使用COM接口调用服务,例如:
ew!这么多的篮球穿过:-/ 更新失败 经过一些测试...我发现CreateObject-ed实例与当前正在运行的服务信息不同。 我会做更多的实验。
屉杆绊