Go to my github

.NET Remoting开发系列:(三) Remoting服务发布方式

Remoting服务发布方式?

  1. 使用应用程序发布 这个在第一篇就已经讲了。
  2. 通过Windows服务发布
  3. 通过IIS发布 

 通过Windows服务发布Remoting

首先我们要建立一个WindowsService程序,主要代码如下:

复制代码
using System;
using System.Diagnostics;
using System.ServiceProcess;
using System.Runtime.Remoting;
using General;
namespace WindowsService2
{
    
public class RemotingService : System.ServiceProcess.ServiceBase
    {

        
public static String SVC_NAME = ".NET Remoting Sample Service";
        
public RemotingService()
        {
            
this.ServiceName = SVC_NAME;
        }
        
static void Main()
        {

            
//启动服务
            ServiceBase.Run(new RemotingService());
        }
        
protected override void OnStart(string[] args)
        {

            
//加载配置文件
            RemotingConfiguration.Configure("
server.exe.config");
            
//给服务器类赋值
            HelloServer.Str = "meinv";
        }
        
protected override void OnStop()
        {
            //
Remoting Service stopped
        }
    }

}  

复制代码

 安装服务:

@echo off
echo 正在安装.NET Remoting Sample Service服务,请稍等...... 
installutil WindowsService2.exe
net start .NET Remoting Sample Service
echo. 
& pause 
卸载服务:

 

@echo off
net stop .NET Remoting Sample Service
installutil 
/u WindowsService2.exe
echo. 
& pause 

 

 

Installutil.exe的位置和路径 

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe  

 通过IIS发布

 在 Web项目里的WEB.CONFIG里添加配置信息,并把远程对象拷贝到Bin 下 ,比如远程对象是JobServerLib.dll,那配置如下

复制代码
<configuration>
  
<system.runtime.remoting>
    
<application>
      
<service>
         
<wellknown mode="Singleton" type="JobServerLib.JobServerImpl,JobServerLib" objectUri="JobServer.soap" />
     
</service>
    
</application>
  
</system.runtime.remoting>

</configuration>

复制代码


 

 

posted @   峡谷少爷  阅读(850)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示