【问题标题】:Can I call a running Windows Service function?我可以调用正在运行的 Windows 服务函数吗?
【发布时间】:2011-07-14 10:08:03
【问题描述】:

我可以调用具有特定返回类型的 Windows 服务函数吗?

我需要返回类型是一个对象,所以如果我更改其中的任何内容,其他程序就会发现它。我的意思是两个程序都对同一个对象使用相同的引用!可能吗 ?

【问题讨论】:

    标签: .net .net-3.5 windows-services


    【解决方案1】:

    我假设您想从另一个程序调用 Windows 服务(程序)中的函数,并让被调用函数将结果返回给调用程序?

    这是IPC(进程间通信)的典型案例。您可以通过多种选择来实现:远程处理、侦听 TCP 套接字、命名管道、MSMQ 等,或者支持上述所有功能的 WCF。

    【讨论】:

    • 我需要返回类型是一个对象,所以如果我更改其中的任何内容,其他程序就会发现它。我的意思是两个程序都对同一个对象使用相同的引用!有可能吗?
    • 您需要定义这是什么“对象”。内存中的对象?在这种情况下,使用共享内存(或基于交换文件的内存映射文件,同样的事情)。数据库中的对象?那么你的解决方案很简单,你不会问这个问题,所以我猜不是。如果你不想使用共享内存,你应该在一个程序中“托管”你的对象,然后打开一个 IPC 通道到它(WCF 应该可以正常工作)让另一个程序轮询。
    【解决方案2】:
    猜你喜欢
    • 2023-03-17
    • 2018-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-20
    相关资源
    最近更新 更多