1       大概思路

  • 设计服务程序
  • 创建服务
  • 安装必备组件
  • 编写Service1
  • 运行效果

2       设计服务程序

创建服务程序,通过添加System.Timers时钟进行定时向Wecome.txt写入文本。

3       创建服务

创建项目、安装项目

(通过工具箱添加System.Timers组件,系统时钟组件,不同于System.Windows.Forms)

4       安装必备组件

5       编写Service1

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text; using System.IO; namespace WindowsServiceDemo
{
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
}
/// <summary>
/// 标识开始
/// </summary>
private string flag = string.Empty;
/// <summary>
/// 允许时钟开始
/// </summary>
private bool isBegin = true; protected override void OnStart(string[] args)
{
flag = "开始时间:";
this.timer1.Enabled = true; } protected override void OnStop()
{
} /// <summary>
/// 9000毫秒调度一次,即9秒高度一次
/// create by zhyongfeng in 2014-03-26
/// </summary>
/// <param name="sender">object</param>
/// <param name="e"> System.Timers.ElapsedEventArgs</param>
private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
//开始
if (!isBegin)
return;
isBegin = false;
try
{
FileStream nFile = new FileStream(System.AppDomain.CurrentDomain.BaseDirectory + "Wecome.txt", FileMode.Append, FileAccess.Write);
StreamWriter writer = new StreamWriter(nFile);
writer.WriteLine(flag + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
writer.WriteLine("Welcome to Write:" + DateTime.Now.ToFileTimeUtc().ToString());
writer.WriteLine();
writer.Close();
LogUtility.Logging(Process.GetCurrentProcess().MainModule.ModuleName, Process.GetCurrentProcess().MachineName, Process.GetCurrentProcess().MainModule.ModuleName, LogUtility.EVENT.EVENT_WARNING, "新增了");
}
catch
{
}
isBegin = true;
}
}
}

6       运行效果

开始->运行->services.msc,可见如下图

开始->运行->eventvwr.msc,可见如下图

7       总结

Windows服务可通过修改以下属性,通过System.Timers组件达到自动控制的功能,针对一些运行周期长的数据可通过Windows服务处理(如通过捕捉大量数据收发邮件等)。

serviceInstaller1属性值说明

Manual:服务安装后,必须手动启动。

Automatic :每次计算机重新启动时,服务都会自动启动。

Disabled:  服务无法启动。

源代码下载:

http://files.cnblogs.com/yongfeng/WindowsServiceDemo.rar

PDF下载:

Windows服务程序时钟调用.pdf

Windows服务创建文档.pdf

Windows服务程序时钟调用的更多相关文章

  1. WCF学习之旅—WCF服务的Windows 服务程序寄宿(十一)

    上接    WCF学习之旅—WCF服务部署到IIS7.5(九) WCF学习之旅—WCF服务部署到应用程序(十) 七 WCF服务的Windows 服务程序寄宿 这种方式的服务寄宿,和IIS一样有一个一样 ...

  2. .net Windows服务程序和安装程序制作图解 及 VS 2010创建、安装、调试 windows服务(windows service)

    .net Windows服务程序和安装程序制作 最近项目中用到window服务程序,以前没接触过,比较陌生,花了两天的时间学习了下,写了个简单的服务,但在制作安装程序的时候,参照网上很多资料,却都制作 ...

  3. C# 编写Windows Service(windows服务程序)【转载】

    [转]http://www.cnblogs.com/bluestorm/p/3510398.html Windows Service简介: 一个Windows服务程序是在Windows操作系统下能完成 ...

  4. 如何在Windows服务程序中添加U盘插拔的消息

    研究了下这个问题,主要要在一般的windows服务程序中修改两个地方: 一.调用RegisterServiceCtrlHandlerEx VOID WINAPI SvcMain( DWORD dwAr ...

  5. C# 编写Windows Service(windows服务程序)

    C# 编写Windows Service(windows服务程序)   Windows Service简介: 一个Windows服务程序是在Windows操作系统下能完成特定功能的可执行的应用程序.W ...

  6. 用Visual C#创建Windows服务程序

    一.Windows服务介绍: Windows服务以前被称作NT服务,是一些运行在Windows NT.Windows 2000和Windows XP等操作系统下用户环境以外的程序.在以前,编写Wind ...

  7. .NET 跨平台RPC框架DotNettyRPC Web后台快速开发框架(.NET Core) EasyWcf------无需配置,无需引用,动态绑定,轻松使用 C# .NET 0配置使用Wcf(半成品) C# .NET Socket 简单实用框架 C# .NET 0命令行安装Windows服务程序

    .NET 跨平台RPC框架DotNettyRPC   DotNettyRPC 1.简介 DotNettyRPC是一个基于DotNetty的跨平台RPC框架,支持.NET45以及.NET Standar ...

  8. Windows 服务程序(一)

    Windows 服务程序简介: Windows服务应用程序是一种需要长期运行的应用程序,它对于服务器环境特别适合. 它没有用户界面,并且也不会产生任何可视输出.任何用户消息都会被写进Windows事件 ...

  9. 编写windows服务程序

    2012-11-02 08:54 (分类:计算机程序) windows服务是一个运行在后台并实现勿需用户交互的任务的控制台程序,对于隐藏程序有很大帮助. 用了几天时间概括了编写windows服务程序的 ...

随机推荐

  1. POJ3469Dual Core CPU

    题意:给你n个模块,每个模块在A核花费为ai,在B核跑花费为bi,然后由m个任务(ai,bi,wi),表示如果ai,bi不在同一个核上跑,额外的花费为wi,求最小的花费. 分析: 用最小的费用将对象划 ...

  2. day35 数据库的初步认识

    一.    数据库的由来分类 1.   数据库的概念 百度定义: 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增.截取.更新.删除等操作. 所谓“数据库”系 ...

  3. jgroups-raft

    要求 Java 8 支持 实现服务器的动态添加和删除 文档的编写 基于复制计数器的共识算法实现 https://github.com/belaban/jgroups-raft

  4. 导入json文件报错,TypeError expected string or buffer

    导入json文件报错,TypeError expected string or buffer 原因:用字符串赋值后,python会把双引号转换为单引号 import json data = [{&qu ...

  5. idea各种快捷键

    工作的的时候,如果不知道idea一些方便的快捷键会大大影响工作效率,今天打算看看这些小技巧: https://blog.csdn.net/linsongbin1/article/details/802 ...

  6. SQL SEVER 数据库日志(Log)文件增长过快的处理

    SQL SERVER 2016数据库,50GB+的数据.有大量的增删和插入操作,数据库log文件变得异常的大,而且增长速度特别的快.周五log文件20GB,周一上班就成了200+GB了 因为数据库恢复 ...

  7. vue中methods函数调用methods函数写法

    export default { data() { return { hello:"你好" } }, methods:{ open(that) { that.hello = &qu ...

  8. WCF rest 的帮助页面和缓存机制

    打开vs2010 在工具选项中选择扩展管理器——联机库 安装WCF REST Service Template 40(CS)模板 安装后新建wcf服务应用程序,删除默认建立的文件. 新建RestWcf ...

  9. public class 与 class 的区别

    public class 与 class 的区别 1.一个类前面的public是可有可无的 2.如果一个类使用 public 修饰,则文件名必须与类名一致 3.如果一个类前面没有使用public修饰, ...

  10. python 使用csv.reader和csv.writer读写文件并转换成dataframe格式

    import csv import pandas as pd ###csv.reader用法 ''' f=open(r"C:\Users\admin\pycdtest\wanyue\yuee ...