VBScript を実行可能 (EXE) ファイルに変換するにはどうすればいいですか? [closed] 質問する

VBScript を実行可能 (EXE) ファイルに変換するにはどうすればいいですか? [closed] 質問する

VBScript を(*.vbs)実行可能ファイルに変換するための情報を探していたところ、利用可能なツールのほとんどが、スクリプトを実行可能ファイルでラップしていることに気付きました。いくつかのツールを試してみましたが、期待どおりには機能しませんでした。Win32 自己解凍 cab ファイルを作成するために IExpress (Windows XP) を試しましたが、Windows 7 マシンでは正しく起動しませんでした。

そこで、vbs を exe にコンパイルする方法を探しています。現在のスクリプトを VB Express 2008 に移植しようとしていますが、Visual Basic に関する予備知識はありません。エラーが多数ありますが、まだ試行錯誤中です。

これからどう進めていけばいいのか、どなたかアドバイスをいただけませんか?自己解凍アーカイブ代わりに行くべき道であるスタンドアロン実行ファイル? しかし、Winzip のように、抽出後にスクリプトを実行する方法がわかりません。

何か案は?

ベストアンサー1

VBScript(.vbsファイル)を実行可能ファイル(.exeファイル)に変換する方法はありません。VBScriptはコンパイル言語ではないソースコードをネイティブ実行コードに変換するプロセスは、「コンピレーション」、そしてそれはサポートされていませんスクリプトVBScript のような言語。

もちろん、WinZip などの自己解凍アーカイブにスクリプトを追加することもできますが、圧縮するだけです。ファイルサイズが目立って小さくなるかどうかは疑問ですし、そもそもプレーンテキストファイルなので、圧縮する必要はまったくありません。自己解凍型アーカイブの利点は、エンドユーザーのコンピュータに解凍ソフトウェア(WinZipなど)がなくても、抽出するまたは、ファイルを「解凍」します。そもそも圧縮されていない場合、これは意味がありません。

あるいは、おっしゃるとおり、VBScript コード ファイルをスタンドアロンの実行可能ファイルにラップする方法もありますが、これは、ユーザーが .exe ファイルをダブルクリックしたときにスクリプト (現在のコンパイルされていない状態) を自動的に実行するラッパーにすぎません。これには利点があると思いますが、あなたが探しているものではないようです。

VBScriptを実行可能ファイルに変換するには、別の言語で書き直す必要があります。編集済み ビジュアルベーシック6(.NET Frameworkが導入される前のVBの最新バージョン)は、構文がVBScriptと非常に似ていますが、ネイティブコードへのコンパイルをサポートしています。VBScriptコードをVB 6に移行すると、ネイティブ実行ファイルにコンパイルできます。.exeファイルを実行するには、ユーザーがVB 6 ランタイムライブラリインストールされていませんが、現在出回っているほとんどのバージョンの Windows に組み込まれています。

あるいは、先に進んでビジュアルベーシック、残っている幾分VB 6 や VBScript と構文が似ています (ただし、カット アンド ペーストの移行にはほど遠いでしょう)。VB.NET プログラムも .exe ファイルにコンパイルされますが、ユーザーのコンピューターに .NET Framework ランタイムがインストールされている必要があります。幸い、これも一般的になり、ユーザーが持っていない場合でも簡単に再配布できます。質問でこの方法 (現在のスクリプトを VB.NET を使用する VB Express 2008 に移植する) を選択したが、多くのエラーが発生したと述べていました。これが、カット アンド ペーストの移行にはほど遠いという意味です。巨大なVB 6/VBScript と VB.NET の間には、表面的な構文上の類似点があるにもかかわらず、大きな違いがあります。VBScript からの移行についてサポートが必要な場合は、Stack Overflow に質問を投稿してください。最終的には、これがおそらく目的を達成するための最善の方法ですが、簡単であるとは保証できません。

おすすめ記事