Windows 10でBATスクリプトをEXEに変換する方法

Windows 10のIExpressウィザードを使用して、BATスクリプトをパッケージ化し、自己解凍型のEXEファイルからコマンドプロンプト経由で実行できます。この方法ではバッチファイルがパッケージ化されますが、コマンドのコンパイルやグラフィカルインターフェースの追加は行われません。また、受信者はパッケージ内のスクリプトを検査することも可能です。

手順は、Microsoft の IExpress ワークフローに従い、 を使用しますcmd.exe /c "run.bat"。自分の PC でタスクを自動化するだけであれば、Windows タスク スケジューラで BAT ファイルを直接実行できます。

BATファイルを準備する

スクリプトをrun.bat専用フォルダに保存し、一度実行して動作を確認してください。編集する前に必ずバックアップを取ってください。スクリプトが読み込むファイルや呼び出す実行ファイルをすべてメモしておいてください。それらの依存関係をパッケージに追加する必要があります。

メモ帳にはrun.batというファイルと3つのサンプルコマンドが表示され、ファイルエクスプローラーにはバッチファイルが表示されています。
パッケージ化する前に、バッチファイルとそれに必要なすべてのファイルを一緒に保管してください。

IExpressを使用してBATファイルをEXEファイルに変換する

  1. Open IExpress

    Windows+を押してR、iexpress.exeと入力し、 を押しますEnter。スタートメニューから IExpress を検索することもできます。

    Windowsの「ファイル名を指定して実行」ダイアログの「名前」欄にiexpress.exeと入力されている。
    「ファイル名を指定して実行」ダイアログから、組み込みのパッケージングウィザードを起動します。
  2. パッケージ定義を作成する

    「新しい自己抽出ディレクティブ ファイルを作成」​​を選択し、「次へ」をクリックします。IExpress はこれらの設定をファイルに保存します.sed。後で EXE を再構築する可能性がある場合は、このファイルを保管しておいてください。

    IExpressウィザードのウェルカムページで、「新しい自己抽出指示ファイルを作成する」が選択されています。
    パッケージ設定を保存するための新しいSEDファイルを作成します。
  3. パッケージの目的を選択してください

    「ファイルの展開」を選択し、インストールコマンドを実行します。次のページで、パッケージの機能をユーザーに伝える短いタイトルを入力します。

    IExpressパッケージの目的ページでは、「ファイルの展開とインストールコマンドの実行」が選択されています。
    ファイルを解凍してコマンドを実行するオプションを選択してください。
  4. プロンプトとライセンスオプションを設定します

    ユーザーが質問に答える必要がある場合を除き、「プロンプトを表示しない」を選択してください。また、表示するライセンスファイルがない場合に限り、 「ライセンスを表示しない」を選択してください。これらのオプションはパッケージ画面を変更するものであり、スクリプト自体を変更するものではありません。

    IExpress Wizardの2つのページには、パッケージのタイトルと、「プロンプトを表示しない」および「ライセンスを表示しない」のオプションが表示されます。
    パッケージ名には分かりやすいタイトルを使用し、不要なプロンプトやライセンスページはスキップしてください。
  5. バッチファイルと依存関係を追加する

    パッケージ化されたファイルで、「追加して含める」を選択しrun.bat、必要なデータファイル、ヘルパースクリプト、または実行可能ファイルをそれぞれ追加します。関連性のないファイルは除外してください。

    IExpressのパッケージファイルページには、run.batとdata.txtがリストされています。
    バッチファイルが使用するすべてのスクリプトと関連ファイルを含めてください。
  6. 起動コマンドを設定する

    「起動するプログラムのインストール」で、cmd.exe /c "run.bat"ファイル名を必要に応じて変更して入力します。Microsoft はこのコマンドパターンを文書化しています。/cコマンドを実行して終了します。テスト中は、「ウィンドウの表示」を「既定」に設定したままにしてください。

    IExpress インストールプログラムの起動ページには cmd.exe /c と表示されます。
    スクリプトはコマンドプロンプトから実行し、テスト中はウィンドウをデフォルト設定のままにしておいてください。
  7. EXEファイルに名前を付けて作成する

    完了メッセージページでは、完了通知を表示したい場合を除き、「メッセージなし」を選択してください。 「パッケージ名とオプション」で、出力パスと名前(例:)を選択しますrun-package.exe。「パッケージ内に長いファイル名を使用してファイルを保存する」が可能な場合は、選択したままにし、通常のスクリプトの場合は「再起動なし」を選択してください。SED ファイルを保存し、パッケージを作成して、ウィザードを完了します。

  8. パッケージ化されたファイルをテストする

    テストフォルダからEXEファイルを実行し、期待される出力が得られることを確認してください。IExpressは管理者権限を付与しません。スクリプトの実行に管理者権限が必要な場合は、適切な管理者権限を持つセッションでパッケージを実行してください。スケジュール実行の場合は、タスクスケジューラで目的のアカウントと権限を設定してください。

    ファイルエクスプローラーにはrun-package.exeがrun.batとdata.txtの横に表示され、コマンドプロンプトにはサンプルスクリプトの出力が表示されます。
    生成されたEXEファイルをテストし、共有またはスケジュール設定する前にその動作を確認してください。

よくある問題を修正する

  • ファイルが不足しています。パッケージファイルページで追加してください。相対パスを使用する場合は、cd /d "%~dp0"BATファイルの先頭付近に記述して、そのフォルダに切り替えてください。
  • コマンドウィンドウがすぐに閉じてしまいます。テスト用コピーに追加するpauseか、開いているコマンドプロンプトからスクリプトを実行してください。pause無人実行の場合は削除してください。
  • 結果が表示されません。IExpressはGUIを作成しません。コマンドウィンドウを表示したままにするか、スクリプトにバックグラウンド実行時のログを書き込ませてください。
  • SmartScreenが警告を表示します。新規または珍しいEXEファイルは、信頼性が低い場合があります。警告が表示されたからといって、マルウェアであるとは限りません。実行する前にスクリプトとパッケージを確認し、警告を回避するためにSmartScreenを無効にしないでください。

この変換が何をするか

出力は自己解凍型のランナーであり、コンパイル済みまたは暗号化されたアプリケーションではありません。Windowsコマンド、インクルードファイル、アクセス許可、およびユーザーアカウントに依存します。シンプルな単一ファイルラッパーにはIExpressを使用してください。GUI、コード保護、マネージドインストーラー、またはネイティブプログラムが必要な場合は、別の開発手法を選択してください。

公式資料

コメントを残す

FotoSketcherで写真を絵画、スケッチ、漫画に変換

FotoSketcherで写真を絵画、スケッチ、漫画に変換

FotoSketcher Studioを使えば、写真を絵画、鉛筆画、漫画に変換できます。エフェクトの選択方法、プレビューの調整方法、作品の保存方法を学びましょう。

オーディオ識別ツールで音声ファイルを詳細に分析・識別する

オーディオ識別ツールで音声ファイルを詳細に分析・識別する

オーディオ識別子がビットレート、エンコーダー、タグについて何を明らかにするのか、従来のワークフローがどのように機能するのか、そして現在利用可能なツールの中で、ファイルの検査や楽曲の識別に使えるものはどれなのかを学びましょう。

My Photo Index:Windows用オープンソース写真整理ツール

My Photo Index:Windows用オープンソース写真整理ツール

My Photo Indexは、ローカル画像のタグ付け、評価、閲覧を行うための、Windows向けの旧来の写真カタログツールです。その機能、互換性の制限、および現在もサポートされている代替ツールについてご確認ください。

Attribute Changerを使用してファイルとフォルダの属性、日付、時刻を変更する

Attribute Changerを使用してファイルとフォルダの属性、日付、時刻を変更する

Attribute Changerを使用して、Windowsファイルの属性とタイムスタンプを編集したり、JPEG EXIF写真の日付を更新したり、バッチ変更を安全にプレビューしたりする方法を学びましょう。

Windows 10で各モニターに異なる壁紙を設定する方法

Windows 10で各モニターに異なる壁紙を設定する方法

Windows 10の各モニターに個別の壁紙を設定し、ディスプレイを識別し、画像のフィットを調整し、モニターの選択肢が見つからない場合のトラブルシューティングを行います。

pViewer:最小限の画像ビューアとマンガ&コミックリーダー

pViewer:最小限の画像ビューアとマンガ&コミックリーダー

pViewerの機能、写真モードとコミックモードの仕組み、ダウンロードすべきWindows版、そして旧バージョンと改訂版の違いについて学びましょう。

NeoDownloader:パラメータ設定とウェブサイトからの画像の一括ダウンロード

NeoDownloader:パラメータ設定とウェブサイトからの画像の一括ダウンロード

NeoDownloaderプロジェクトの作成方法、クロール範囲の選択方法、画像フィルタと保存先の設定方法、バッチダウンロードの確認方法を学びましょう。

Windows 7および8でホットキーを使って次のデスクトップ背景に切り替える方法

Windows 7および8でホットキーを使って次のデスクトップ背景に切り替える方法

Windows 7または8用のスライドショーを設定し、簡単なVBScriptショートカットを作成して、キーボードショートカットキーを割り当てて次の壁紙に進めるようにします。

XnConvert:エフェクトの適用と画像フォーマットの一括変換

XnConvert:エフェクトの適用と画像フォーマットの一括変換

XnConvertを使えば、エフェクトの適用、写真のリサイズ、画像フォーマットの一括変換が可能です。出力設定の選択、編集内容のプレビュー、オリジナル画像の保護も行えます。

PickMeApp: 保存された設定でWindowsプログラムを転送する

PickMeApp: 保存された設定でWindowsプログラムを転送する

PickMeAppを使って、インストール済みのWindowsアプリケーションを別のPCに移行しましょう。TAPパッケージの仕組み、設定の取得方法、転送できない可能性のある項目について学びます。