Um aplicativo pode detectar que está sendo executado como um RemoteApp?

6

Informações básicas

Instalei recentemente o Microsoft Office 2013 no meu servidor para implantar usando o RemoteApp em todos os meus computadores domésticos. Após a instalação, quando tentei executar os programas, ocorreu um erro que, para executar o Office em um PC com os Serviços de Terminal instalados, você deve estar usando uma versão de licença de volume do Office. Em seguida, desinstalei todas as funções de servidor da Área de Trabalho Remota e, em vez disso, implantei-as manualmente desativando a lista de permissões e ela funcionou bem, sendo executada localmente ou implantada como RemoteApps.

Qual é a lista de permissões?

Em uma implantação normal do RemoteApp, há uma lista de aplicativos que podem ser executados como RemoteApps e a única maneira de configurar isso é usar a função de servidor dos Serviços de Terminal. No entanto, é possível entrar no Registro do Windows e desabilitar a lista para que qualquer pessoa possa acessar qualquer aplicativo no servidor como um RemoteApp, conhecendo o caminho até ele, sem precisar instalar a função de servidor dos Serviços de Terminal.

Isso me deixou curioso sobre algo ...

Minha pergunta

Um aplicativo pode detectar que ele está sendo executado como um RemoteApp dessa maneira (com a lista de permissões desativada) e se recusar a iniciar se estiver, e só será iniciado se estiver sendo executado na área de trabalho do servidor local?

    
por gparyani 27.01.2014 / 20:59

1 resposta

2

Como um aplicativo pode detectar que está sendo executado como um RemoteApp?

As sessões do RemoteApp são iniciadas no servidor de terminal por RDPINIT.EXE . Portanto, o aplicativo pode verificar se o RDPINIT.EXE é o processo pai .

Detalhes:

An instance of RDPINIT.EXE runs on the Terminal Server for each users RemoteApp session. RDPINIT.EXE is loaded by USERINIT.EXE as a RemoteApp specific implementation of USERINIT.EXE. RDPINIT.EXE acts as a watchdog to launch RDPSHELL.EXE and monitor process startup and shutdown. RDPSHELL.EXE is the shell that is used instead of EXPLORER.EXE to provide RemoteApp functionality. RDPINIT.EXE monitors the process lifecycle of RDPSHELL.EXE and restarts it in the event that it abnormally terminates. RDPSHELL.EXE loads a set of Windows event hooks onto each user desktop in the session. These event hooks allow RDPSHELL.EXE to monitor the state of all windows on the desktop. ...

(citado em Technet )

    
por 18.12.2014 / 17:26