タグ

cscriptに関するmaaa328のブックマーク (4)

  • WSHで CUI実行かどうか判断する | あぁ そうだった

    ちょっとしたスクリプトにおいて、WScript.Echoなどで結果をstdoutにずらずら出力したいときがある。 で、このスクリプトをエクスプローラからダブルクリックで実行してしまいMsgBoxが延々と出てきてしまうと悲しい。ので、実行時にチェックしてコマンドプロンプト(cscript.exe)から実行されたかどうか判断したい。 改めて検索してみたら、 「@IT:運用 Windows管理者のためのWindows Script Host入門 第4回 WScriptオブジェクトの詳細(2) 4.スクリプトの実行制御とホスト情報の取得」 実行ファイル名でチェックしてるサンプルが。 今までこんなん↓してた(JScript) try { WScript.StdErr.WriteBlankLines(1); } catch( ex ) { WScript.echo( "run me under csc

  • VBScriptファイルをEXEファイルに変換、デスクトップアイコンを変更

    VBScriptで作ったスクリプトをWindows上の実行ファイル(*.exe)に変換する方法を紹介します。またEXEファイルのデスクトップのアイコンの変更方法も紹介します。 例として、次のような「sample.vbs」を「*.exe」ファイルに変換してみます。 '********************************************************** ' Copyright (C) 2010 by pl_kyo '********************************************************** Option Explicit main() Sub main() MsgBox "Hello World!!" End Sub vbsファイルをexeに変換 VBScriptファイルを素早く・簡単に「*.exe」ファイルにするための

    VBScriptファイルをEXEファイルに変換、デスクトップアイコンを変更
  • VBScriptの実行時にWScriptからCScriptへ自動的に切り替える

    CScript専用のスクリプトがある場合、ほとんどは、スクリプトの先頭に次のようなコードを挿入してユーザーに注意し、CScriptを使うようにユーザーに指示する。 if not lcase(right(WScript.Fullname,11)) = "cscript.exe" then msgbox "このプログラムはCScriptで実行してください" end if しかし、これは不便である。仮にユーザーの環境が固定されていて常にCScriptでいい場合、次のコマンドを入力することになっている。 cscript //h:cscript この場合、エクスプローラからスクリプトファイルを実行するとコマンドウィンドウが消えてしまい。実行結果が確認できない。 そんなわけで、次のようにスクリプト(WCSwitch.vbs)を作成した。 option explicit class WCSwitch p

    VBScriptの実行時にWScriptからCScriptへ自動的に切り替える
  • VBScript : 自分自身をCscript.exe で実行しなおすには

    WScript.FullName には、その時使用された Wscript.exe か Cscript.exe の フルパスが入っていますので、その内容が Wscript.exe であれば、Cscript.exe で自分自身を実行して、現在の処理は終了してやります。 引数はそのまま全てを文字列に作りなおして呼び出してやるといいです。 Set WshShell = CreateObject( "WScript.Shell" ) ' フルパス strPath = WScript.FullName strTarget = Right( strPath, 11 ) strTarget = Ucase( strTarget ) ' CSCRIPT.EXE で無い場合 if strTarget <> "CSCRIPT.EXE" then ' 自分自身ののフルパス strMyPath = WScript.

    VBScript : 自分自身をCscript.exe で実行しなおすには
  • 1