1、创建Windows服务项目

2、Server1改名为你想要的名称,比如WinServer

3、在项目中新建一个WCF文件夹,用于存放wcf服务文件。

注:在WcfServer类的上面还要添加 [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]

4、WCF服务文件建好后,系统会添加一个App.config的文件,打开此文件,我们进行相应的修改。

我们修改baseAddress地址: <add baseAddress="http://localhost:8733/Service/" />

5、在WCF服务文件中添加自己的业务类,我这里只演示了一个写日志的操作。

1)windows服务启动后,如果WCF服务DoWork接口被调用后,会触发我写的那个timer ,timer每隔5秒执行一次,并将timer实例传送到Business类中去。

2)Business里面是个写日志的操作,将时间写入txt文件中。当文件大于1024*1024*2时。timer结束执行。

6、将WCF服务写入Windows服务的入口处,同时注意将windows服务名称定义好。

7、WinService的设计页面中,右击“添加安装程序”

8、系统会添加ProjectInstaller.cs文件。

9、右击“serviceProcessInstaller1” --属性  Account 选择 “LocalSytem”

10、右击“serviceInstaller1” ---属性 Description 和属性DisplayName

注意ServiceName服务名称,与上面WinServer里面服务名称一致

11、重新生成项目,debug和release模式自己任选。

12、打开bin文件夹debug/release下面。

将C:\Windows\Microsoft.NET\Framework\v4.0.30319下面的InstallUtil.exe 复制过来

13、新建“安装服务.bat”,“卸载服务.bat” 批处理文件。

卸载服务内容

%~dp0InstallUtil.exe /uninstall %~dp0WindowsServiceForWCFDemo.exe
pause

安装服务内容

%~dp0InstallUtil.exe %~dp0WindowsServiceForWCFDemo.exe
pause

注意:%~dp0 是代表当前路径。

14、以管理员身份运行安装服务.bat进行安装服务。

注意:必须是管理员身份,不然会安装不成功的。

现在我们打开服务看下有没有,看到没,安装成功了。现在我们再来启动一下,就可以用了。

15、下面我们访问 一下WCF服务地址: http://localhost:19015/Service/

好了,可以访问了。

16、我们再搞个客户端,调用 一下那个接口,看看能否打印出日志文件。

Demo源码下载

链接:http://pan.baidu.com/s/1hr7vaio 密码:fww3

OK。打完收功~

创建寄宿在Windows服务中的WCF服务的更多相关文章

  1. WCF分布式4:客户端访问寄宿在IIS中的WCF服务

    部署过程比较简单,新建一个站点,指向服务的物理路径,设置一个端口.即可. 新建的站点对应一个应用程序池,设置应用程序池中的.NET版本为4.0 写一个测试客户端,访问IIS中的WCF服务,可能会出现, ...

  2. SharePoint 2013 中自定义WCF服务

    在使用SharePoint2013的时候,如果其他客户端 API 的组合不足,可以通过自定义 Web 服务扩展 SharePoint.默认情况下,SharePoint 2013 不仅支持创建自定义 A ...

  3. WCF技术剖析之五:利用ASP.NET兼容模式创建支持会话(Session)的WCF服务

    原文:WCF技术剖析之五:利用ASP.NET兼容模式创建支持会话(Session)的WCF服务 在<基于IIS的WCF服务寄宿(Hosting)实现揭秘>中,我们谈到在采用基于IIS(或者 ...

  4. iPhone中调用WCF服务

    本文介绍的是跨平台iPhone中调用WCF服务,WCF是由微软发展的一组数据通信的应用程序开发接口,它是.NET框架的一部分,由 .NET Framework 3.0+开始引入 iPhone中调用WC ...

  5. WCF系列教程之WCF服务宿主与WCF服务部署

    本文参考自http://www.cnblogs.com/wangweimutou/p/4377062.html,纯属读书笔记,加深记忆. 一.简介 任何一个程序的运行都需要依赖一个确定的进程中,WCF ...

  6. 服务端增加WCF服务全局异常处理机制

    服务端增加WCF服务全局异常处理机制,任一WCF服务或接口方式出现异常,将统一调用WCF_ExceptionHandler.ProvideFault方法,因此不需要每个方法使用try catch写法. ...

  7. 宿主在Windows Service中的WCF(创建,安装,调用) (host到exe,非IIS)

    1. 创建WCF服务 在vs2010中创建WCF服务应用程序,会自动生成一个接口和一个实现类:(IService1和Service1) IService1接口如下:   using System.Ru ...

  8. Azure开发者任务之七:在Azure托管服务中托管WCF服务角色

    在一个托管服务中托管一个WCF服务角色和托管一个ASP.Net Web Role基本类似. 在上一篇文章中,我们学习了如何使用WCF Service Web Role. 在本文中,我会对上一篇文章进行 ...

  9. 在 IIS 中承载 WCF 服务

    本主题概述了创建 Internet 信息服务 (IIS) 中承载的 Windows Communication Foundation (WCF) 服务所需的基本步骤. 本主题假设您熟悉 IIS 且了解 ...

随机推荐

  1. OOP之C#设计及其UML(反向工程)

    现在总结一下C#类关键字(virtual.abstract.override.new.sealed)的使用(以C#代码体现),并再次熟悉一下OOP思想,使用UML工具EA(Enterprise Arc ...

  2. 远程debug hadoop

  3. linux不知道文件在哪,想查找文件内的字符串

    find . -name "*.*" |xargs grep "xxx"

  4. 一个暂时无法理解的bug

    BUG bug的存在是不可避免的 一个静态变量,改成绝对地址之后可以生成静态页面.但是主页有一个用了静态变量的超链接就不能用, 最后我加了一个相对地址的静态变量,可以解决这个问题.

  5. html之间的传值

    传值:window.location.href=“eidit.html?activityId=“+acytivityIDd: 将id放进地址栏传到另一html页面 接受 再用var  str=wind ...

  6. Tiled Map地图编辑器键盘快捷键

    Tiled是款不错的地图编辑器,不过快捷键真是隐蔽啊,不看github上得wiki根本不知道,用的过程中查英文文档总是觉得慢,所以翻译成了中文. 通用 右键点击图块(tile):复制图块到图章刷(拖动 ...

  7. Ubuntu android 开发配置

    1. 安装 Java SDK 1.1下载  java-sun-1.7.1.tar.gz 到Downlowd 目录下 1.2 创建java目录 sudo makrdir  /usr/java 1.3解压 ...

  8. Android studio 分析内存泄漏

    以前用eclipse的时候,我们采用的是DDMS和MAT,不仅使用步骤复杂繁琐,而且要手动排查内存泄漏的位置,操作起来比较麻烦.后来随着Android studio的潮流,我也抛弃了eclipse加入 ...

  9. CM+CDH安装遇到的问题

    1.实在是在安装CDH的时候无法安装成功的话,只有重新启动了,下面给大家分享一个神器,按照这个脚本应该差不多就能卸载干净,然后重新安装,写一个脚本,内容如下,救命的神器呀: #!/bin/bash s ...

  10. 在Windows上编译最新的CURL,含有zlib,openssl

    最近,从网上下载了一个curl库,使用时各种报错,都无法启动,于是干脆就直接自己编译了. 1. 准备工作 a. 下载zlib zlib可以使得HTTP请求支持gzip压缩,其地址如下: 官网:http ...