`
kimmking
  • 浏览: 537232 次
  • 性别: Icon_minigender_1
  • 来自: 中华大丈夫学院
社区版块
存档分类
最新评论

windows services与桌面程序交互问题

阅读更多

windows services程序与桌面程序交互问题

 

kimmking

 

2009年7月8日20:52:28



今天有人问我的一个问题,分析了下。

 

有没有好的解决办法。就是因为NT Service不显示UI,我才让它调用exe,可调用的exe也不显示UI 。serviceInstaller 或者 serviceProcessInstaller 中设置吗? 没有找到相关属性。
windows 服务就是注册表里的 SYSTEM\CurrentControlSet\Services\下的一个项。添加 删除 修改 服务其实都仅仅是改注册表。
这个是windows服务的本质
题外话:懂了这个,其实创建一个服务不需要ServiceProcessInstaller、ServiceInstaller之类的东西。


设置允许服务与桌面交互 ,这个在服务的登录页有选项。在注册表里是type值 | 256,就是第8位置1。
.net提供了这个属性。

http://msdn.microsoft.com/zh-cn/library/tfdtdw0e(VS.80).aspx
ServiceType.InteractiveProcess
不支持创建交互式服务。作为一种变通方法,可以创建非交互式服务,并创建与该服务进行通信(通过使用套接字或远程处理)的单独控制 GUI 应用程序。

还是不太爽,
要直接交互,改注册表。 

            RegistryKey rk = Registry.LocalMachine; 
            string key = @"SYSTEM\CurrentControlSet\Services\" + serviceName; 
            RegistryKey sub = rk.OpenSubKey(key, true); 
            int value = (int)sub.GetValue("Type"); 
            sub.SetValue("Type", value | 256); 

 

分享到:
评论

相关推荐

    windows 程序设计

    因为这些窗口看起来有些像桌面上的纸(当然,这是计算机还未占据办公桌之前的年代),Windows有时被称作:一个显示多个程序的「具象化桌面」。 Windows的早期版本使用一种「非优先权式(non-preemptive)」的多任务...

    文件监控服务(检测文件变化后执行程序)

    程序安装后,运行services.msc,会有一项“语音服务”,是以服务形式安装的,需要允许桌面交互,程序本身没有操作界面,修改配置文件可以达到你想要的目的,修改配置文件后重启该服务生效。 完美支持操作系统:...

    用instsrv.exe程序windows服务启动

    找到刚添加的explorer服务,打开其属性对话框,单击切换到“登录”选项页,在“登录身份”中选中“本地系统账户”,如图2,如果不想让服务在运行的时候弹出状态窗口,请不要勾选“允许服务与桌面交互”复选项,单击...

    Instsrv.exe和Srvany.exe

    用SC添加了一个服务,因为windows的...7、打开services.msc服务控制面板,找到ServerName,鼠标右键-属性-登陆,勾选"允许服务与桌面交互"(一般你要运行的程序都是有界面的吧)。 一般情况下,做完以上几步就可以了。

    instsrv和srvany文件,注册exe为系统服务

    将exe文件注册为windows服务,从后台运行的方法。 操作说明: 命令行定位到instsrv所在文件夹,执行instsrv ServiceName C:\Windows\System32\srvany.exe ,如果要卸载则执行...设置允许与桌面交互。然后启动服务。

    C# 守护进程的服务

    readme.txt 项目名称:WatchProcessService 功能描述:使用系统服务的方式,守护进程的开启状态。... 登录 - 允许服务与桌面交互 应用 常规 - 启动 确定 PS: 没有资源分了,收2分,评论后还给你哈。

    bindows1.3评估版

    Bindows应用程序可以使用很多方法与服务器端进行交互。其中大多数方法是基于XML的。它同样支持XML-RPC和基于SOAP的Web Services。程序设计语言是JavaScript。 所有windows控件的模拟。按钮,标签,列表,文本框,...

    古诗词网站的设计与实现论文

    Mysql 是微软公司推出的基于Windows的桌面关系数据库管理系统,是Office系列应用软件之一。它为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。Mysql常被...

    Visual.Basic.2010.&.NET4.高级编程(第6版)-文字版.pdf

    第iii部分 智能客户端应用程序第14章 windows窗体 543 14.1 system.windows.forms名称空间 543 14.2 窗体的使用 544 14.2.1 设置启动窗体 544 14.2.2 通过sub main显示窗体 545 14.2.3 application类的更...

    C#微软培训资料

    14.4 继承中关于属性的一些问题.169 14.5 小 结 .172 第四部分 深入了解 C#.174 第十五章 接 口 .174 15.1 组件编程技术 .174 15.2 接 口 定 义 .177 15.3 接口的成员 .178 15.4 接口的实现 .182 ...

    InstallAnywhere v5.5.1--专业、强大的安装工具

    无论应用程序是用Java, C++, PERL, C#编写的,还是用EJB 或.NET Web services配置的,InstallAnywhere都可以将你的桌面、企业或多层Web services软件配置到你的平台上。 更低成本的开发和支持费用,提供最佳的...

    计算机应用技术(实用手册)

    当设定为[Enabled](启动)时,这个项目在系统电源开启之后,可加速POST(Power On Self Test)的程序。BIOS会在POST过程当中缩短或是跳过一些检查项目,从而加速启动等待的时间! Hard Disk Boot Priority(硬盘...

    网管教程 从入门到精通软件篇.txt

    除非您访问驱动器有问题,否则不要继续进行。向系统分区写入新的主引导记录可能破坏分区表并导致分区无法访问。  format  将指定的驱动器格式化为指定的文件系统。含有下列参数的 format 命令仅在使用故障恢复...

    cmd操作命令和linux命令大全收集

    41. wupdmgr--------windows更新程序 42. wscript--------windows脚本宿主设置 43. write----------写字板 45. wiaacmgr-------扫描仪和照相机向导 46. winchat--------XP自带局域网聊天 49. mplayer2-------...

Global site tag (gtag.js) - Google Analytics