Tecnicamente, um "processo" é qualquer programa em execução. Isso pode ser um serviço (que é executado todo o tempo) ou um processo sem serviço.
Primeiro, determine exatamente que tipo de arquitetura o programa de terceiros usa.
Alguns programas começam a ser executados no login, mas não são realmente serviços. Programas mais complexos são divididos em duas partes: um serviço que é executado o tempo todo e um processo de interface do usuário que inicia no login (ou sob demanda). Não está claro a partir de sua pergunta qual deles é o programa de terceiros.
Se o programa de terceiros é um serviço (ou tem um componente de serviço), então deve estar bem. Lembre-se de que alguns programas têm duas partes: serviço e interface do usuário, e esses programas são projetados para que a interface do usuário entre e saia enquanto os usuários fazem logon e logoff.
Em seguida, você pode tentar torná-lo um serviço, mesmo que não tenha sido projetado para isso.
Se o programa for apenas um processo de interface do usuário e não tiver uma parte de serviço, talvez seja possível fazê-lo para funcionar como um serviço de qualquer maneira. Primeiramente, se você está planejando algum tipo de cenário de desktop remoto, isso provavelmente não funcionará (cenário multiusuário, e programas como esse que não são compatíveis com TS tendem a quebrar).
Neste ponto, pode ser possível fazê-lo funcionar como um serviço usando um programa como srvany
(parte do O kit de recursos 2k3 foi usado . srvany
é um serviço que apenas executa um programa, por isso atua como um host de serviço para programas sem serviço. O problema é que alguns programas simplesmente não se comportam bem como serviços (muitas das permissões são diferentes). Você provavelmente terá que configurá-lo para ser um serviço interativo, que abre uma vulnerabilidade de segurança chamada ataque de estilhaçamento .
Então, em resumo, isso pode ser possível. Eu tive que fazer isso uma ou duas vezes. Mas você pode decidir que é melhor não ir até lá.