Why does Windows Service not launch external App?

前端 未结 2 546
抹茶落季
抹茶落季 2021-01-27 13:52

I am trying to get a Windows Service to launch an external application. When I start my service it doesn\'t load the application up.

There are no errors reported in the

相关标签:
2条回答
  • 2021-01-27 14:11

    Enclose this code in try-catch and add a small trick which allows you to attach the debugger to the service. It is likely to be a permissions problem, but you will get it in the catch block

    protected override void OnStart(string[] args)
    {
        Debugger.Launch(); //displays a pop up window with debuggers selection
    
        try
        {
            App.StartInfo.FileName = @"C:\Program Files (x86)\SourceGear\DiffMerge\DiffMerge.exe";
            App.Start();
        }
        catch(Exception ex)
        {
            //see what's wrong here
        }    
    }
    
    0 讨论(0)
  • 2021-01-27 14:20

    If you are running on Vista, Windows 7 or Server 2008 and your executable is a windows application (Not Command-Line), then it will not run due to Session 0 Isolation, meaning there are no graphical handles available to services in the newest Windows OS's.

    The only workaround we have found is to launch an RDP Session, and then launch your application within that session even though that is far more complicated.

    0 讨论(0)
提交回复
热议问题