web-dev-qa-db-ja.com

Windows10をだましてもっとあると思わせる方法RAMでは、そうですか?

私は1GBのRAM(私は知っている-悪い購入の選択!!)を持っているコンピューターを持っています。プログラムをインストールしたい BlueStacks 、しかしそれは2を必要としますGBのRAM。

プログラムを簡単にインストールできるように、2GBのRAM(ない場合でも))があることをWindows 10に伝える方法はありますか?

3
William V.

この場合、本当にやりたいことは、Windows自体ではなく、特定のアプリケーションをだますことです。

潜在的な問題

まず、明らかに、そのような構成はプログラムでサポートされていません。ですから、それは本当にあなた自身のリスクです。

プログラムを実行すると、ページファイルを使用して、インストールされている物理メモリを超えるRAMの割り当てを処理できると思うかもしれません。残念ながら、これは可能であるため、常に機能するとは限りません。問題のプログラムの場合、具体的には request 物理メモリです。少なくとも1つの仮想マシン/ハイパーバイザーを認識しており、Bluestacksが同じボートに搭載されていても驚かないでしょう。

一般的な方法

基本的には、インストーラーをだましてプログラムをインストールさせるか、プログラムを起動したときにチェックされる場合はプログラム自体をだまします。これらのプログラム/インストーラーは、インストールされているメモリをチェックするときに、Win32API関数を呼び出して物理メモリ量を取得する必要があります。彼らが呼び出すことができる関数のいくつかの例:

どういうわけか、これらの関数が偽の/誤った結果をプログラムに返すようにする必要があります。

一般的な考え方として、デバッガー(windbgなど)を使用して、これらの関数にブレークポイントを設定し、そこから戻り値を操作することをお勧めします。これは手動のプロセスであり、おそらくインストーラーに適しています。プログラム自体がこれらのチェックを実行する場合は、自動化されたものが必要になります。

タスクに満足している場合は、問題のAPIをDLL thathooks)と記述して、挿入することができます。 DLLをプロセスに追加します。その後、カスタムランチャーから実行できます(...これは、アクティベーションクラックに疑わしいほど似ています)。 EasyHook迂回 これを簡単にします。

WinAPIOverride などのツールも役立つ場合があります。そうすれば、自分で何かを書く必要がなくなるかもしれません。 (注:私はこのプログラムを使用したことがなく、システムの安定性または整合性にとって安全であるかどうかについて、いかなる主張も保証も行いません。自己責任で使用してください。)

MSIインストーラー

インストーラーがMSIインストーラーの場合、それは少し特殊なケースです。バイナリインストーラーとは異なり、MSI形式はかなり文書化されたデータベースであり、それを編集するためのツールが存在します。 必要な最小サイズが単にインストーラーのプロパティとして保存されている場合は、インストーラーを編集して変更できます。ただし、カスタムアクションなどとして埋め込まれている場合、そのようなアプローチは機能しない可能性があります。

このMSDNフォーラムスレッド アイデアについて簡単に説明します(Ji.Zhouによる応答を参照)。残念ながら、彼はOrcaでMSIを検討することを提案していますが、このシナリオではおそらく適用できないとも述べています。

6
Bob

仮想マシンからいくつかのコードを使用して仮想RAMを取得し、専用のイメージファイルを使用してミニVMを作成し、VMに2GBの仮想RAMを搭載するように指示できると思いますが、私は仮想化の専門家ではありません。私もWindows10を実行するタブレットを持っているので、答えを見つけることに意欲的です。2ギガのRAMが搭載されていたので、エイリアンアイソレーションをプレイしたいと思います。以前の経験から、エイリアンアイソレーションは最低のグラフィック設定で1.8ギガを使用することを知っています。前の回答に記載されていることを試して、このゲームや他のゲームを私のリルポテトタブレットで実行できるかどうかを確認します。

0
doobie