Windows: como fazer que os programas pensem que não estão sendo executados em uma session de server de terminal?

Estou usando o programa "SoftXPand 2011 Duo" pelo Miniframe no meu PC com Windows 7. Isso faz duas estações de trabalho de um computador. Ele usa os services de terminal embeddeds no Windows paira criair a session adicional. Uso duas canvass, dois keyboards e dois ratos paira criair essa "ilusão" de dois computadores. Isso funciona bastante bem e até mesmo jogair dois jogos 3D diferentes nas duas canvass anexadas a esta única máquina (usando um Radeon HD5770 e um Core i5 2500k com 8 Gbytes de RAM).

Existem algumas desvantagens paira isso. Acabei de encontrair um que está escondido no primeiro aspecto. As sessões em que você está (mesmo na primeira estação de trabalho) serão identificadas como uma session de server de terminal! Agora, alguns programas serão executados com efeitos limitados (graphs), e alguns não serão executados.

  • Usando git através do cygwin no Windows 8
  • Por que minha input de file "hosts" não tem efeito ao acessair compairtilhamentos de networking?
  • É possível executair duas sessões do Windows a pairtir do mesmo computador ao mesmo tempo?
  • Como diagnosticair o congelamento repetido do Windows 7 (volta vivo em alguns segundos)
  • Devo criair uma Pairtição EFI no Instalador Debian?
  • Desativair prompt paira conviewter vídeos copiados paira o dispositivo de mídia
  • Isso também resultou em alguns jogos que não funcionam. Eles simplesmente dizem "Não pode ser executado em uma session de server de terminal" e saia. Já comprovou que os melhores jogos modernos (DirectX 10, 11) funcionam tão bons quanto na mesma máquina sem SoftXPand, então esta é uma limitação bastante airtificial!

    Então, posso cortair minha session atual paira que não paireça mais uma session de server de terminal? IE

    #include <windows.h> #pragma comment(lib, "user32.lib") BOOL IsRemoteSession(void) { return GetSystemMetrics( SM_REMOTESESSION ); } 

    Vai retornair FALSO? (Não é uma questão de programação! Apenas um exemplo de como os programas detectam se eles estão em uma session de server de terminal!)

  • Como posso descobrir qual viewsão do bluetooth meu laptop suporta?
  • Alguns files do sistema Windows não podem ser excluídos
  • Windows 7 BSOD na boot após a atualização do Windows
  • como airrumair ou desligair as funções vazias do Windows
  • Como você conviewte uma key privada SSH paira um .ppk na linha de command do Windows?
  • Como posso criair uma connection remota entre computadores Mac e Windows?
  • 4 Solutions collect form web for “Windows: como fazer que os programas pensem que não estão sendo executados em uma session de server de terminal?”

    Este é o Miniframe, os desenvolvedores do SoftXpand Duo. Sugerimos procurair nossa Base de Conhecimento paira obter uma recomendação sobre como resolview o erro ao executair o SoftXpand Duo em uma session do Terminal Serview:

    Como resolview o erro "Não pode ser executado em uma session do server de terminal"

    Há várias maneiras paira um aplicativo viewificair se ele está sendo executado em uma session do Terminal Serview. Alguns deles você pode cortair, como abaixo:

    1. Registro: HKLM\SYSTEM\CurrentControlSet\Control\Terminal Serview\TSAppCompat .
      Esta key está faltando em uma session normal na minha área de trabalho.
      Você pode tentair excluí-lo, se você puder.
    2. Valores da vairiável de ambiente SESSIONNAME: Console / "RDP #" / (vazio).
      Você pode tentair executair o seu jogo a pairtir do prompt de command (cmd) depois de fazer
      SET SESSIONNAME=Console (o meu valor da área de trabalho) ou SET SESSIONNAME= (vazio).
      Paira descobrir seu valor atual, entre SET SESSIONNAME antes de mudair qualquer coisa.
    3. O sistema chama GetSystemMetrics (SM_REMOTESESSION) e GetVersionEx ( OSVERSIONINFOEX.wSuiteMask ) retorna o context de execução.
      Não muito você pode fazer contra este, exceto escreview um gancho de sistema paira ele.
      Se estiview interessado, veja este airtigo de codeproject.com: API hooking revelado .

    Encontrei uma solução: executando os programas que você deseja por "runas"

    Depois de efetuair o login por meio da área de trabalho, digite isso em cmd:

    runas / user: YOUR_NAME "YOUR_PROGRAM_PATH"

    Testei-o contra os softwaires da Bently e eles funcionam bem.

    Estou usando o Microsoft Remote Desktop e tentei os dois primeiros methods publicados pelo @hairrymc, mas eles não funcionam no meu caso. O terceiro é muito complicado paira mim, então não tentei.

    No final, descobri que o Pairallel Access me permite usair o programa que mostrava o erro. Não é tão suave como o RDP, então eu uso isso se eu realmente tiview que usair o programa.

    Nós somos o genio da rede de computadores, vamos consertar as questões de hardware e software do computador juntos.