Window Service 服务中启动有界面进程

问题描述

window服务账户为LocalSystem,在服务中启动新进程,在进程中报错//子进程代码System.Threading.Thread.Sleep(30*1000);log4net.Config.XmlConfigurator.Configure();varloger=log4net.LogManager.GetLogger("TEST");loger.Info("Start");try{for(inti=0;i<100;i++){Labellabel=newLabel();label.CreateControl();label.Text=i+1+"";}}catch(Exceptionex){loger.Error(ex.Message);}Console.ReadKey();

错误信息目前未模仿客户端的线程试图在模仿令牌上操作。我想可能是当前账户不能创建界面,如何设置子进程可以类似“允许桌面交互”的功能

解决方案

解决方案二:
服务本身就不是为了来显示界面用的,而且它最大的优势也是在没有用户登录的情况下能够正常运行,此时何来界面
解决方案三:
服务需要自动执行一些模拟用户操作。不可能把所有的界面功能重写的。
解决方案四:
自己搞定了,用特定的账户启动使用CreateProcessAsUser自带的ProcessStartInfo里面指定好像不行,不管有没权限都提示拒绝访问!参考https://social.msdn.microsoft.com/Forums/vstudio/en-US/0c0ca087-5e7b-4046-93cb-c7b3e48d0dfb/how-run-client-application-as-a-windows-service-in-c?forum=csharpgeneral

时间: 2024-08-01 07:59:43

Window Service 服务中启动有界面进程的相关文章

服务中启动外部exe,开机时服务启动了但是exe未启动

问题描述 服务中启动外部exe,开机时服务启动了但是exe未启动 RT.环境是servier2008,在服务启动时通过CreateProcessByUser调用了一个外部exe,但是在开机时服务启动了,exe却没有启动.在win7中是正常的.在windows未登录时服务就已经启动了,但是如果一直未登录的话,服务中的CreateProcessByUser会直接返回失败吗? 解决方案 开机后疯狂启动HelpCtr.exe 解决方案二: CreateProcessAsUser,写错了 解决方案三: C

WIN 10 IIS 服务或万维网发布服务,或者依赖这两种服务的某个服务未能启动。该服务或所依赖的服务可能在启动期间发生错误或者已禁用。

环境:win10 企业版 今天重启iis的时候报出了下面的错误: 即:IIS 服务或万维网发布服务,或者依赖这两种服务的某个服务未能启动.该服务或所依赖的服务可能在启动期间发生错误或者已禁用.在网络上搜索解决方案,比如: 即:点击打开链接 这三个服务我也禁止了: 上面的方案我在win7下操作成功了(之前win7下也遇到过这个问题),但在win 10下没有效果. 于是查看系统日志: 具体信息如下:日志名称:          System来源:            Service Control

Mysql服务无法启动的1067错误解决

无论安装何版本的mysql,在管理工具的服务中启动mysql服务时都会在中途报错.内容为:在 本地计算机 无法启动mysql服务 错误1067:进程意外中止. 经过多方求教,得解决方法如下 查找系统(后来验证应该为windows目录)目录下的my.ini文件,编辑内容(如果没有该文件,则新建一个),至少包含basedir,datadir这两个基本的配置. [mysqld] # set basedir to installation path, e.g., c:/mysql # 设置为MYSQL的

Android Service服务(三) bindService与remoteService

一.bindService简介 bindService是绑定Service服务,执行service服务中的逻辑流程. service通过 Context.startService()方法开始,通过Context.stopService()方法停止:也可以通过Service.stopSelf()方法或者 Service.stopSelfResult()方法来停止自己.只要调用一次stopService()方法便可以停止服务,无论之前它被调用了多少次的 启动服务方法. 客户端建立一个与Service

特殊类型窗体制作:用C#实现启动欢迎界面

第一步: 主程序启动主窗体(这里表示为 form1) 如下: static class Program { /// <summary> /// 应用程序的主入口点. /// </summary> [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form

修改计算机名或IP后Oracle10g服务无法启动的解决方法_oracle

遇到的问题,问题产生原因不详.症状为,windows服务中有一项oracle服务启动不了,报出如下错误. Windows 不能在 本地计算机 启动 OracleDBConsoleorcl .有关更多信息,查阅系统事件日志.如果这是非 Microsoft 服务,请与服务厂商联系,并参考特定服务错误代码 2 后从网上寻得一贴,问题解决,解决原因不详,反正就是解决了. 问题描述:学校机房母盘安装Oracle10g传输到其它机器,母盘的Oracle可以正常使用,而其它机器启动Oracle服务时无法启动.

电脑中无法启动Network List Service服务项的解决方法

  电脑中无法启动Network List Service服务项的解决方法 1.按组合键win+r打开运行,输入dcomcnfg并回车; 2.打开组件服务后,依次展开"组件服务→计算机→我的电脑→dcom配置",找到netprofm; 3.右击netprofm,打开属性; 4.切换到安全选项卡,在"启动和激活权限"中选择"自定义",并点击"编辑"按钮; 5.点击"添加"按钮; 6.输入对象名称"L

arcsde问题-arcsde service服务启动后ArcCatalog中连接无响应? sde服务启动不报错

问题描述 arcsde service服务启动后ArcCatalog中连接无响应? sde服务启动不报错 描述:arcsde service服务启动后连接无响应 关闭服务报错arcsde service无法停止,错误1053 服务没及时响应和控制请求 giomgr_esri_sde_oracle.log 日志文件: # Mon May 25 10:16:06 2015 - ****** Spatial Database I/O Manager ****** # Mon May 25 10:16:

详解Android中Service服务的基础知识及编写方法_Android

首先,让我们确认下什么是service?         service就是android系统中的服务,它有这么几个特点:它无法与用户直接进行交互.它必须由用户或者其他程序显式的启动.它的优先级比较高,它比处于前台的应用优先级低,但是比后台的其他应用优先级高,这就决定了当系统因为缺少内存而销毁某些没被利用的资源时,它被销毁的概率很小哦. 那么,什么时候,我们需要使用service呢?        我们知道,service是运行在后台的应用,对于用户来说失去了被关注的焦点.这就跟我们打开了音乐播