[新しく発言をつくる] [HPへ戻る] [『ファンタシースターオンライン』 裏シークレットBBS]

エセ!先月のPSOはどうって事なかったろ? の続きの続きの続き

  エセ!先月のPSOはどうって事なかったろ? の続きの続きの続き 道場主 2014/09/01 01:56:38 
  改造!先月のPSOはどうって事なかったろ? 道場主 2014/10/01 08:27:01 
  │└続き。 道場主 2014/10/01 08:28:57  (修正1回)
  │ └続き。 道場主 2014/10/01 08:30:54 
Re: 続き。 [返事を書く]
続き。


ところで、ウチで使ってるPhotoShopは3.0.5Jなんで、
256MBを超えるRAMを持つマシンだと、
「Photoshop を起動するためのメモリ(RAM)が足りません。」
というエラーが出て起動しない事がある。

この手のエラーは、PhotoShop LE以前の、
Windows 2000以降で使われる事を前提としていないバージョンで起きる。
つまり、メモリ容量の取得方法に問題があると考えられる。
という事は、そこをパッチしてやれば、動く可能性があるはず。

てなわけで、OllyDbgでエラーが出る様子をトレースしてみる。
すると、RAM容量を取得するルーチンで、
(kernel32.dll内の)GlobalMemoryStatus関数を使っているのを見つける。
このGlobalMemoryStatus関数は古い関数なので、
VLMを使っているマシンでは正常に機能しない。
VLMを使っている場合、GlobalMemoryStatusEx関数を使わなければならない。

そこで、

-----
005CF8F4 CC INT3
005CF8F5 CC INT3
005CF8F6 CC INT3
005CF8F7 CC INT3

005CFA30 FF15 68BA6A00 CALL DWORD PTR DS:[<&KERNEL32.GlobalMemory>]
-----

これを、

-----
005CF8F4 7AF9817C DD PHOTOSHP.7C81F97A

005CFA30 FF15 F4F85C00 CALL DWORD PTR DS:[5CF8F4] ;KERNEL32.GlobalMemoryEx
-----

と、パッチ。
で、動かしてみると、ちゃんと起動するように。
でもまぁ、メモリの取得とかがまだ変みたいなんで、
ちゃんとするにはもっと弄る必要が有るかも。


続く。
道場主 <olwlsovmys> 2014/10/01 08:30:54 [ノートメニュー]
  │  └続き。 道場主 2014/10/01 08:32:26  (修正2回)
  │   └続き。 道場主 2014/10/01 08:33:44  (修正1回)
  │    └続き。 道場主 2014/10/01 08:35:41 
  │     └続き。 道場主 2014/10/01 08:36:27 
  不条理!先月のPSOはどうって事なかったろ? 道場主 2014/11/01 05:36:43 
  時代が追い付いた!先月のPSOはどうって事な... 道場主 2014/12/01 07:07:18 

[『ファンタシースターオンライン』 裏シークレットBBS] [HPへ戻る]
新規発言を反映させるにはブラウザの更新ボタンを押してください。



[レンタルPHP] [無料小説] [DVD]