EXE/DLLなどのリソースをRESファイルへ変換する[iResEditor.js]
実行ファイルのリソースをRESファイルへ変換する方法です。
iResEditor.jsの入手
iResEditor
http://www.petitmonte.com/labo/iResEditor/
サンプルコード - Sample code
リソースの「Bitmap、Menu、Dialog、String Table、Accelerator、RCData、Message Table、Version Info、HTML、Manifest、Ribbon、Toolbar」をRESファイルに変換します。「Icon、Cursor」は画像形式に変換されます。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script src="zip.min.js"></script> <script src="iResEditor.js"></script> <script> function onDragOver(event){ event.preventDefault(); } function onDrop(event){ onAddFile(event); event.preventDefault(); } function onAddFile(event) { var files; var reader = new FileReader(); var filename; if(event.target.files){ files = event.target.files; }else{ files = event.dataTransfer.files; } reader.onload = function (event) { var stream = new Uint8Array(reader.result); try{ // PEファイルの読み込み var ResEditor = new TResEditor(filename); ResEditor.LoadFromStream(stream,true,true); if(ResEditor.PEAnalyst.IsPacked){ alert('このファイルは圧縮されています。'); return; } if (!ResEditor.ExtractResFile('res_xxx.zip')){ alert('RESファイルに変換するリソースがありません。'); } }catch(e){ alert('Error : ' + e); } }; if (files[0]){ filename = files[0].name; reader.readAsArrayBuffer(files[0]); document.getElementById("inputfile").value = ''; } } </script> </head> <body ondrop="onDrop(event);" ondragover="onDragOver(event);"> <div style="height:500px;width:500px;"> <input type="file" id="inputfile" onchange="onAddFile(event);" > </div> </body> </html>
iResEdtor関連記事
リソースの文字列を編集する
リソースをRCファイルへ変換する
リソースをRESファイルへ変換する
リソースをバイナリファイルで抽出する
コードセクションを抽出する
データセクションを抽出する
全てのセクションを抽出する
エキスポート情報をCSVに変換する
インポート情報をテキストに変換する
隠しコードを取得する
リソースをTreeViewで表示する
スポンサーリンク
関連記事
公開日:2016年07月21日
記事NO:02079
この記事を書いた人
![]() | 💻 ITスキル・経験 サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。 画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ |
プチモンテ代表、アーティスト名:プチモンテ | |
🎵 音楽制作 BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は叙情詩、叙情的な楽曲が多い。楽曲制作は2023年12月中旬 ~ |
オリジナル曲を始めました✨
YouTubeで各楽曲を公開しています🌈
https://www.youtube.com/@petitmonte