2015-01-11  Java プログラミング

exewrap バージョン 1.0.1 リリース

exewrap バージョン 1.0.1 をリリースしました。exewrap は Java アプリケーション (実行可能 JAR ファイル) を Windows の実行ファイル EXE 形式に変換するツールです。ウィンドウ ・ アプリケーションだけでなく、 コンソール ・ アプリケーション、 Windows サービスにも対応しています。

バージョン 1.0.1 では Windows サービスの機能が強化され、 ユーザー アカウント制御 (UAC) に対応しました。

ダウンロード

exewrap は以下のサイトからダウンロードすることができます。

従来のexewrapで作成したWindowsサービスの場合

まずは従来の exewrap バージョン 1.0.0 で作成した Windows サービスのインストール動作を確認してみます。動作確認のために Java で myservice.jar というプログラムを作成しました。これを EXE に変換してサービスとして登録します。

myservice.jar を EXE に変換するために以下のコマンドを実行します。

exewrap -s -j myservice.jar -o myservice.exe

これで、 myservice.exe が生成されます。

コマンドプロンプトを管理者権限で起動する

コマンドプロンプトを管理者権限で起動します。以下のコマンドで作成したサービスをインストールします。

管理者: コマンドプロンプト
C:¥>myservice.exe -install

管理者としてコマンドプロンプトを起動した場合、 サービスのインストールは問題なく成功します。

成功

コマンドプロンプトを一般ユーザー権限で起動する

次に管理者としてではなく通常の方法でコマンドプロンプトを起動します。以下のコマンドでサービスのインストールを試みます。

コマンドプロンプト
C:¥>myservice.exe -install

管理者としてコマンドプロンプトを起動していない場合、 アクセス拒否でサービスのインストールに失敗します。これは、 バージョン 1.0.0 以前の exewrap で作成した myservice.exe がユーザー アカウント制御 (UAC) に対応していないことが原因です。

失敗

新しいexewrapで作成したWindowsサービスの場合

次にバージョン 1.0.1 の exewrap の動作を確認します。管理者としてコマンドプロンプトを起動した場合の動作は従来と同じですので省略します。

コマンドプロンプトを一般ユーザー権限で起動する

管理者権限なしでコマンドプロンプトを起動します。以下のコマンドでサービスのインストールを試みます。

コマンドプロンプト
C:¥>myservice.exe -install

ユーザー アカウント制御 (UAC) の確認ダイアログが表示されます。

UAC

はい を押すと、 サービスのインストールが成功します。

成功

ちなみに、 はい ではなく いいえ を押した場合は 「アクセスが拒否されました。」 ではなく 「この操作はユーザーによって取り消されました。」 というメッセージが表示されます。

最終更新日 2024-12-12
この記事を共有しませんか?
ブックマーク ポスト