收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
点击F4,查看各个属性的含义:
Autolog 是否自动写入系统的日志文件
CanHandlePowerEvent 服务时候接受电源事件
CanPauseAndContinue 服务是否接受暂停或继续运行的请求
CanShutdown 服务是否在运行它的计算机关闭时收到通知,以便能够调用 OnShutDown 过程
CanStop 服务是否接受停止运行的请求
ServiceName 服务名称
三:功能
点击F7查看Service1.cs的源代码:
默认实现了OnStart和OnStop两个方法。
以向一个文本文件中写入数据操作为例:
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
}
/// <summary>
/// 服务启动
/// http://www.cnblogs.com/babycool
/// </summary>
/// <param name="args"></param>
protected override void OnStart(string[] args)
{
string start = string.Format("{0}-{1}",DateTime.Now.ToString("yyyyMMddHHmmss"),"程序启动了。");
Log(start);
}
/// <summary>
/// 服务停止
/// http://www.cnblogs.com/babycool
/// </summary>
protected override void OnStop()
{
string start = string.Format("{0}-{1}", DateTime.Now.ToString("yyyyMMddHHmmss"), "程序停止了。");
Log(start);
}
/// <summary>
/// 系统关闭
/// http://www.cnblogs.com/babycool
/// </summary>
protected override void OnShutdown()
{
string start = string.Format("{0}-{1}", DateTime.Now.ToString("yyyyMMddHHmmss"), "电脑关闭了。");
Log(start);
}
/\*
/// <summary>
/// 服务暂停
/// http://www.cnblogs.com/babycool
/// </summary>
protected override void OnPause()
{
}
\*/
/\*
/// <summary>
/// 服务继续
/// </summary>
protected override void OnContinue()
{
base.OnContinue();
}
\*/
/\*
/// <summary>
/// 系统电源状态改变
/// </summary>
/// <param name="powerStatus"></param>
/// <returns></returns>
protected override bool OnPowerEvent(PowerBroadcastStatus powerStatus)
{
return base.OnPowerEvent(powerStatus);
}
\*/
void Log(string str)
{
string path = "E://def/6.txt";
using (StreamWriter sw = File.AppendText(path))
{
sw.WriteLine(str);
}
}
}
四:安装程序
切换到 Service1.cs[设计] 界面,右击选择“添加安装程序”。
这时项目中就添加了一个新类 ProjectInstaller 和两个安装组件 ServiceProcessInstaller 和 ServiceInstaller。
选中“serviceInstaller1” 控件,F4打开属性面板,
Description 服务程序的描述信息
DisplayName 服务程序显示的名称
StartType 指定如何启动服务
Manual 服务安装后,必须手动启动
Automatic 每次计算机重新启动时,服务都会自动启动
Disabled 服务无法启动
选中“serviceProcessInstaller1” 控件,F4打开属性面板:
将serviceProcessInstaller类的Account属性改为 LocalSystem。
这样,不论是以哪个用户登录的系统,服务总会启动。
五:生成
右击 项目 选择生成 ,不能通过F5来直接运行服务项目。
六:安装卸载服务
选择 VS组件 “Visual Studio命令提示(2010)” 工具,并以“管理员身份运行"(win7、win8系统下)。
注意:这里必须选择“以管理员身份运行”,否则会报错。
收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
)]
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!