どのように私はこのDOS exeファイルのBIOSのアップデータからROMファイルを抽出するのですか?


0

DELL VOSTRO 260 BIOSをアップデートしようとしています。私はどこにでもたどり着くのに苦労しています、より多くの情報を見てください:

私は単にflashromを直接抽出することにしました。私は単にexeファイルからROMを抽出するために、点滅するステップを実行しようとしていません。だから私はexeファイルをダウンロードしてdosemuを使用してそれを実行しようとすると、これは私が得るものです:

$ wget http://downloads.dell.com/FOLDER01639275M/1/MS-A10.exe
$ dosemu -dumb MS-A10.exe > log
$ cat log
SfxDos v2.11. [2012/06/25]
Extracting Files: [6174382 / 6174382] 100%  
Missing SMBIOS Table

これはどういう意味ですか?誰かがそれらのexeファイルから実際のファームウェアを抽出することに成功しましたか?私は何も動いているのを見つけることができませんでした:

$ unrar l MS-A10.exe 

UNRAR 5.00 beta 8 freeware      Copyright (c) 1993-2013 Alexander Roshal

MS-A10.exe is not RAR archive

または

$ unzip -l MS-A10.exe 
Archive:  MS-A10.exe
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
unzip:  cannot find zipfile directory in one of MS-A10.exe or
        MS-A10.exe.zip, and cannot find MS-A10.exe.ZIP, period.

参考のため:

$ file MS-A10.exe 
MS-A10.exe: MS-DOS executable

この自己解凍型DOS exeファイルからROMファイルをどのように解凍しますか?


どういう意味ですか? MS-DOS実行可能ファイルを抽出することはできません。エラーは、あなたが扱っているものがアーカイブではないことを明確にしています。
Ramhound

ちなみに、これは「MS Windows用のPE32実行可能(GUI)Intel 80386」です。 ;)また、インターネットは「SfxDos」、おそらくいくつかのDELLを知らない 自作 溶液。
Daniel B

@ daniel-bこれがPE32 exe(GUI)であることをどのように認識しましたか?
malat

それがCygwinとGentooの両方の成果です。 file コマンド。あなたのディストリビューションのマジックファイルはそれほど良くないと思います。
Daniel B

回答:


2

実のところそれは些細なことで、ワインの下でそれを実行するだけです。

$ wine MS-A10.exe

出力は.wineディレクトリにあります。

$ find $HOME/.wine | grep MS-A10
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/AFUWIN.EXE
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/AMIFLDRV.VXD
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/AMIFLDRV64.SYS
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/AMIFLDRV32.SYS
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/RosaBUU.exe
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/Pmxdll.dll
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/Idrvdll.dll
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/FWUpdLcl.exe
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/settings.ini
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/error.log
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/1176upd.BIN
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/AFUWINx64.EXE
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/RosaBUU.log
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/MS-A10.BIN
/home/mathieu/.wine/drive_c/users/mathieu/Temp/MS-A10/FWUpdLcl64.exe

と:

$ file MS-A10.BIN
MS-A10.BIN: Intel serial flash for PCH ROM

私はこれがこのBIOSアップデートを行おうとしている人にはほとんど興味を持っていないと思います、あなたはWin7 / 32bits修復ディスクを使うことはオプションではないことを知っておくべきです(私は ここに )確かに実行時に必要なDLLはoledlg.dllが見つかることを必要とします:

$ objdump -x RosaBUU.exe  | grep DLL
 vma:            Hint    Time      Forward  DLL       First
    DLL Name: dbghelp.dll
    DLL Name: KERNEL32.dll
    DLL Name: USER32.dll
    DLL Name: GDI32.dll
    DLL Name: COMDLG32.dll
    DLL Name: WINSPOOL.DRV
    DLL Name: ADVAPI32.dll
    DLL Name: SHELL32.dll
    DLL Name: COMCTL32.dll
    DLL Name: SHLWAPI.dll
    DLL Name: oledlg.dll
    DLL Name: ole32.dll
    DLL Name: OLEAUT32.dll

どうやらこのDLLはWin7 / 32bits修復ディスクからは存在しません。


1

ROMを抽出するためのコマンドラインスイッチがあります(Windowsが必要です)。

MS-A10.exe /writeromfile

0

追加のパラメータ「 - 」を指定してEXEファイルを実行したときの出力は何ですか。 ?
使用可能なコマンドラインオプションの一覧が表示されるかもしれません。

DOS用の古いバージョンのRARで作られている場合は、通常 "-x"は直後にBIOSフラッシャーを実行しようとせずに抽出のみを行います。

とにかく: あなたは、Linux環境内からDOSベースのフラッシュユーティリティを実行することは決してできないでしょう。それは実際にあなたが見ているSMBiosメッセージを引き起こしています。それはそれがBIOSチップを見つけることができないことを意味します。 dosemuのようなエミュレータは役に立ちません。 DOSコマンドにハードウェアへの必要な低レベルアクセスを与えることはできません。

最善の選択肢は、FreeDOSでUSBブートスティックまたはブータブルCDを作成し、そこからEXEを実行することです。それはまったくEXEを解凍する必要はありません。 (読み取り専用メディアから実行するときは、RAMディスクを作成し、そこからEXEを実行するようにFreeDOSをセットアップする必要があります。BIOSファイルを抽出するための書き込み可能な作業ディレクトリが必要になります。)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.