Número do Windows de conexões simultâneas RDP. Corrigir as falhas do RDP usando biblioteca de wrapper RDP

Windows 7 / Vista / XP Terminal Server (SP1 / SP2 / SP3) - Decisão real. Servidor de terminal Para se conectar a uma área de trabalho remota Windows 7 / Vista / XP (SP1 / SP2 / SP3) Ao mesmo tempo vários usuários.

Servidor de terminal Você pode usar para iniciar um aplicativo com computadores remotos ou para o seu server Terminal no Windows 7 / XP / Vista /você pode conectar diferentes computadores antigos, como 486 e Pentium 1, eles funcionarão como se o sistema operacional instalado neles Windows Vista / 7 / XP com Office XP-2003-2007, 1Ce um monte de diferentes programas de escritório.

Padrão Windows 7 / Vista / XP Não suporta o trabalho de vários usuários ao mesmo tempo. Para permitir que vários usuários funcionem simultaneamente por RDP., é necessário substituir o arquivo c: \\ windows \\ system32 \\ termsrv.dll e fazer alterações no registro - para remover a limitação imposta Windows XP / 7 / Vista.

Antes de fazer mudanças em Windows 7 / Vista / XPCertifique-se de que suas ações não contradizem a legislação do seu país e o contrato de licença, então você usa o método ou não para resolver você.

Como fazer um servidor de terminal do Windows XP / 7 / Vista?

1. Crie vários usuários com direitos de administrador ou usuário regular, certifique-se de definir a senha.

Certifique-se de que a opção esteja habilitada - comutação rápida entre usuários (painel de controle -\u003e Contas Usuários -\u003e Alterar o login do usuário)

2. Permitir uma conexão remota - selecione "Meu computador" clicando com o botão direito do mouse e abra "Propriedades". Na janela que aparece, vá para a guia "Sessões Remotivas". Item "Permitir acesso remoto a este computador" Confirme a marca de seleção. Selecione usuários remotos (de outra forma Área de trabalho remota. funcionará apenas para administradores) e clicar em "OK"

3. Certifique-se de que a capacidade de se conectar à área de trabalho remota esteja sendo executada para um usuário.

Fazendo um servidor de terminal do Windows XP / 7 / Vista

4. Baixe o patch universal para criar um servidor de terminal:
-
Windows XP SP2 SP3;
- Windows Vista SP1 SP2;
- Windows 7, 32bit (x86) / 64bit (x64).

5. Siga o arquivo Universaltermsrvpatch - *. Exe O que corresponde ao bit do seu sistema e clique em Correção. Para substituir o arquivo um c: \\ windows \\ system32 \\ termsrv.dll

6. Siga o arquivo * .reg que corresponde ao seu sistema operacional para fazer alterações no registro.

7. Sobrecarregar o sistema operacional

8. Iniciar -\u003e Executar -\u003e gpedit.msc

Para o Windows 7.

Configuração do computador -\u003e modelos administrativos -\u003e Componentes do Windows -\u003e Serviços de desktop remotos -\u003e nó da sessão de desktop remoto -\u003e Conexões -\u003e

Para o Windows XP.

Configuração do computador -\u003e Modelos administrativos -\u003e Componentes do Windows -\u003e Terminal Server-\u003e Limite o número de conexões

Instalando "Ativado" e altere o valor do número de terminais permitidos.

9. Reinicie o computador

Se todos vocês cumpriram, então terminal Server Windows 7 / Vista / XP (SP1 / SP2 / SP3) Preparar. Agora você tem que trabalhar Área de trabalho remota simultaneamente para vários usuários.

Servidor de Terminal de Configurações Avançadas Windows XP.

1. Como mostra a prática, os usuários do servidor de terminal são simplesmente desativados e os programas funcionam mais. Você pode definir o tempo para desativar a sessão inativa.

Iniciar -\u003e Run -\u003e gpedit.msc
Configuração do computador -\u003e Modelos administrativos -\u003e Componentes do Windows -\u003e Terminal Server -\u003e Sessões -\u003e Definir limite de tempo para sessões desativadas

Ativar e especificar o tempo

Há também outras restrições lá, você pode escolher como você gosta

2. Execute um único programa para todos os usuários remotos do servidor de terminal, sem uma área de trabalho

Iniciar -\u003e Run -\u003e gpedit.msc
Configuração do Computador -\u003e Modelos Administrativos -\u003e Componentes do Windows -\u003e Terminal Server -\u003e Execute o programa quando conectado

Habilitar
\\ Bkc.remoteclient.exe.

Especifique a pasta de trabalho
C: \\ Arquivos de Programas \\ Bcomzv "Ulocity \\ Vіddaki Klієnt Site Aweden

3. Execute um único programa para usuários do servidor de terminal selecionado, sem desktop (Atenção, age mesmo se você for localmente, então eu nem sei como cancelá-lo mais tarde, exceto para excluir o usuário e, em seguida, criar um novo ou usando disco de inicialização LiveCD, (programa ERD-Commander) com uma escolha de registro do download do sistema operacional que você precisa.

Início -\u003e Run -\u003e Regedit

Crie um parâmetro de string shell e, no campo "Valor", especifique o caminho completo para o arquivo do programa

4. Iniciando um programa independentemente pelo usuário do servidor de terminal, sem a área de trabalho

Para começar a executar c.2 Para todos os usuários , sobrecarga e, em seguida, devolver o valor como foi (não especificado)

Nas configurações do cliente do Windows (conexão com a área de trabalho remota) a partir do qual você se conecta, nos parâmetros na guia Program, coloque um tick "quando você se conecta para executar o seguinte programa"

Especifique o caminho completo para o nome e o nome do arquivo

Especifique a pasta de trabalho
C: \\ Arquivos de Programas \\ Bcomzv "Ulocity \\ Vіddaki Klієnt Site Aweden

5. Iniciando o programa ao inserir o sistema na área de trabalho

Adicione um atalho à pasta de inicialização
C: \\ Documentos e Configurações \\ User_Name \\ Menu principal \\ Programas \\ Buside \\

No Windows 8 / 8.1, bem como versões prévias OS Microsoft Client OS, suportado apenas uma conexão de RDP de entrada simultânea. Isso significa que computador Windows. 8 Depois que uma área de trabalho remota pode conectar simultaneamente apenas um usuário (uma sessão), local ou controle remoto. Na maioria dos casos, isso é suficiente, mas às vezes gostaria de poder trabalhar simultaneamente vários usuários de uma só vez em nossas próprias sessões. Um bom exemplo pode ser um computador como um centro de mídia, quando o vídeo é reproduzido na sessão do console e, ao mesmo tempo, você precisa funcionar remotamente com o sistema sem interromper vídeos na TV.

Conselho.O acesso RDP Remote não funciona em casa (Home) Windows Editions, você precisa editar Pro ou Enterprise.

Quando você tenta abrir a segunda sessão RDP para um computador com o Windows 8, uma mensagem aparece que o sistema já foi registrado no sistema e sua sessão pode ser concluída.

Conselho. Anteriormente nas propriedades do computador na guia Acesso remoto (remoto), você precisa adicionar contas para os usuários necessários em grupo local. Usuários remotos de área de trabalho. Administradores locais rDP remoto. O acesso é permitido por padrão. Após incorporação Acesso RDP. Nas propriedades do sistema, Firewall do Windows Permite automaticamente as regras que permitem o tráfego de entrada à porta 3389. Às vezes a presença desta regra deve ser verificada manualmente.

Então, por exemplo, no servidor versão do Windows. Duas conexões administrativas simultâneas com sessões individuais são suportadas (no caso de uma organização baseada em Windows Server. O servidor do Terminal RDS, esse número pode ser ainda mais).

No entanto, na Internet, você pode encontrar um patch especial que permita que você contorne essa limitação. Graças a este patch, vários usuários se conectam simultaneamente ao RDP a um computador com o Windows 8 / Windows 8.1.

Importante. O uso deste patch é essencialmente uma violação contrato de licença E os termos de uso de produtos da Microsoft. Portanto, todas as operações descritas abaixo você execute em seu risco.

Então, o patch envolve a substituição do arquivo original do sistema % SystemRoot% \\ System32 \\ TermSrv.dll (A biblioteca usada pelo serviço remoto de serviços de área de trabalho).

  • Windows 8 - termosRv.dll-win8.zip
  • Windows 8.1 - termosRv.dll-win8.1.zip

Antes de substituir a biblioteca do sistema, crie cópia de segurança Arquivo TERSRV.DLL com um comando:

Copiar C: \\ Windows \\ System32 \\ TermSRV.DLL TERSRV.DLL_OLD

Agora, se algo der errado, você sempre pode retornar à configuração inicial, substituindo o arquivo atual pelo original TERMSRV.DLL_OLD.

Baixe o arquivo da biblioteca para sua versão do Windows.

No Windows 8, você primeiro precisa alterar as seguintes chaves no ramo do Registro HKLM \\ System \\ CurrentControlSet \\ Control \\ Terminal Server \\:

  • fdddenytsconnections.(DWORD) - 0 (A chave permite no computador)
  • fsinglessessionperuser. (DWORD) - 0

A mesma operação pode ser realizada a partir da linha de comando:

Reg Adicionar "HKLM \\ System \\ CurrentControlSet \\ Control \\ Terminal Server" / V FddenytsConecheções / T Reg_Dword / D 0 / F Reg Adicionar "HKLM \\ System \\ CurrentControlSet \\ Control \\ Terminal Server" / V FsinglessionUuser / T Reg_Dword / D 0 / T

Então vá para o catálogo C: \\ Windows \\ System32encontrar um arquivo. termsrv.dll. e abra suas propriedades.

Por padrão, o proprietário deste arquivo é Instalador confiável E até mesmo o administrador não tem o direito de substituí-lo.

Vamos nos voltar para a guia Segurança E clique no botão Editar.. Na lista de acesso, encontre um grupo de administradores locais e forneça todos os direitos totais para arquivar ( Controlo total) E salve as alterações.

A próxima etapa antes de substituir o arquivo da biblioteca, abra o console de gerenciamento de serviços ( serviços.MSC.) e pare o serviço Serviços de trabalho remoto.

Copie o arquivo TERSRV.dll do arquivo baixado para sua versão do Windows no catálogo % SystemRoot% \\ System32 \\ (com substituição).

Observação. arquivo para Windows 8.1. Contém dois arquivos 32_termsrv.dll. e 64_termsrv.dll., para a versão 32 e 64 bits do Windows 8.1, respectivamente. Desembale o arquivo e renomeie o arquivo para sua versão do sistema em termosRV.dll

Depois de substituir o arquivo, execute o serviço Remote Desktop Services e tente criar duas sessões de RDP com uma máquina provada em contas diferentes. Se você for feito corretamente, duas sessões independentes da área de trabalho remota devem ser abertas.

Conselho. Pode ser necessário reiniciar o computador.

Importante! Usando a versão probatiada do TERSRV.dll tem um número de deficiências. O principal é ao instalar a próxima atualização do Windows 8.1 / 8, este arquivo pode ser substituído. Assim, será necessário usar o editor HEX para corrigir um novo arquivo usando o editor HEX ou pesquisar na Internet um arquivo modificado pronto para o seu Builder Windows.

Como uma solução resistente para substituir o arquivo TERMSRV.DLL ao instalar atualizações do Windows.deve usar solução aberta de código aberto Wrapper rdp. Biblioteca.(Disponível no GitHub), que não regra o arquivo TERSRV.DLL, e é uma camada entre os Serviços de Terminal e o Serviço SCM. Você pode ler mais sobre o uso da Biblioteca de Wrapper RDP.

Windows XP Professional e Windows XP Media Center Edition (MCE) Ter um serviço de conexão Área de trabalho remota (RDP)O que permite conectar remotamente o computador, acesso e controle de outro computador ou host. No entanto, carros no sistema operacional Windows XP. Permitir simultâneo conecte-se a uma área de trabalho remota Apenas um usuário que estava conectado a ele, sem várias sessões conexões de área de trabalho remota ou suporte de suporte.

Sempre que o usuário remoto se conecta através do cliente a Área de trabalho remota (RDC) Para se conectar ao host Windows XP.O usuário local é desligado com o bloqueio do console ou sem sua permissão. Área de trabalho remotaAo contrário do servidor de serviços de terminal no Windows Server 2003 e no servidor 2008, ele é projetado para um usuário descartável, independentemente de ser um usuário local ou remoto.

Aqui hack para desbloquear um limite que permite múltiplas sessões simultâneas de conexão de área de trabalho na Windows XP Professional e Media Center, usando uma versão prolongada TERSERV.DLL ou uma versão de montagem antiga TERSERV.DLL, de modo a que um número ilimitado de usuários possa simultaneamente conecte-se a um computador usando uma área de trabalho remota.

  1. Baixe uma cópia do prolongado, que removerá as restrições conexão remota Para a área de trabalho desativada para sua versão do Windows XP:

Windows XP SP3: TERMSRV.DLL (versão 5.1.2600.5512)

Para obter as informações dos termosRV.dll, o patch normalmente tem os seguintes bits de códigos HEX que são sobrescritos nos seguintes valores:

00022A17: 74 75
00022A69: 7F 90
00022A6a: 16 90

  1. Reinicie o computador e baixe as informações no modo de segurança clicando F8. Durante a inicialização e selecione modo de segurança . Esta etapa é necessária apenas se você estiver em este momento Use serviços de terminal do Windows ou serviços de trabalho remoto, Proteção sistema de arquivo Deve ser ignorado, caso contrário, a seguinte mensagem de erro será exibida para restaurar os termos originaisRV.dll.

3. Purge B. % Windir% system32 e fazer um backup (ou renomear) termsrv.dll. .

4. Misture ou exclua termserv.dll. na pasta % Windir% system32 dllcache.

5. Copiar carregado termsrv.dll. dentro % Windir% system32 , % Windir% servicepackfiles i386 (se houver) e % Windir% system32 dllcache .

6. Ponto Faça o download e execute para mesclar os valores do Registro no Registery, ou você pode iniciar o Editor do Registro manualmente e adicionar as seguintes opções de registro:



"EnableConCurrentsessions" \u003d DWORD: 00000001


"AllowmultsSessims" \u003d DWORD: 00000001

7. Clique no botão Começar -> Executar E insira o comando gpedit.msc. , clique em ENTRAR Para abrir o Editor de Diretiva de Grupo.

8. Purge B. Configuração do computador. -> Modelos Administrativos -> Componentes do Windows -> Serviços de Terminal .

9. Desligue limite o número de conexões e definir o número de conexões em 3 (ou mais). A configuração permite mais de um uso do computador simultaneamente.

10. Siga a área de trabalho remota na guia Propriedades do sistema excluído selecionando o comutador Permitir que os usuários se conectem remotamente a este computador. .

11.Cound. comutação rápida do usuário dentro Painéis de controle -> contas de usuário -> Alterando o login ou desligamento do usuário .

12. Carregue um computador como de costume.

Obsouo se você não puder substituir ou reescrever o arquivo TERSERV.DLL - O acesso é negado ou erro de arquivo, desligue os "Serviços Terminais" na seção "Serviços" do Painel de Controle de Administração. Além disso, cada conexão física conectada deve ter sua própria conta de usuário no computador de destino e a autenticação deve ser realizada com o nome de usuário e senha apropriados das credenciais.

Para excluir e retornar ao original TERMSRV.dll, basta excluir a versão corrigida, bem como renomear o backup de volta para o "TERMSRV.DLL". Se os serviços de terminal estiverem incluídos e operando, você precisará fazer isso em um modo de segurança.

Se o computador S. Windows XP. conectado ao domínio, em rede local, janelas Haverá um valor de regal "AllowMultipletsessions" em "0" Toda vez que o computador não será reiniciado. Para um número múltiplo ou ilimitado de sessões de conexão remota à área de trabalho, ele é permitido no ambiente de domínio do anúncio, o valor de dados para "Allowmultsessessesssessions" que devem ser definidos como "1" com cada início do sistema. Para alterar o valor, basta reiniciar ts_multiple_sessions.bat. Cada vez que você inicia o computador. Também colocar ts_multiple_sessions.bat. dentro C: Documentos e Configurações Todos os usuários principais programas de menu Startup Pastas para que ele seja executado automaticamente para o primeiro usuário com os direitos do administrador. Outra solução é instalar servico adicional ou definição chave no ramo do registro Software HKEY_LOCAL_MACHINE. Microsoft Windows. CurrentVersion Run.Através do qual o arquivo em lote é inicializável automaticamente, e isso é útil se o computador não se registrar com ninguém, mas ainda requer que um funcionário permita conexões ilimitadas a uma área de trabalho remota para funcionar.

Outra coisa, se o usuário fechar compostos remotos Em vez de completar uma sessão quando ele tenta efetuar login novamente, uma mensagem de erro aparece com um evento TCP / IP. Para resolver este problema, baixe e instale o Windows XP TCP / IP, restringindo o patch de conexão e ID de Evento 4226 e instale a conexão pelo menos 50.

Esta montagem é construída sobre a forma original da versão russa do Microsoft Windows XP Professional SP3, com todas as atualizações! Disco de carga multi-carregamento. DOWNLOAD GRÁTIS -


Como nas versões do cliente passado sistemas operacionais As edições Microsoft, Pro e Enterprise Windows 10 podem ser conectadas remotamente a seus computadores por meio do serviço Remote Desktops (RDP). No entanto, há um limite no número de sessões de RDP simultâneas - a operação simultânea de apenas um usuário remoto é possível. Quando você tenta abrir a segunda sessão RDP, a primeira sessão do usuário é convidada a ser concluída.

Na verdade, o limite do número de conexões de RDP simultâneo não é técnico, mas sim licenciados proibindo com base posto de trabalho Servidor RDP para vários usuários.

Conselho. Nas edições domésticas do Windows 10, as conexões recebidas para a área de trabalho remota são completamente proibidas, o que, no entanto, pode ser derrotado com Biblioteca de wrapper rdp. .

Vamos olhar para duas maneiras de desativar o limite no número de conexões de RDP simultâneas para o Windows 10:

    Biblioteca de wrapper rdp.

    Alternativa à modificação do arquivo TERSRV.DLL é o uso do projeto Biblioteca de wrapper rdp.. Este programa funciona como uma camada entre o Gerenciador de Controle de Serviço SCM e os Serviços de Terminal (Serviços de Terminal) e permite que você não permite não apenas o suporte de várias sessões de RDP simultâneas, mas também para ativar o suporte ao Host RDP em edições de host do Windows 10. O Wrapper RDP não faz nenhuma alteração no arquivo TERSRV.DLL, simplesmente carregando os termosRV com parâmetros modificados.

    Assim, esta solução funcionará mesmo ao atualizar a versão do arquivo TSE0RV.dll, que permite que você não tenha medo das atualizações do Windows.

    Baixe o Wrapper RDP Você pode do repositório do Github: https://github.com/binarymaster/rdpwrap/releases (última versão disponível da biblioteca RDP Wrapper V1.6)

    Conselho. By the way, as fontes da Biblioteca de Wrapper RDP estão disponíveis, o que torna possível coletar arquivos executáveis, se desejar.

    O arquivo rdpwrap-v1.6.zip contém vários arquivos:

    • RDPWInst.exe Software de Instalação / Remoção RDP Wrapper Library
    • RDPCONF.EXE - utilitário de configurações de wrapper rdp
    • Rdpcheck.exe - Checker RDP local - Utilitário de verificação RDP
    • install.bat, uninstall.bat, update.bat - arquivos em lote para instalação, excluir e atualizar RDP Wrapper

    Para instalar o utilitário, execute o arquivo Install.bat com direitos de administrador.

    Depois que a instalação estiver em execução Rdpconfig.exe.. E certifique-se de que na seção Diagnóstico. Todos os elementos são pintados em verde.

    Estamos tentando abrir a segunda sessão do RDP. Tudo funcionou! Agora, nosso Windows 10 permite que você se conecte simultaneamente ao RDP de uma só vez para dois usuários remotos.

    Para pagar novas versões (se não alterar significativamente lógica do trabalho da seção Código correspondente), você deve fazer o seguinte:

    0. As instruções são adequadas para mais ou menos instruídas, e mais importante, especialistas inteligentes que sabem como pensar. Aqueles que estão acostumados a tudo "copiar" por cópia / pasta, parece, não vai lidar e poderá criar os "gemidos" e "inibir" que "muitos Bukov", "difícil" ou "niailyl" em virtude de mais medos e estereótipos de pensar em vez da complexidade do problema. Este é o seu lote. Nascido rastejando, como você sabe, não pode voar. Não entregue a secar, Anon! Beba Jada ou faça negócios e comece a respeitar-se!

    1. Baixe qualquer - pago ou versão gratuita Carta de vista
    Mesmo as versões muito antigas dos anos 90 são adequadas, mas se você precisar remendar x64, então precisamos de 8.x (a partir de meados de 2000x :)) melhor, é claro, tira fresco. O autor de 25 anos vem desenvolvendo um produto e há poucas criações perfeitas da habilidade do programador.

    2. Tome os termosRV.dll Alguma versão suportada - a versão original e panada. Se não houver franco - é razoável supor que é necessário prosseguir com o patenciador significativo não é idiota! Comece a pensar! Tudo arquivos Coloque em uma pasta ou pasta separada. Não há necessidade de tentar governar qualquer coisa em uma única cópia no System32. De qualquer forma, nada acontecerá (o registro é bloqueado no System32) e, portanto, faça apenas os RAMs.

    3. Compare versões corrigidas e não específicas da mesma DLL por qualquer comparador de arquivos binários. O utilitário console do console FC entra na janela. O "FC / B TERMSRV.ORG TERMESRV.CRK\u003e Differences.txt" leva a um lucro. Lista de diferenças, e é pequeno lá, linhas para 20, irá para o arquivo Differences.txt
    Abra o arquivo editor de texto E, ou, deixamos abertos ou reescrevemos em um pedaço de papel de que os bytes mudaram. Imperte imediatamente e entenda que todos os turnos e valores de bytes, bem como abaixo no visualizador, são indicados no sistema hexadecimal, mas não deve "assustar" isso, porque nem precisará se traduzir em decimal! (Se você precisar de repente, para o desenvolvimento geral - a calculadora do Windows para ajudar.)

    Na lista, vemos (detectar) 3 blocos convencionais, onde os endereços seguem em linha. O primeiro bloco - 2 bytes no início do EXE, por 140-C-Something-H (DLL tem o mesmo formato que o exe, a única diferença é que são apenas procedimentos e funções para uma chamada externa . Exportações, portanto, e diretamente o cumprem, renomeando-se no ex não terá sucesso). Este é os dados, as instalações de deslocamento caem no cabeçalho do arquivo EX. Nestas compensações são armazenadas verifique a soma Código de dados (sem título), que o Windows verifica antes de ser iniciado, certificando-se de que o arquivo não foi danificado e algo não se incomoda, com precisão, ao tentar executá-lo. Vamos voltar para eles mais tarde.
    Em seguida, um bloco de alterações é de aproximadamente 10 bytes. Isto é, o que vamos estudar. Depois disso, há outro bloco de mudança - o 6º bytes mais recentes do ex-shnik. A essência se resume ao fato de que, em vez de "Zerule", o autor dirigiu seu próprio nome "DeepXW" em um lugar vazio no final. Baixo arco para um patch e ideia, mas repetimos seus "delícias" ao transferir uma remessa de uma razão especial, portanto, pode fazer qualquer um que não tenha nada a ver com longas noites de inverno no quadro do estudo "tocando ordinários Peecles em assentos vazios exe arquivos usando o visualizador. No entanto, você pode percebê-lo como uma homenagem ao autor (apenas "lá" que ninguém lê).

    3. Aberto dLL original Em uma janela de carta de carta, planejada - na outra (inicie 2 cópias da carta! Em geral, muito mais conveniente de usar longe - dois sutiãs, como gerenciador de arquivos e base para o lançamento de "estes" posteriormente ". Em ambos clique F4 (modo) e selecione Decode (F3). Vamos ver uma parte de desmontagem do arquivo desde o início. Não há nada para assistir lá, pois está "tentando desmontar o título Arquivo exe.E este é os dados, não o código. Não há nada lá para olhar, e ele mostra que é completamente normal, pois é necessário pensar aqui, e não "copiar"! Nós vamos mais uma vez e começar a pensar que não há necessidade de tentar estupidamente e literalmente para cumprir as instruções ...

    4. Em ambos aviões (por sua vez, droga, pensamos ...) Pressione F5 (goto) e vemos que o campo de entrada apareceu no topo. Nós dirigimos o endereço da primeira diferença (do segundo bloco!) Encontrado no arquivo de diferença. Por exemplo, em Win7sp1x86rus, este endereçado na área de 19100h e em VistaSp2eng (x86 ou X64 - XS), como eu vi um blog do autor - endereços em torno de 65200h. Nós caímos no lugar do primeiro byte corrigido.

    Dados nesta janela de carta de carta têm o formulário:
    - Na primeira coluna - Hex offset - desde o início do arquivo ou na memória do processo, depende do modo de carta de carta selecionado por Alt-F1 (Global-Local). O padrão mostra local \u003d como na memória se o visualizador de carta pode desmontar o formato de código de dados. No nosso caso, esse problema não representa porque o formato do arquivo EX permite que seja fácil "descobrir". Portanto, você não precisa ter medo de ver 06f2f8d51 em vez do introduzido 19153. A abordagem de memória é importante para entender o endereçamento do processo, pois olhará ao executar, acomodação para análise de código, se necessário.
    - Na segunda coluna há uma apresentação hexadecimal de código de dados com uma análise em qual código e quais dados aos quais as instruções incluem. Portanto, cada linha de comprimentos diferentes. Mostrando tão exclusivamente para sua conveniência. "Na verdade," (c) no próprio arquivo, eles são todos "cegados" juntos - em uma fileira que você pode ver no modo "simples" visualização de dados hex (F4-\u003e hex), onde "estupidamente" para o esquerda é mostrada por hex bytes através de espaços, e à direita - "CRAKOZYABRY" da tabela ASCII, que estes bytes correspondem - como em "qualquer" Old-good "editor hexitrial tipo WINHEX cujas tópicos de tela você viu" qualquer "kulkhaqker" local na rede Internet. Todos nós o tempo todo trabalhamos com os mesmos bytes que realmente o computador faz. A questão é exclusivamente em sua apresentação e interpretação. Quando você copia o arquivo executável do disco para o disco - todos os dados e nenhum código, por ninguém executa qualquer coisa. Mas é necessário especificar o Windows que este é um arquivo executável, execute-o, pois o Windows desmonte seu código e dados e inicia o código de um padrão predeterminado e cabeçalho do site, após o qual o executável de código pelo processador é lido por sua estrutura e é dividida novamente no código e dados e assim por diante.
    No modo F4-\u003e Decode, em vez de "Krakoyar", mostra bytes e "verdadeiro significado".
    - Na terceira (direita) e maior coluna (mais precisamente, um par de colunas) mostra uma seção de desmontagem de código - texto, chamado. A apresentação "mnemônica" deste próprio código (idioma assembler), destinada a qualquer percepção simplificada e compreensível para um "homem de razoável", com seu maravilhoso pensamento associativo analógico, seqüências de código abstratas "nuas".

    5. Mudando para o deslocamento desejado no parágrafo anterior, vemos que o cursor (enxofre é :)), mostra o início do comando de 6 bytes (em x64 pode haver mais bytes) o tipo de instrução "desmontado" relevante CMP EAX,
    Se você fizer uma linha acima e menor, o tipo de tipo será lançado:
    MOV EAX,
    CMP EAX,
    Jz .06f30b25e.
    Empurre edi.
    Empurre 020.
    Chame .06f2e1440.
    POP ECX.
    Para entender este design, não é necessário ser "um conhecedor assembler", embora seja recomendado ter pelo menos conhecimento básico sobre o tópico "Programação em qualquer zyayka". Mas o conhecimento do inglês não impede ninguém!

    A primeira instrução (que não patrulha, é "acima da primeira diferença") chamada Mov - O que, desculpe, a primeira associação vem à mente do inglês? - Isso é certo - mover - isto é. Mover. As instruções argumentos vão no segundo "podstolebce". EAX e EDI são chamados. Os registros de 32 bits são células de memória única no próprio Poter, projetadas para armazenar dados durante o processamento. Quase todos os registros do mesmo tipo, teoricamente, pode ser escrito qualquer coisa, se fosse apenas, mas alguns deles são tradicionalmente usados \u200b\u200bpara armazenar esses tipos específicos (de modo a não ser confundido), por exemplo, EAX, EBX, O ECX, EDX são usados \u200b\u200bdiretamente para "dados do usuário", além disso, a ECX tradicionalmente vai como um metro (ciclos, por exemplo), e ESI, EDI - como ponteiros de uma certa posição atual na memória, endereçam-se para o qual funcionar. E parte dos registros dependentes de hardware e seu "melhor não tocar" - por exemplo, o registro IP contém automaticamente o endereço instrução atualQual processador funciona e, se você tentar gravar alguns de seus dados lá - a variável do seu programa, a porcentagem será burro para as instruções com este endereço e tudo trava. ESP - indica uma pilha - uma espécie de "garrafa", em que que primeiro subiu, o último sairá (punho durar), destinado a armazenamento temporário de dados, que não sejam colocados em registros, mas não faz sentido para impulsioná-los de volta à memória, será usado em breve. Para trabalhar com os dados, geralmente, um certo byte - 8bit, a palavra é de 16 bits, a palavra longa - 32 bits ou dupla palavra longa 64bit (para processadores de 64 bits) são colocadas a partir da memória para o registro. Para trabalhar com dados curtos, você pode entrar em contato com as partes do registro (EAX consiste em machado - a parte inferior de 16bit e ah e al - partes do próprio machado), mas isso está fora do nosso problema. Em seguida, uma determinada transformação da esteira é feita com os dados no registro, após o qual o resultado é colocado de volta à memória - no apertado de uma ou outra célula ou qualquer outra, destacada pelo autor (ou de seus compiladores) para alojamento.

    Em colchetes indicam endereços. Se você precisar tomar dados da célula de memória em algum endereço, e não o endereço em si, basta escrever o endereço em colchetes quadrados. O projeto de tipo significa que os dados devem ser retirados da célula de memória que possui um endereço cujo valor é obtido adicionando o valor no registro ESI + 324H. No montador, é costumeiro escrever mais claramente, mas o autor da carta era mais conveniente para mostrar tão possível para a clareza. Ao inserir os comandos de AVE, leva perfeitamente os tipos padrão de desenhos de tipo, que é mostrado abaixo.

    Total Entendemos que esta instrução leva os dados (4bit \u003d 32bit) para o endereço e os coloca no registro da EAX. A seguinte instrução ((que já é patches) - CMP. A primeira coisa que vem à mente de um leve, diligentemente eu aprendendo inglês na escola é comparar. Estamos falando de comparação. Caso contrário, a mesma coisa que na instrução anterior . Endereço apenas vizinho. Instruções
    CMP EAX,
    Compara o conteúdo da célula de registro e memória do EAx no endereço. No registro do EAX, a instrução anterior dirigiu o número da célula vizinha. Agora é comparado com um número da célula. O que é complicado, desculpe ??? Você pode ensinar a RAM! É certamente mais simples que os objetos "Multi-quilômetro" de algum tipo de Govnezub, estendendo milhares de propriedades em que você pode se afogar ...
    E quanto ao resultado? Compare comparado, bem, qual é o sentido, pergunta a um leitor atento ... como saber, onde o cão vasculhou? E o resultado é armazenado nos sinalizadores de sinalizadores de registro especial. Neste registro reservado, cada bit significa uma determinada caixa de seleção. Em particular, há uma bandeira zero - zero. Se, como resultado da execução da instrução de comparação, ela acaba que os números são iguais, a caixa de seleção será esmagada (1), se não, depois cair (0) (ou os adrches, com preguiça de olhar com um depósito - não importa). Da mesma forma, há outra caixa de seleção para mais ou menos - sinal. As bandeiras são alteradas nas instruções resultantes para alterá-las e permanecerão em sua posição até que sejam alteradas como resultado da execução de outras instruções que afetam sua condição. Portanto, após o CMP, podemos executar outras instruções, dependendo do status da caixa de seleção até cumprir a que a altera. O status dos sinalizadores é lido pelas instruções da transição condicional e de alguma outra e a ausência dessas instruções se torna alguma outra e a rotina.

    A próxima instrução está chegando
    Jz .06f30b25e.
    Instruções que começam em j [quase] todo o salto médio - salto, isto é. Transição para outro lugar. Esta instrução Refere-se às instruções da transição condicional e descriptografada como salto se zero - isto é. Vá para o endereço, se for o sinalizador zero. Se a caixa de seleção não vale a pena, "nada acontecerá". Como argumento, o endereço de transição é dado (eles são diferentes, parentes ou absolutos, "longe" ou "fechar" na memória. Aqui o endereço é especificado no espaço de endereço do programa, conforme configurado pelo cabeçalho EXE, Não há sentido, apenas complica. Se a instrução anterior revelar a igualdade de argumentos, a transição ocorrerá se não, o processador não acontecerá com a próxima instrução.

    As seguintes 2 instruções
    Empurre edi.
    Empurre 020.
    Lembramos que em inglês significa empurrar, empurrar. Aqui significa conduzir os números em uma pilha de armazenamento temporário. Freqüentemente, salve as variáveis \u200b\u200bantes de inserir o procedimento, o PC dentro do procedimento, os registros podem ser usados \u200b\u200bpara outros fins, e usando a pilha Você pode salvar os valores dos registros e transferir os argumentos para o procedimento que os tirarão A partir daí, depois de inserir, e os resultados serão bloqueados se assim forem disponíveis e necessárias. A conveniência é que não é necessário cuidar da alocação do espaço de endereço para armazenar os dados do tempo do volume essencial. Se você precisar passar uma matriz - basta dar-o ao endereço na memória. Todos os elementos da matriz não transmitem razão, é apenas a memória de memória e o processador inútil, como é feito durante o bydlooding. (Quando você precisar salvar a cópia original da matriz baseada na lógica do trabalho - esta é outra situação e o próprio programador se inicia conscientemente copiando a matriz para a finalidade de replicação.)
    Ao trabalhar com uma pilha, a medida em si cuida de tudo - a área de pilha é destacada pelo sistema operacional durante o suporte de hardware para processar.
    A primeira instrução economizará o valor do registro de ponteiro EDI a uma determinada área de memória, e o segundo será interrompido com antecedência 20h pré-definido. Provavelmente, um certo argumento do procedimento, mas não importa para nós, porque não há necessidade de fazer uma análise que o autor do patch fez - nós transferimos o patch acabado para outra versão do programa e isso normalmente, apenas!

    Próxima instrução
    Chame .06f2e1440.
    Em inglês, ligue para chamar, chamando.
    Estamos falando sobre o procedimento de chamada. Não há nomes nos procedimentos de código de procedimento - há endereços onde seu código está localizado. Por conveniência, os desmontadores (incluindo o PV) podem retirar os nomes dos procedimentos e funções das importações e exportações dos arquivos EXE (a perspectiva é interagida programas diferentes E as "bibliotecas" após compilação e procedimentos são dadas os nomes para os quais podem ser chamados de outro programa, mas os procedimentos internos não são nomeados após a compilação). Nas fontes, os nomes, é claro, eram, mas depois de compilar não poderiam ... apenas o lugar seria ocupado. O processador não precisa conhecer os nomes de alguém, ele considera que os números ... Às vezes descompactores / disassembleram conseguiram retirar os nomes dos procedimentos de informações de depuração (se outro bydlooder esqueceu-o para cortá-lo e inchado do tamanho do binário inútil info) E isso é útil para analisar o código, mas no nosso caso, até mesmo não se importa. Nós não precisamos entender por que este procedimento é necessário e o que ele faz ... eu te lembro, temos um patch pronto e se você conseguir transferir "sem aventura" para aproveitá-lo e não precisará.

    Últimas instruções
    POP ECX.
    Pop - Ação Inversa Push - i.e. Puxe a última unidade no valor. DENTRO este caso No registro do ECX. Provavelmente esta instrução precisa extrair o resultado do procedimento, mas também não nos importamos, incl. E porque esta instrução, como 2 push-a acima, e ligue, depois que o patch não muda e é dado para alguma apresentação geral e como um marco do patch. Após o patch, todas estas instruções permanecerão no lugar, assim como todos depois deles.

    6. Agora levamos os termos offedsrv.dll em outra janela de carta de carta, no mesmo endereço, olhamos para quais instruções estão lá.
    MOV EAX,
    MOV EAX, 000000100
    nop.
    MOV, EAX.
    Empurre edi.
    Empurre 020.
    Chame .06f2e1440.
    POP ECX.
    As diferenças são visíveis apenas na segunda, terceira e quarta instruções.
    Segundo MOV EAX, 000000100
    Basta digitar uma constante 100h (\u003d 256) no registro do EAX
    Terceiro nó.
    O mais "engraçado" \u003d Nooperation - nada faz qualquer coisa e para sempre. Por que ela é necessária? E eu preciso disso para alinhar a sincronização por dados de código. O fato é que as dimensões do código original e do pânico devem coincidir completamente no número de bytes e da fronteira das equipes (juntamente com seus argumentos). Se algo é deslocado pelo menos um byte, o processador "não", "perceberá um certo argumento de instruções, como um comando e bytes para ele - como os argumentos desse comando, mesmo que haja um código de comando diferente . Tudo vai comer imediatamente e fatalmente. 99% que o programa voará com um erro fatal. O comando nop tem um código de 90h e leva um byte. Se houver um código excessivo que não seja necessário ou mesmo prejudicial para os propósitos do patch, ele pode ser substituído por argumentos em tantos nops seguidos, quanto byte é preciso. Entre os hackers, isso é chamado de escalada ou afundada. Na verdade, essa é a única maneira de excluir um código excessivo do código executável, porque não é o texto e qualquer "cortado do meio" "para o propósito de encurtar" irá levar imediatamente ao que eles serão deslocados, vai comer todos os endereços e não funcionará. E o "pior" acontece quando o novo código que precisa ser substituído pelo antigo não escala o "velho" lugar ... Aqui ele começa a dor de cabeça do hacker - como puxá-lo para conseguir ...
    Quarto Mov, EAX
    Coloque o número do registro do EAX na célula de memória
    Em princípio, a terceira e quarta ou terceira e segunda instruções podem ser alteradas em lugares - não mudará nada. Mas é impossível remover o nó de qualquer forma, porque novos comandos ao longo do comprimento do código por byte são menos do que antigos e tal discrepância, se ele não aparecer o NOP-OHM, levará imediatamente à faixa de sincronização.

    Comparação "com o fato de que foi" imediatamente coloca tudo em seu lugar!
    Foi - levar um número da célula, compará-lo com um número da célula. Se você é igual, então "em algum lugar" salto, se não, então vá mais longe e execute o procedimento. No contexto do problema, assemelha-se a essa comparação do número de conexões permitidas com o valor válido (i.E. 1 para a estação de trabalho ou 2 para o servidor). O limite é armazenado em alguma constante, cujo endereço é especificado nas instruções de comparação.
    O que aconteceu - para assumir um número da célula, pontuação em "este negócio" e sobrescrever imediatamente o valor do registro constante EAx 100h (\u003d 256 - ou seja, aparentemente, um novo limite de 256 conexões), em seguida, coloque esse número no célula
    Ninguém compara qualquer coisa, o procedimento que é chamado abaixo sempre será concluído. Além disso, na célula, onde, obviamente, o limite de conexões "forçadamente" é escrito para um novo limite \u003d 256 no caso de outro lugar no outro local do programa, existem outras verificações desse limite. ISSO É TUDO! É difícil chegar a algo mais primitivo!

    Se tivéssemos que procurar este lugar por conta própria, eu teria que rastrear o depurador do procedimento desta DLL, como o autor do patch ou desmontar tudo como o IDA e estudar cuidadosamente o código contendo cuidadosamente milhares de instruções. Mas nós temos tudo pronto! É como uma piada sobre o mecânico, que uma vez jogou um martelo e o carro começou, mas a sutileza é que ele sabia onde bater e custa muito trabalho. (Apenas não precisa de dinheiro aqui - empurre-os sua bunda! Especialmente no aprison é um grande feriado! Para os amantes "ganhos na Internet" - há sites especializados.)

    Por que o patch não funciona em todas as versões subseqüentes - porque os endereços mudam e o código (seus argumentos) muda levemente ao compilar. Isso leva a um deslocamento do código desejado dentro do EXE para outros deslocamentos, e se você pesquisar por assinatura (sequência estrita de bytes), pode não encontrar os alarmes alterados. Muitos endereços também são argumentos de instruções e alteram o código binário para a Disassability, apesar do fato de que é tudo o mesmo ... Faça manualmente! Você tem uma cabeça nos meus ombros, não a "sequência estrita de convoluções" ...

    7. Agora, na versão original de termosRV.dll, que patchs patches, você precisa encontrar algum tipo de exclusivo, no contexto do programa, a seqüência do byte próximo ao local que precisa ser derramado para procurá-lo em nova versão TERMSRV.DLL, que você quer buscar, mas o patcher não está corrigindo ...
    É necessário assistir no desmontador, mas procurar por bytes para ele apropriado, e se você escolher algo muito "simples", então tal combinação se encontrará ao pesquisar muitas vezes e será difícil encontrar o lugar certo, será "afundando" entre o monte de outro semelhante. E somos extremamente importantes "precisão de ficar", porque se você perseguir "não lá", então não funcionará, e então as janelas vão ficar ...
    Selecione as instruções para a string de pesquisa contendo endereços fixos longos não podem ser. Ao compilar outras versões, eles provavelmente serão comidos e você não encontrará nada sobre eles na nova versão.
    Todo o procedimento é onde o cheque está acontecendo, pequeno, apenas algumas dúzias de equipes. Para montador é "nada". A carta mostrará os limites condicionais do procedimento como "bandas" _ ^ _ ^ _ ^ _ ^ _ ^ _. Observe que, no início do procedimento, há um recurso para o endereço "importação" procedimento Windows API - CDEFPolicy :: Query e Gêito Isso é intitulado (então o nome da função e ganhou e escreveu). Esta deve ser uma boa orientação para você, a caminho do lugar certo. Além disso, este "Kakbe sugere" que talvez haja uma maneira diferente de resolver o problema, por exemplo, encontrar uma certa política "secreta" responsável pelo comportamento do servidor de terminal. Aqueles que desejam podem salvar o código pelo depurador e pesquisar como a variável ou constante é inicializada com o número de conexões. Mas para o "Código de CDEFPolicy", é adequado, porque o endereço do procedimento nas importações é mais provável que seja na nova versão. Eu tentaria procurar por bytes desde o início do procedimento após CDEFolicy. La vai:
    57 empurrar edi.
    6A10 Push 010.
    8bf1 mov esi, ecx
    33dB XOR EBX, EBX
    57 6A 10 8B F1 33 dB
    No final, você pode adicionar mais código de instruções de chamada, indo em seguida, mas não seu argumento (próximo bytes), para este endereço e será alterado ao compilar novas versões.
    Tal seqüência me dá ao procurar em carta de carta (F7)
    Total 3 coincidência, e a chamada CDEFPolicy é visível no contexto em apenas um caso - no primeiro. Se você também tiver um lugar encontrado, escreva seu endereço da primeira coluna (depois de pressionar Alt-F1 - Global!) "Em um pedaço de papel" e tente patch.
    Se o código mudou tanto que nada fique, estamos procurando outras seqüências exclusivas, incl. Montado em procedimentos adjacentes e tentar procurá-los. Tarefa - Find. o código desejadoOnde "tudo coincide em significado", não uma sequência, pensamos nisso e olhamos para o contexto, tentando procurar por CDEfpolicy :: consulta na nova versão. Você pode procurar por texto CDEFPolicy :: Query no New.dll, você encontrará uma string (várias vezes), mas não um lugar onde é referido. Esse método às vezes ajuda a encontrar o desejado usando F6 (referência) no visualizador e eu consegui encontrar o lugar certo na DLL de Win7sp1x86rus por causa do experimento, mas não o fato de que todos os lugares terão sucesso, ainda mais com outros programas).

    8. Agora você precisa fazer o Dermsrv.dll da versão necessária para corrigir. Lançamos a terceira cópia do visualizador, abra a nova dll nele "(para alternar facilmente entre todos os três e comparar visualmente). Encontramos o lugar certo, como descrito ligeiramente mais alto ou ir ao endereço, que escreveu "em um pedaço de papel" (um pedaço de papel em um pedaço de papel neste mundo brilhante, onde os discos rígidos voam, bate as plugues e assobiadas OS).
    Analisamos o código abaixo CDEFPolicy :: Query e facilmente encontrar o lugar certo semelhante a:
    CMP EAX,
    Jz .06f30b25e.
    Entendemos que o endereço, mas se ele mudou, por exemplo, este é o endereço que você precisa e opera no futuro direito.

    9. Se você estivesse convencido de que descobri exatamente o que é necessário, olhe para o cursor para a instrução CMP e pressione corajosamente a edição F3. O cursor "cinza" mudará para o "normal" (para o modo de texto de exibição) - substituição. Deve indicar a mesma instrução CMP.
    Clique na guia (ou F2) e na caixa de diálogo de entrada de instruções da montagem aparecerá.
    Digite as instruções lá
    MOV EAX, 100
    Então entre. Na tela principal, será visto que os bytes "da instrução" mudaram e alguns deles se tornaram o "dourado" (amarelo). Ao mesmo tempo, as instruções abaixo "movidas" e na coluna da direita em frente a eles mostra "Belibred" - não em tudo o que havia antes.
    O diálogo de entrada de comando sobre a janela principal continua a "travar" e aguarde a entrada de novas instruções, mostrando algum tipo de próximo, incorretamente interpretado, devido ao congresso de endereçamento, instrução.
    Esta instrução não paga a menor atenção e impulsiona o seguinte.
    Vbe nop e pressione enter
    Principalmente janelas amarelas iluminadas próxima string com código 90.
    A sincronização será restaurada e o próximo comando será novamente jz. Será oferecido para alterar a caixa de diálogo de entrada de instruções.
    Dirija lá
    MOV, EAX.
    Se em vez de 320 no comando CMP havia um endereço diferente, então dirija-o!
    Pressione Enter. Depois disso, o código iluminará o código na linha 3, à direita da qual deve ser o MOV manual, EAX (ou não 320, e o número que foi conduzido).
    Nós verificamos que não movi a sincronização do código de dados. A próxima instrução deve ser empurrada Edi (ou outra se o código tiver mudado grandemente e você tinha uma instrução diferente para o patch lá - deve permanecer no meu lugar e interpretado corretamente, o que indica que tudo está bem ao lado dela).

    Quando todo mundo bateu, pressione ONC. A caixa de diálogo de entrada de instruções desaparecerá, mas pode ser chamada de novo a qualquer momento (no modo de edição) pressionando a guia. Todos os bytes modificados terão amarelo. Confira que tudo parece corretamente, nem coberto. Ninguém vai verificar por você aqui, nenhuma "proteção contra tolos" de qualquer rank e nenhum título. Ninguém não considerará o Regalia. O que eles fizeram - eles conseguiram. Naulult - vai pendurar e trabalhar não vai.
    Se tudo ok está pressionando F9 (atualização). As alterações serão registradas no arquivo no disco e os bytes modificados mudarão a cor para o habitual (ciano).

    10. Agora você precisa corrigir a soma de verificação do EXE. Faça antes da loucura chata, olhe para que o Hiew faça este trabalho para você e não fará quase nada para fazer. Clique em F8 (cabeçalho). A janela "Gray Westesp" aparece com a "decodificação" dos parâmetros do cabeçalho do arquivo EXE.
    Clique em F3 (editar). No topo da janela "não-brilhante" aparece "cor" roxo. Ele lista todos os parâmetros do cabeçalho indicando seus endereços e valores. Com uma folha de rosto chata mais próxima para um fim e encontre o parâmetro de soma de verificação lá. É indicado à direita (na verdade o resumo de verificação) na expressão hexadecimal e decimal permanecendo "para herança" do arquivo não-entregue original. Pressemos F3 novamente e, sobre um milagre, a string é pintada em amarelo e a soma de verificação altera seu valor. Podemos acreditar no visualizador, e podemos encontrar nos fóruns ou em livros e calcular manualmente. Se "tudo estiver satisfeito com" Clamp F9 (atualização). A janela flashes, tudo desaparece ... Este é o fim, pensa no leitor de uninimal. Mas quando a poeira está caindo, a soma de verificação acaba por estar correta. Insetivo pode novamente ir para o diálogo mencionado e comparar a soma de verificação cuidadosamente salva para a execução no bakap em um pedaço de papel. Você pode deixar a carta no CES e passar para o passo de teste do seu compartilhamento.

    11. Tendo recebido um arquivo ofegante, você pode tentar substituir os termosRV.dll no sistema operacional de destino.
    Devido aos mecanismos de proteção das janelas da mudança arquivos do sistema, bem como proibição de gravação programas em execução Compartilhar violação) precisará parar o serviço de serviços de terminal.

    Se tudo funciona, então você se tornou um kulkhakker ou fez o primeiro passo consciente neste caminho. Ninguém incomoda você para escolher e aprender mais, tornando o mundo melhor e mais gentil. Em Nete há muitas instruções e fóruns temáticos inteiros para aqueles que querem pensar em suas cabeças, e não só consomem uma pornografia multiplicadora da matriz.

    Não marque uma lista de bytes modificados (você pode obtê-lo com a ajuda de todos os mesmos "" FC / B file1 file2 ") para outros usuários menos sofisticados, aqui e / ou em outros recursos, como o Bom vizinho, como Senhor legado e glorificar seu nome nos anais da história do Hacker.

    De acordo com a lista de alterações, você pode fazer arquivo .crk (para os patches que entendem este formato antigo) ou fabricar Patch.exe com a ajuda de qualquer fabricante de patch, Koi, ao longo dos anos de evolução, escreveu dezenas e centenas. Basta escolher então "com suporte do Windows Vista / 7 "para velho, embora bom-adequado, mas não sei nada sobre privilégios escalados, e o Windows não irá estupidamente permitir que qualquer coisa corrige em arquivos Windows / Sistema ou Program. Nas instruções, mencione o requisito de interromper o serviço de terminais, ou usando patches em arquivos em pastas individuais, seguido pelo submenu no System32 pelos próprios usuários. Em qualquer caso, publique uma lista de mudanças, não queime em "Lavra", a perspectiva para alguém pode ter que foder manualmente e informações encontrará uma solução alternativa. O patchador do autor faz tudo isso automaticamente, incluindo o trabalho com o WINSXS - assistiu o código, mas encontre um patchmaker de modo que tudo isso leva em conta, ele será considerado não apenas.