Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用.NET编写的Windows服务,可从VB6访问_C#_.net_Vb6_Windows Services - Fatal编程技术网

C# 用.NET编写的Windows服务,可从VB6访问

C# 用.NET编写的Windows服务,可从VB6访问,c#,.net,vb6,windows-services,C#,.net,Vb6,Windows Services,我必须在.NET/C中开发一个Windows服务。必须可以从VB6应用程序访问该服务 我的第一个想法是在Windows服务中托管WCF服务,但VB6应用程序需要一个包装器,该服务才能使用它。这不是一个选择 现在我正在考虑使用套接字,但这是最好的方法吗?如果不是,最好的设计是什么 我想知道我的选择是什么,这些选择的利弊是什么 如果您有任何建议,我们将不胜感激 在COM+中托管WCF服务后,可以从COM+应用程序生成类型库,然后在VB6代码中引用该类型库 请注意,您必须将.NET运行时安装在承载WC

我必须在.NET/C中开发一个Windows服务。必须可以从VB6应用程序访问该服务

我的第一个想法是在Windows服务中托管WCF服务,但VB6应用程序需要一个包装器,该服务才能使用它。这不是一个选择

现在我正在考虑使用套接字,但这是最好的方法吗?如果不是,最好的设计是什么

我想知道我的选择是什么,这些选择的利弊是什么

如果您有任何建议,我们将不胜感激

在COM+中托管WCF服务后,可以从COM+应用程序生成类型库,然后在VB6代码中引用该类型库


请注意,您必须将.NET运行时安装在承载WCF服务的计算机上(但如果使用分布式调用,则不能安装在安装COM+代理的计算机上)。

WCF服务仍然是一个选项,但您必须确保WCF配置的绑定是可互操作的(例如,选择此处所示的:)


在VB6端,您可以调用现有的SOAP端点,如此处所述,例如:

Yes,sockets,将是您的有限选项之一,因为您无法使用最佳解决方案。为什么不可以选择编写VB6应用程序引用并处理与.NET服务通信的COM可访问.NET程序集?我使用过这种方法,效果非常好。在VB6应用程序中,他们已经在使用服务,并且使用WinSocket调用它们。他们希望保持统一的方式来调用他们使用的服务。这是一个非常好的选择!但是,VB6团队要求使用Winsocket…@DirkV,而不是使用COM+,那么你问的问题只有一个答案,并且是本地化的?为什么VB6团队需要Winsocket?这不是问题的要求,你完全正确!在我提出你的解决方案后,他们给了我要求。。。但我仍然感谢你的贡献;-)@糟透了。他们的要求也没有意义,因为现在他们几乎所有的通信都需要手工编写代码,从开发人员的角度来看,这是非常低效的。