求解,怎么样在winform中注册、启动、停止用c#写的windows服务

jimmy-yu 2008-07-05 11:05:00
我想在winform中实现修改windows服务的配置文件(比如我将时间及数据库链接的配置写在app.config中,在winform中动态加载这个config,然后修改其中的节点),修改完成后再注册这个服务程序,同时提供两个按钮作为启动或停止,以用来启动或停止这个服务,这个应该怎么实现啊,哪位高手能帮帮我啊!提前先谢谢了!
...全文
292 8 打赏 收藏 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
活靶子哥哥 2008-07-05
  • 打赏
  • 举报
回复
Install
注册服务和卸载服务可以用Process调用如下命令

%windir%\Microsoft.NET\Framework\v2.0.50727\installutil /i YourServiceExe.exe
net start "You Service Name"

UnInstall
%windir%\Microsoft.NET\Framework\v2.0.50727\installutil /u YourServiceExe.exe


see also http://msdn.microsoft.com/zh-cn/architecture/50614e95.aspx

System.ServiceProcess.ServiceController sc = new
System.ServiceProcess.ServiceController("Your Service Name");
sc.Start//启动
sc.Stop()//停止;
sc.Pause()//暂停
sc.Continue()//继续

see alse http://msdn.microsoft.com/zh-cn/library/system.serviceprocess.servicecontroller_methods.aspx
tianhuo_soft 2008-07-05
  • 打赏
  • 举报
回复
winform 里面不是有一个专门制作服务的功能嘛
用那个多好啊 ~!

wwshiwojiaguaiguai 2008-07-05
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zzyhuian06142 的回复:]
用Process类啊
设置他的StartInfo.Arguments
[/Quote]
jimmy-yu 2008-07-05
  • 打赏
  • 举报
回复
同时再请教下,怎么样把windows服务和winform一起打包成安装文件
xminsong 2008-07-05
  • 打赏
  • 举报
回复
资料来自网上,希望对你有用

static void Main(string[] args)
{
if (args.Length == 0)
{
ServiceBase[] ServicesToRun;
ServicesToRun = new ServiceBase[] { new Service1() };
ServiceBase.Run(ServicesToRun);
}
else if (args[0].ToLower() == "-i")
{
InstallService();
}

//如参数为"-u",删除服务
else if (args[0].ToLower() == "-u")
{
UnInstallService();
}
}

//安培服务
string[] commandLine = { };
string serviceFileName = System.Reflection.Assembly.GetExecutingAssembly().Location;
AssemblyInstaller aAssemblyInstaller = new AssemblyInstaller(serviceFileName, commandLine);
TransactedInstaller aTransactedInstaller = new TransactedInstaller();
aTransactedInstaller.Installers.Add(aAssemblyInstaller);
aTransactedInstaller.Install(new System.Collections.Hashtable());

//删除服务
string[] commandLine = { };
string serviceFileName = System.Reflection.Assembly.GetExecutingAssembly().Location;
AssemblyInstaller aAssemblyInstaller = new AssemblyInstaller(serviceFileName, commandLine);
TransactedInstaller aTransactedInstaller = new TransactedInstaller();
aTransactedInstaller.Installers.Add(aAssemblyInstaller);
aTransactedInstaller.Uninstall(null);
jimmy-yu 2008-07-05
  • 打赏
  • 举报
回复
能给个具体的例子吗
或者稍微详细点的代码
谢谢
zzyhuian06142 2008-07-05
  • 打赏
  • 举报
回复
用Process类啊
设置他的StartInfo.Arguments
jimmy-yu 2008-07-05
  • 打赏
  • 举报
回复
在vs命令行注册我知道,但是不知道在winform怎么注册,比如说放一个按钮,然后在按钮里写一个事件就可以完成注册这样
内容概要:本文介绍了基于Matlab代码实现的电力系统机组组合优化调度方法,适用于IEEE14、IEEE30和IEEE118节点标准测试系统。该资源聚焦于电力系统中发电机组的优化调度问题,通过智能优化算法实现对机组启停、出力分配等决策的最优化,旨在降低运行成本、提升系统可靠性和经济性。文中系统阐述了从数学模型构建、多类型约束处理到优化算法设计与仿真实验验证的完整研究流程,并提供了可复现的Matlab代码,涵盖目标函数设定、约束条件建模及算法求解过程,适用于电力系统调度、能源优化等相关领域的科研与教学实践。; 适合人群:具备电力系统分析、运筹学基础及Matlab编程能力的高校学生、科研人员和工程技术人员,尤其适合从事电力系统优化、智能算法应用研究的研究生与青年学者。; 使用场景及目标:①用于电力系统机组组合(UC)问题的教学实验与课程设计;②支撑科研工作中对遗传算法、粒子群算法等智能优化算法在电力系统调度中应用的研究;③为含可再生能源接入的现代电网调度提供仿真平台与技术参考,助力低碳电力系统规划与运行。; 阅读建议:建议读者结合电力系统调度理论与优化建模知识,深入理解机组组合问题的数学本质与物理约束,再通过Matlab代码进行仿真实践,重点关注算法收敛性、多目标权衡策略与不同测试系统间的性能对比,以实现理论与实践的深度融合。
内容概要:本文研究了一种基于TCN-BiGRU-Attention混合神经网络模型的风电功率预测方法,旨在提升预测精度。该模型融合了时间卷积网络(TCN)对局部时序特征的强大提取能力、双向门控循环单元(BiGRU)对时间序列前后依赖关系的双向捕捉能力,以及注意力(Attention)机制对关键时间步特征的自适应加权聚焦能力。研究采用多变量输入方式,综合纳入风速、风向、温度等多种气象因素作为输入特征,实现风电功率的单步预测。通过对实际风电场数据的实验验证,该模型在预测精度方面相较于单一模型或其他组合模型展现出显著优势,有效降低了预测误差。; 适合人群:具备一定机器学习与深度学习基础,从事新能源预测、电力系统调度或相关领域研究的科研人员与工程技术人员。; 使用场景及目标:①应用于风电场功率实时预测,提升电网调度的稳定性与安全性;②为电力市场交易、储能配置和可再生能源消纳提供高精度数据支持;③作为深度学习模型融合设计的参考案例,推动时序预测技术的发展。; 阅读建议:此资源提供了完整的Matlab代码实现,读者在学习时应重点关注模型结构的设计原理、多变量特征的处理方式以及Attention机制的融入方法,建议结合代码进行复现实验,调整参数以深入理解各组件对最终预测性能的影响。

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧