Como enganar o Windows 10 em pensar que tem mais memória RAM, então?

2

Eu tenho um computador com 1 GB de RAM (eu sei - má escolha de compra !!). Gostaria de instalar o programa BlueStacks , mas requer 2 GB de RAM.

Existe uma maneira que eu possa dizer ao Windows 10 que ele tem 2 GB de RAM (mesmo que não seja) para que eu possa instalar programas facilmente?

    
por William V. 24.01.2017 / 02:13

2 respostas

4

Neste caso, o que você realmente quer fazer é enganar um aplicativo específico, não o próprio Windows.

Problemas potenciais

Em primeiro lugar, obviamente, essa configuração não é suportada pelo seu programa. Então é realmente uma coisa do seu próprio risco.

Você pode estar pensando que, depois de ter o programa em execução, você pode confiar no arquivo de paginação para manipular quaisquer alocações de RAM acima da memória física instalada. Infelizmente, isso nem sempre funciona, já que é possível que o programa em questão solicita memória física especificamente. Estou ciente de pelo menos uma máquina virtual / hypervisor que faz isso, e eu não ficaria surpreso se o BlueStacks estiver no mesmo barco.

Método geral

Basicamente, você quer enganar o instalador para permitir que você instale o programa, ou o programa em si, se acontecer de verificar quando você iniciá-lo. Quando esses programas / instaladores verificam a memória instalada, eles devem chamar as funções da API do Win32 para recuperar a quantidade de memória física. Alguns exemplos de funções que eles poderiam chamar:

Você precisará, de alguma forma, fazer com que essas funções retornem um resultado falso / incorreto ao programa.

Como uma ideia geral, você quer usar um depurador (por exemplo, windbg) e definir um ponto de interrupção nessas funções, de onde você pode manipular o valor de retorno. Este é um processo manual e talvez mais adequado para o instalador - você vai querer algo automático se o programa em si executa essas verificações.

Se você se sentir à altura da tarefa, poderá escrever uma DLL que conecta as APIs em questão e, em seguida, injetar a DLL no processo. Você pode fazê-lo a partir de um lançador personalizado (... isso está parecendo suspeitamente semelhante a rachaduras de ativação agora). Bibliotecas como EasyHook e Detours tornam isso mais fácil.

Você também pode encontrar ferramentas como WinAPIOverride úteis. Aquele pode deixar você evitar ter que escrever nada. (Nota: Eu nunca usei este programa, e não faço reivindicações ou garantias sobre se é seguro para a estabilidade ou integridade do seu sistema. Use a seu próprio risco.)

instaladores MSI

Se o instalador é um instalador MSI, então é um caso especial. Ao contrário dos instaladores binários, o formato MSI é um banco de dados bastante bem documentado e existem ferramentas para editá-lo. Se o tamanho mínimo requerido é simplesmente armazenado como uma propriedade do instalador, você provavelmente pode editar o instalador para alterá-lo. No entanto, se eles estiverem incorporados como ações personalizadas etc., essa abordagem poderá não funcionar.

Este tópico do fórum MSDN discute brevemente a ideia (veja a resposta de Ji.Zhou). Infelizmente, embora ele sugira dar uma olhada no MSI com o Orca, ele também diz que provavelmente não é aplicável neste cenário.

    
por 24.01.2017 / 02:59
-1

Suponho que você poderia usar algum código de uma máquina virtual para obter ram virtual e criar um mini-vm com um arquivo de imagem especializado e dizer ao vm para ter 2 GB de RAM virtual, mas não sou especialista em virtualização . Estou motivado para encontrar uma resposta também, como eu tenho um tablet que acontece para executar o Windows 10. teve 2 GB de memória RAM, e eu quero jogar isolamento alienígena sobre ele. Eu sei da experiência anterior que o isolamento alienígena em usa 1.8 shows nas configurações gráficas mais baixas. Vou tentar as coisas listadas na resposta anterior para ver se consigo este jogo, e outros jogos para rodar no meu tablet 'lil'.

    
por 12.01.2018 / 19:33