从服务启动应用程序

| 我想通过service.c运行用c#winform制作的应用程序,我已经完成了代码,但是即使服务成功启动也不会启动该应用程序,也不会引发异常。
protected override void OnStart(string[] args)
        {
            eventLog1.WriteEntry(\"starting Kb\");
            try
            {
                Process myProcess = new Process();
                myProcess.StartInfo.FileName = @\"C:\\Program Files (x86)\\Invisual E. Inc\\KeyboardSetup\\keyboard.exe\";//Exe Path 
                myProcess.StartInfo.CreateNoWindow = false;
                myProcess.EnableRaisingEvents = true;

                myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Normal;


                myProcess.Start();
                ProcessWindowStyle ws = myProcess.StartInfo.WindowStyle;
                if (ws == ProcessWindowStyle.Hidden)
                    myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Normal;

                eventLog1.WriteEntry(\"started\");

            }
            catch (Exception c)
            {
                eventLog1.WriteEntry(c.Message);
            }
        }
日志文件不显示任何异常。 目的是在窗口的欢迎屏幕上启动应用程序,以便用户可以使用定制的键盘。     
已邀请:
        什么操作系统?从Vista以及更高版本开始,您将无法从服务创建GUI(这是一个安全漏洞,而且非常丑陋。。。)有一个用户0会话,显示gui从vista开始由服务启动。 为什么不为安装应用程序的用户登录时为您的应用程序创建注册表项和/或启动项来启动?或按照此处有关实现交互式服务的信息进行操作。     
        服务通常在非登录用户的用户下运行,因此该服务没有可用于显示任何Windows窗体的桌面,因此未显示t的原因。 我认为您将需要寻找另一种方法,就像winforms应用程序可以启动一项服务一样,我不认为可以采用其他方法来完成。 问候 AJ     

要回复问题请先登录注册