******************************************************************************** [ ソフト名 ] nandemoExe [ バージョン ] Ver.1.02 [Architecture] x86 [CharacterSet] Unicode / MBCS [ 種別 ] フリーウェア [ 対応OS ] Windows 95/98/Me/NT/2000/XP/Vista/7/8/10 以降 [必要ランタイム 等] Comctl32.dll Version 4.70 以上 (IE3.x以上に入っています) [ 動作確認 ] Windows 98SE/2000/XP/7/10 [ 開発者 ] 冬野 善文 GPG Key fingerprint = 9EAB EE16 6F97 D6D0 D0E1 250E EC99 07F9 44DC 1469 [ Web Site ] http://hp.vector.co.jp/authors/VA052754/ [ メール ] WebSiteのトップページか、同梱版Readmeをご覧ください。 ******************************************************************************** ■はじめに ダウンロードしていただきありがとうございます。 nandemoExe は、あらゆるファイル(複数可)を exe に変換するソフトウェアです。 もともとは、WSH(wsf, js, vbs, jse, vbe)や bat ファイルなどを exe 化することを 目的に開発したものですが、その他のファイル(hta, txt, jpg, mp3, 他)を exe化 することも可能です。 生成した exe ファイルは、変換時に圧縮と暗号化を施されています。 また、生成した exe ファイルの実行時に、本来の実行したいファイルに対して、 コマンドライン引数を渡して起動させることも可能です。 レジストリは使用しません。 USBメモリなどに入れて持ち運びできるポータブルソフトでもあります。 ■Unicode版 と MBCS版、どちらを使うべき? Windows 95/98/98SE/Me をご使用の方は、「MBCS版」をご利用ください。 Windows NT/2000/XP/Vista/7 以降 をご使用の方は、「Unicode版」をご利用ください。 ■動作環境 ・Windows 95/98/98SE/Me 以降 (MBCS版)  Windows NT/2000/XP/Vista/7/8/10 以降 (Unicode版) ・Comctl32.dll Version 4.70 以上 (IE3.x以上に入っています) ■インストール 適当なフォルダに展開してください。 ■アンインストール ・設定を保存した場合、設定はすべて exeファイル と同じディレクトリにiniファイル  として保存していますので、フォルダごと削除すれば完了です。  ただし、exeファイルと同じディレクトリに対する書き込み権限がなかった場合は、 %APPDATA% に設定が保存されています。 ・Windows Vista 以降で、 Ver.1.01 以前をProgram Filesフォルダ以下にインストール し使用したことがある場合 VirtualStoreに設定ファイルが保存されているかもしれません。  同じディレクトリにiniファイルがなかった場合は、そちらを確認してください。  例として、%ProgramFiles%\nandemoExeにインストールした場合、  %LocalAppData%\VirtualStore\Program Files\nandemoExe  にiniファイルがあります。 ・レジストリは使用していません。 ■使用方法 変換したいファイル(複数可)をドラッグ&ドロップしてリストビューに登録します。 ・exe ファイル以外であれば、何でも変換可能です。また、 exe ファイルは、  実行したいファイルとはできないだけで、変換ファイル群として含めることは可能  です。 ・フォルダごとドラッグ&ドロップで追加できますが、フォルダ構造は保持しません。 ・リストビュー内のファイルは、delキーで登録解除できます。(複数選択も可能です)  また、ファイルをダブルクリックすることで、そのファイルがあるディレクトリを  開くこともできます。 ・リストビュー登録後にファイルサイズが変わる操作をしないでください。 実行したいファイルをクリックして選択状態にします。変換したいファイルが1つの場合 は、わざわざ選択状態にする必要はありません。 選択しない場合はリストの先頭にあるファイルが選択されたものとみなします。 画面右側で、生成する exe の設定を変更できます。 変更できる項目は、  ・プロセス優先度  ・ウィンドウの表示状態  ・Vista以降で、管理者として実行するかどうか  ・Packer を使用するかどうか  ・exe ファイルのアイコン  ・exe ファイルのバージョン情報 です。 (NT+) とある項目を変更するには、Windows NT 以上の NT系OS が必要となります。 同様に、(W2K+) とある項目には、Windows 2000 以上が必要となります。 exe ファイルのアイコンとして使用できるのは 15 MiB までのicoファイルです。 「Vista以降で、管理者として実行」で選択できる項目はそれぞれ、  * manifest を埋め込まない: 親プロセスと同じアクセス権限。 UAC の仮想化有効  * asInvoker: 親プロセスと同じアクセス権限。仮想化無効  * highestAvailable: 現在のユーザが使用可能な最も高いアクセス権限。仮想化無効  * requireAdministrator: 管理者権限を要求。仮想化無効  * Custom Manifest file: ユーザが指定した manifest ファイルを埋め込む。 となります。 「Packer Setting」で Packer のパラメータを変更できます。 Packer にはとりあえずメジャーな UPX を同梱していますが、他の Packer も利用 できます。 パラメータ中では、以下の2つの変数が利用できます。  %INPUTFILE%  %OUTPUTFILE% %INPUTFILE% の方は任意です。上書きができないような Packer を使用する時に使って ください。 %OUTPUTFILE% は必須です。これが出力ファイルとなるよう設定してください。 画面右下にある圧縮レベルは、exe ファイルに含めるファイル群の圧縮レベルです。 スライダーを左へ移動すれば速度優先、右へ移動すれば圧縮率優先となります。 高圧縮にすればするほど、 変換/exe実行 時にメモリを必要とします。(変換する ファイルサイズが巨大な場合、 変換/exe実行 時にメモリ不足となる可能性がありま す。その場合は、メモリ不足であるという旨のエラーを表示し、処理を中止します。) デフォルトの圧縮レベル以上では、マルチスレッドで圧縮処理するようになるので、 マルチコアCPUなどを搭載しているPCですと、圧縮率を落とすことなく高速処理が可能 です。 最後に「処理開始」ボタンをクリックすれば、選択状態にしたファイルと同じ場所に exe ファイルが生成されます。 画面下にある「S」,「L」ボタンは、 現在の設定を保存 / 保存された設定を読み込み ボタンです。 ・コマンドラインオプション Usage: nandemoExe.exe [OPTION]... [FILE] Options: -as 起動時に自動で処理を開始する (autostart) ・Tips exeのあるディレクトリまでのフルパス が必要な場合は、環境変数の ndeExeDirPath にセットされています。 同じく、 exeファイル名 は、 ndeExeName にセットされています。 環境変数は、その exe ファイルと子プロセスでのみ有効なものであり、システムの環境 変数を変更するわけではありません。 含めたファイルを、何か指定の exe で実行したいような場合は、WSH やバッチファイル でスタータを作り、それを実行したいファイルとして選択状態にすることで可能です。 生成した exe ファイルの実行時に、本来の実行したいファイルに対して、 コマンドライン引数を渡して起動させることも可能です。 (生成した exe ファイルに渡したいコマンドライン引数をつけて実行してください) Sample フォルダに exe 変換前のファイルをいくつかサンプルとして入れてあります。 参考にしてください。 ・Sample フォルダ内のファイルの説明 BatchFile.bat :単独でexe化して実行してみてください。 run-calc.bat :単独でexe化して実行してみてください。(電卓起動) run-cscript-js.bat :JScript.js と一緒にexe化(JScript.js のスタータ) JScript.js :単独でexe化して実行してみてください。 VBScript.vbs :単独でexe化して実行してみてください。 WSH.wsf :VBScript.vbs と一緒にexe化(VBScript.vbs のスタータ) Sample フォルダ内のサンプルは、パブリックドメインとします。よって、サンプルファ イル中のソースコードの 全部/一部 を、自分のソースコードに取り込んで使っていただ いても構いません。ご自由にお使いください。 WSH を変換する場合で、ソースコードを読まれたくない場合、 exe 化する前に Script Encoder などを使用しておくとなおいいかもしれません。 http://www.microsoft.com/downloads/details.aspx?FamilyID=2976ee94-bec5-4314-84fd-8d7ec891c1c5&displayLang=ja ただし、Script Encoder の復号は簡単ですので、初心者避け程度とお考えください。 ■生成された exe ファイルについて 生成された exe ファイルは、展開エンジン部分のみ、本ドキュメント記載の 「■著作権・使用条件・免責など」の 1., 4., 6. が適用されますが、 使用・配布はご自由にどうぞ。 (ロイヤリティフリーであり、謝辞は入れていただければ幸いですが、必須ではありま  せん。) 生成された exe ファイルのファイル名は自由に変更可能であり、単体で動作します。 ・注意事項 簡易改ざんチェック機能があるので、生成した exe ファイルをリソースエディタなどで 編集したりしないでください。実行できなくなります。 変換した exe ファイル実行時は、実行するPC上で、変換したファイル(上記使用方法で 選択状態にした、実行したいファイル)が正しく関連付けされている必要があります。 (もし関連付けされていないファイルを実行させたい場合は、「Tips」にあるように、  スタータと対応ソフトを含めてexe化することで実行できます。ただしその場合、  そのソフトの EULA をよくご確認ください。) 関連付けされているソフトによっては、うまく動作しないことがあります。 変換時にファイルを暗号化してはいますが、元のファイルを絶対に入手できないわけ ではありません。(ソフトの性質上、exe 実行時に復号しなければならないため) Unicode版で生成した exe ファイルは、 Windows 9x系 では動きません。 9x 上でも動かす可能性があるのであれば、MBCS版をご利用ください。 ただし、MBCS版は Unicode に対応していません。 また、生成した exe ファイルを Windows 9x 上で動かす場合は、 下記URIの影響を受けますのでご注意ください。 http://support.microsoft.com/kb/152648/en-us ファイルを生成するという動作をするため、アンチウィルスソフトによっては誤検出 するかもしれませんが、Vector から本ソフトウェアをダウンロードされたのであれば、 ウィルスではありません。除外設定やアンチウィルスソフトの開発元に報告するなど してお使いください。 Vector 以外の 転載/再配布 サイトから入手された場合は保証いたしかねます。 また、何でもexe化できるということは、ウィルス的動作をするものでもexe化できると いうことでもあります。 しかし、そのような使われ方は本意ではありません。お止めください。 ■著作権・使用条件・免責など 1.本ソフトウェアおよび同梱配布物の著作権は、謝辞記載の著作物を除き作者である 冬野 善文 が保有しています。 2.作者の許可なく、転載、再配布を行うことを禁止します。 雑誌・書籍などの有形物へ紹介記事などを掲載する場合、あるいはCD-ROMなどに収録 する場合は、必ずご一報ください。 3.転載・再配布時は、書庫ファイル名及び格納ファイルを改変することを禁止します。 4.ソフトウェアの全部または一部を修正、改変、逆コンパイル、逆アセンブル、または その他のリバースエンジニアリングなどの行為を禁止します。 5.ソフトウェアの仕様やドキュメントの内容などは、予告なく変更・廃止することが あります。 6.ソフトウェアは有用であることを願って頒布されますが、 "現状のまま" 提供され、 明示黙示を問わずいかなる保証もありません。 ソフトウェアに 起因/関連 して発生したいかなる損害にも作者は責任を負いません。 また、作者はバージョンアップやサポート含め、一切義務を負わないものとします。 ■謝辞 ・LZMA SDK 作者:Igor Pavlov氏 License:public domain 公式サイト&ソースコード入手元:http://www.7-zip.org/sdk.html ・UPX(upx.exe) 作者:Markus Oberhumer & Laszlo Molnar氏 License:例外付 GNU GPL  公式サイト&ソースコード入手元:http://upx.sourceforge.net/  UPX に関しては、UPX_docフォルダ内のドキュメントをご覧ください。 有用なツールを提供していただき、大変感謝しております。 この場を借りて御礼申し上げます。 ■ChangeLog (@:NEW +:EXPANSION *:CHANGE -:FIX [Ver.1.02 or later]) Ver.1.02 @ 生成したexeファイルを x64 OS 上で実行した場合、exeに変換したファイルを 64bitネイティブで実行するようにした。 (例えば WSH やバッチファイルをexe化し Windows x64 上で実行した場合、 スクリプトが64bitとして実行されます) @ ユーザが指定した manifest ファイルを埋め込めるようにした。 @ High DPI に対応。 + コマンドラインで相対パスも受け付けるようにした。 * LZMA SDK を 9.20 から 16.02 へバージョンアップ。 * 同梱している UPX を 3.07 から 3.91 へバージョンアップ。 * 設定ファイル作成時、exeファイルと同じディレクトリに対する書き込み権限がない 場合は、 %APPDATA% に作成するようにした。 * 現在の設定を保存でバージョン情報のチェックボックスと UAC の設定も保存するよう にした。 * ファイル登録後、カラム幅を自動調整するようにした。 * 複数ファイル登録されている場合でも処理開始時に選択状態ファイルがなければ、 リストの先頭にあるファイルが選択されたものとして処理するようにした。 - exeファイルに複数ファイル含めていると正常に展開できないことがある問題を修正。 - ファイルサイズが 0 Bytes のファイルが含まれていると、そのファイルまでで圧縮を 終了してしまう問題を修正。 Ver.1.01 ・既定値として現在の設定を保存、保存された設定を読み込みができるようにした。 ・パッカーを使えるようにした。  (とりあえず UPX を同梱してますが、他のパッカーも使用可能です。) ・処理が正常に終了した場合でも、ソフトを自動で終了しないようにした。  (ファイルリストはクリアされます。) ・コマンドラインオプションで as を渡した場合、処理が正常に終了した時は何も  メッセージを出さずにそのまま終了するようにした。 ・exe ファイルのバージョン情報で、 required ではなかったので設定欄を設けず  無効化していた LegalCopyright (著作権) も設定できるようにした。 ・「Vista以降で、管理者として実行するかどうか」で設定可能だった UAC 用の権限  要求で、 highestAvailable 以外にも、 asInvoker と requireAdministrator も設定  できるようにした。当然 manifest を埋め込まないことも可能。 ・生成時、設定から判断して自動で最適な展開エンジンの方を使用するようにした。 ・展開エンジンのファイルサイズを多少減少。これにより生成されるexeサイズも減少。 ・その他 ・ヘルプをオンラインヘルプにした。 Ver.1.00 - 2010/11/28 ・初回公開。 ********************************************************************************