windows服务程序编写

来源:360问答 责任编辑:张俊
默认
特大
宋体
黑体
雅黑
楷体


windows服务程序编写(图2)


windows服务程序编写(图5)


windows服务程序编写(图7)


windows服务程序编写(图10)


windows服务程序编写(图12)


windows服务程序编写(图14)

  为了解决用户可能碰到关于"windows服务程序编写"相关的问题,大发红黑大战经过收集整理为用户提供相关的解决办法,请注意,解决办法仅供参考,不代表本网同意其意见,如有任何问题请与本网联系。"windows服务程序编写"相关的详细问题如下:

如果我想写一个win服务程序,而这个程序仅仅作为一个启动器,用于启动其他程序,那么该如何编写。


===========大发红黑大战收集的解决方案如下===========

解决方案1:

可以按照如下方式进行操作:

1、首先按组合键win+r打开运行窗口,输入mmc.exe调出控制台,如图所示:

 

2、随后在控制台窗口中点击文件,选择打开,如图所示:

 

3、在打开窗口中,依次点击磁盘c→windows→system32,然后输入文件名gpedit.msc,并执行打开操作,如图所示:

 

4、此时调出本地组策略编辑器,点击用户配置中的管理模板,管理模板右侧找到系统选项,并将其打开,如图所示:

 

5、鼠标双击登录选项,将其打开,如图所示:

 

6、随后双击选择在用户登录时运行这些程序,如图所示:

 

7、点击已启用,选择显示,在弹出的窗口中,将需要开机启动的程序或者文件按路径依次输入,最后确定保存即可,如图所示:

 

拓展资料

1、当Windows(操作系统)完成登录过程,进程表中出现了很多的进程!Windows在启动的时候,自动加载了很多程序。

2、许多程序的自启动,给我们带来了很多方便,这是不争的事实,但不是每个自启动的程序对我们都有用;更甚者,也许有病毒或木马在自启动行列。

3、其实Windows2000/XP中的自启动文件,除了从以前系统中遗留下来的Autoexec.bat文件中加载外,按照两个文件夹和9个核心注册表子键来自动加载程序的。

 

解决方案2:

编写一个windows服务程序是一相相当复杂的过程(楼上各位没有一个与编写服务程序有关)

有关服务程序的编写你可以参考https://blog.csdn.net/u013472838/article/details/44850685

而你的关键是只要启动一些程序,也就是第六步的

void WINAPI ServiceMain()

中。

你可以用WinExec,system,CreateProcess,exec等函数来直接运行你需要的程序

建议用WinExec

   WinExec("calc.exe",SW_SHOW);

这样,你服务一启动,就运行一个计算器程序

当然,编写此类程序要有相当的基础的,若是初学,当然建议先学习下基础的内容


解决方案3:

Windows Service简介:

一个Windows服务程序是在Windows操作系统下能完成特定功能的可执行的应用程序。Windows服务程序虽然是可执行的,但是它不像一般的可执行文件通过双击就能开始运行了,它必须有特定的启动方式。这些启动方式包括了自动启动和手动启动两种。对于自动启动的Windows服务程序,它们在Windows启动或是重启之后用户登录之前就开始执行了。只要你将相应的Windows服务程序注册到服务控制管理器(Service Control Manager)中,并将其启动类别设为自动启动就行了。而对于手动启动的Windows服务程序,你可以通过命令行工具的NET START 命令来启动它,或是通过控制面板中管理工具下的服务一项来启动相应的Windows服务程序。

同样,一个Windows服务程序也不能像一般的应用程序那样被终止。因为Windows服务程序一般是没有用户界面的,所以你也要通过命令行工具或是下面图中的工具来停止它,或是在系统关闭时使得Windows服务程序自动停止。因为Windows服务程序没有用户界面,所以基于用户界面的API函数对其是没有多大的意义。为了能使一个Windows服务程序能够正常并有效的在系统环境下工作,程序员必须实现一系列的方法来完成其服务功能。Windows服务程序的应用范围很广,典型的Windows服务程序包含了硬件控制、应用程序监视、系统级应用、诊断、报告、Web和文件系统服务等功能。

和Windows服务程序相关的命名空间涉及到以下两个:System.ServiceProcess 和System.Diagnostics。

用C#创建Windows服务的步骤:

1.创建Windows Service项目

从Visual C# 工程中选取 Windows 服务(Windows Service)选项,给工程一个新文件名,然后点击 确定。

2.向服务中函数功能实现

OnStart函数在启动服务时执行,OnStop函数在停止服务时执行。在这里,当启动和停止服务时,向一个文本文件中写入一些文字信息,代码如下:

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Diagnostics;using System.IO;using System.Linq;using System.ServiceProcess;using System.Text;using System.Threading.Tasks;namespace MyService{    publicpartialclass Service1 : ServiceBase    {        public Service1()        {            InitializeComponent();        }        protectedoverridevoid OnStart(string[] args)        {            FileStream fs = new FileStream(@"d:\xx.txt", FileMode.OpenOrCreate, FileAccess.Write);            StreamWriter sw = new StreamWriter(fs);            sw.BaseStream.Seek(0, SeekOrigin.End);            sw.WriteLine("WindowsService: Service Started" + DateTime.Now.ToString() + "\n");            sw.Flush();            sw.Close();            fs.Close();        }        //protected override void OnContinue()        //{        //    base.OnContinue();        //}        //protected override void OnPause()        //{        //    base.OnPause(); // father class method inherit        //}        //protected override void OnShutdown()        //{        //    base.OnShutdown();        //}protectedoverridevoid OnStop()        {            FileStream fs = new FileStream(@"d:\xx.txt", FileMode.OpenOrCreate, FileAccess.Write);            StreamWriter sw = new StreamWriter(fs);            sw.BaseStream.Seek(0, SeekOrigin.End);            sw.WriteLine("WindowsService: Service Stopped" + DateTime.Now.ToString() + "\n");            sw.Flush();            sw.Close();            fs.Close();        }    }}

4.回到设计窗口点右键选择-添加安装程序 -生成serviceInstaller1和 serviceProcessInstaller1两个组件
把serviceInstaller1的属性ServiceName改写为你的服务程序名,并把启动模 式设置为AUTOMATIC  
把serviceProcessInstaller1的属性account改写为 LocalSystem  


5.编译链接生成服务程序

通过从生成菜单中选择生成来生成项目。

6.安装服务

用.net framework工具INSTALLUTIL安装服务程序即可。

用项目的输出作为参数,从命令行运行 InstallUtil.exe。在命令行中输入下列代码:
installutil yourproject.exe

Hint: a windows service must first be installed using installutil.exe and then started with the serviceExplorer, windows Services Administrative tool or the NET START command.

7.卸载服务

用项目的输出作为参数,从命令行运行 InstallUtil.exe。

installutil /u yourproject.exe

如上服务程序运行结果截图:

补充:

1.Service启动属性:

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

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

       Disabled     服务无法启动。

2.新建的Service项目,其中各属性的含义(设计视图->右键属性):

  Autolog 是否自动写入系统的日志文件

  CanHandlePowerEvent 服务时候接受电源事件

  CanPauseAndContinue 服务是否接受暂停或继续运行的请求

  CanShutdown 服务是否在运行它的计算机关闭时收到通知,以便能够调用 OnShutDown 过程

  CanStop 服务是否接受停止运行的请求

  ServiceName 服务名

3. 也可以在系统服务管理器中,设置相应Service的属性或启动方式等

计算机管理 -> 服务和应用程序  -> 服务  -> ...


解决方案4:

如果对编程不懂,还是不要进行这样的操作,这样会使电脑系统受到影响。

解决方案5:

程序开机自启动方式:

1 到C:\Users\xxx\AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup下放程序(只能在用户登录的情况下)

2 gpedit.msc 本地组策略,添加开机脚本(加载有问题有些程序不加载)

3注册表HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run下加一项,名称如Lync,值如"C:\Program Files\Microsoft Office\Office15\lync.exe"/fromrunkey

在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run下

加一项(用户登录)

等等注册表方式


服务程序有c++或c#版本的,网上有现成操作步骤或源代码,都是网上搜的。

解决方案6:

可以按照如下方式进行操作:1、首先按组合键win+r打开运行窗口,输入mmc.exe调出控制台,如图所示:2、随后在控制台窗口中点击文件,选择打开,如图所示:3、在打开窗口中,依次点击磁盘c→windows→system32,然后输入文件名gpedit.msc,并执行打开操作,如图所示:4、此时调出本地组策略编辑器,点击用户配置中的管理模板,管理模板右侧找到系统选项,并将其打开,如图所示:5、鼠标双击登录选项,将其打开,如图所示:6、随后双击选择在用户登录时运行这些程序,如图所示:7、点击已启用,选择显示,在弹出的窗口中,将需要开机启动的程序或者文件按路径依次输入,最后确定保存即可,如图所示:拓展资料1、当Windows(操作系统)完成登录过程,进程表中出现了很多的进程!Windows在启动的时候,自动加载了很多程序。2、许多程序的自启动,给我们带来了很多方便,这是不争的事实,但不是每个自启动的程序对我们都有用;更甚者,也许有病毒或木马在自启动行列。3、其实Windows2000/XP中的自启动文件,除了从以前系统中遗留下来的Autoexec.bat文件中加载外,按照两个文件夹和9个核心注册表子键来自动加载程序的。 8   5 评论(1) 分享 举报

supboy306
来自电脑网络类认证团队 2018-12-05让一个程序在windows启动时自启动,可以将这个程序的启动程序做成快捷方式,放到windows的启动文件夹中。1、首先找到你的windows启动文件夹,我们随便打开任一文件夹,直接在文件夹地址栏输入下列:%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup,回车后就会直接链接到启动文件夹目录下。2、准备需要添加的开机启动项软件对应的快捷方式,比如QQ或者微信快捷方式,找到后右键选择“复制”或者“剪切”。3、复制或者剪切后,回到刚才启动文件夹目录下,空白地方右键选择“粘贴”。4、在你粘贴快捷方式的时候,由于不同系统安全性设置方面的原因,会弹出访问被拒绝的窗口,我们可以点击“继续”即可。5、粘贴成功以后,在windows的启动文件夹目录下,就有了我们想要开机自启动的软件快捷方式,只要是在此目录下的程序,系统在开机后就会自动运行。


解决方案7:

用个脚本写一下就好了哈

如何编写windows服务程序

答:在本文中我希望能给初学者一些帮助,大致讲一下编写windows服务程序需要的知识。 首先Microsoft Windows 服务(即,以前的NT 服务)使您能够创建在它们自己的Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,...

用C写的windows服务程序 怎么响应WM

答:第一步:主函数和全局定义 首先,包含所需的头文件。例子要调用 Win32 函数(windows.h)和磁盘文件写入(stdio.h): #include #include 接着,定义两个常量: #define SLEEP_TIME 5000 #define LOGFILE "C:\\MyServices\\memstatus.txt" SLEEP...

如何用C++编写Windows服务

答:环境: vs2010,多字符集 以下是一些基本知识, 不得不耐下心去理解,这对程序理解和编写非常用帮助. 首先Microsoft Windows 服务(即,以前的 NT 服务)使您能够创建在它们自己的Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机...

如何编写windows服务程序

答:首先Microsoft Windows 服务(即,以前的 NT 服务)使您能够创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。这使服务非常适合在服务器上使 用...

如何用ATL编写Windows服务

答:有时候需要自己写的程序在没有用户登陆的情况下,只要Windows系统启动就运行,那可以把程序写成一个Windows服务。服务是能够为各种用户(包括本地用户和远程用户)所用的,拥有用户授权级进行管理的能力,并且不论用户是否物理的与正在运行该应...

windows服务程序框架怎么处理

答:Windows提供了一套后台服务程序编程接口,用户在编写后台服务程序时需要遵循一定的编程框架,否则服务程序不能正常运行。服务程序通常编写成控制台类型的应用程序,总的来说,一个遵守服务控制管理程序接口要求的程序 包含下面三个函数: 1)服...

C# 自己写了一个windows服务程序,运行时错误: 错...

答:你可能需要在onStart()方法里另起一个线程,在这个线程里可以while(true). protected override void OnStart(string[] args) { // TODO: Add code here to start your service. if (threadforwork == null) { threadforwork = new Thread(workFu...

C# .NET高手来,怎么用程序启动windows服务?

答:ServiceController[] service=ServiceController.GetServices(); bool isStart = false; for (int i = 0; i < service.Length; i++) { if (service[i].DisplayName.ToUpper().Equals("IIS Admin".ToUpper())) { if (service[i].Status == Servic...

如何用ATL编写Windows服务

答:有时候需要自己写的程序在没有用户登陆的情况下,只要Windows系统启动就运行,那可以把程序写成一个Windows服务。 服务是能够为各种用户(包括本地用户和远程用户)所用的,拥有用户授权级进行管理的能力,并且不论用户是否物理的与正在运行该应...

如何打包 c#windows服务程序

答:归纳了几点。有不足之处,请赐教。 一、创建服务程序 1. 菜单栏“文件”--->“新建”--->“项目”,在项目类型中选择“windows”,模板中--->“windows 服务”。项目名称任意起。 新项目中会创建 Program.cs , Service1.cs及其他的文件或文件夹 2. 编写程...

声明:大发红黑大战提供的解决方案均由系统收集自互联网,仅供参考,大发红黑大战不保证其准确性,亦不代表大发红黑大战观点,请自行判断真伪,大发红黑大战不承担任何法律责任.

为您准备的相关内容:

  • asp.net中编写 windows 服务程序如何调用Basic .Net中声明Windows API函数时,“Declare”语句中Alias关键字的作用相当于使用DllImport特征类中的EntryPoint对象字段。同样在使用“Declare”语...
  • 如何使用纯C++与API实现Windows服务程序的编写Vs和其他软件,比如devC++一样,这只和语言有关,vs默认语言为c++,也可以使用c语言。和一般的c语言开发一样。至于调用win32 api,按照msdn上的格...
  • c#编写windows服务程序怎么自动安装程序创建项目 1 创建windows服务项目 2 右键点击Service1.cs,查看代码, 用于编写操作逻... END 安装服务配置 1 打开Service1.cs视图界面 2 在视...
  • 如何编写windows服务程序在编写windows服务程序过程中你需要关注的函数有: 1.首先是main函数,由于windows服务不需要界面,所以大部分程序为win32控制台应用程序,所...
  • MFC可不可以编写windows服务程序; // no password dwServerType的属性要加上SERVICE_INTERACTIVE_PROCESS 这样服务才能显示界面。 通过成功的创建服务,系统就会启动的时候加...
  • 如何编写windows服务程序Windows提供了一套后台服务程序编程接口,用户在编写后台服务程序时需要遵循一定的编程框架,否则服务程序不能正常运行。 服务程序通...
  • 如何编写windows服务程序在本文中我希望能给初学者一些帮助,大致讲一下编写windows服务程序需要的知识。 首先Microsoft Windows 服务(即,以前的NT 服务)使您能够创...
  • >>> 温馨提示:您还可以点击下面分页查看更多相关内容 <<<

    头条

    热门

    Copyright ? 2012-2016 cprogramto.com 版权所有 关于我们 | 广告服务 | 诚聘英才 | 联系我们 | 友情链接 | 免责申明