Você pode voltar para a máquina local e executar um aplicativo com parâmetros da sua sessão remota?

0

Estou escrevendo um programa que é usado como um RemoteApp do servidor para a máquina cliente.

Eu sei que, usando System.Windows.Forms.SystemInformation.TerminalServerSession , posso determinar se a sessão atual é uma sessão local ou uma sessão remota da execução do RemoteApp.

Existe uma maneira para mim, se a sessão do Terminal Server for verdadeira (quando o usuário estiver executando o aplicativo remotamente), para dizer à máquina local para executar um aplicativo, como o MS Word? Eu gostaria de fazer isso nativamente, sem o uso de plug-ins ou psexec, se puder ser ajudado.

    
por Bob. 15.05.2013 / 22:22

2 respostas

1

depende de quão remotos os usuários são do servidor, mas vamos supor que eles estão todos em um escritório no final de uma rede ou VPN.

Eu criaria o aplicativo dotNet que se conecta a um SQL Server central e faz a varredura a cada 250ms para um registro simples com o nome do seu PC. O segundo campo no registro é o programa a ser executado.

Isso significa que um aplicativo baseado em servidor pode gravar no banco de dados todo laço que ele desejar para abrir um programa localmente. dentro de 250ms, o aplicativo local encontrará o registro, iniciará o aplicativo e excluirá o registro.

    
por 09.02.2018 / 21:13
0

você tem 4 opções com diferentes graus de complexidade, confiabilidade e considerações sobre implantação.

1) PSEXEC. A sério, muitas pessoas usam o psexec para esse propósito e trabalham a maior parte do tempo. de longe a solução mais simples. use -i para que ele possa interagir com a área de trabalho.

2) WMI. você pode escrever o código .net ou VBScript para executar o aplicativo cliente. é tão scripty quanto psexec, mas é inteiramente nativo. Eu tive problemas de confiabilidade com o WMI antes, mas esses eram operações automatizadas em todo o domínio, e grande parte do problema parecia ser o gerenciamento de energia em estações de trabalho inativas. link

3) Agendador de tarefas do Windows. do servidor agendar uma tarefa para executar no cliente na sessão de usuários. ainda scripty, com muitas partes móveis. link

4) crie um serviço de rede do Windows para o PC local e, após o sinal, ative a tarefa na sessão de usuários. talvez seja necessário usar o agendador de tarefas para realizar isso. muito trabalho para dev e teste, difícil de implantar, muitas partes móveis e ainda scripty em alguns lugares, mas isso provavelmente seria a resposta do microsofts, já que implementa corretamente sua orientação para a elevação do processo.

    
por 16.05.2013 / 01:27