これを実現するための私の方法のコレクションを以下に示します-さらに、私は開始されたプロセスのPIDも返そうとした可能性があります(リンクされたスクリプトはすべて、ダウンロードして任意の名前で保存できます)。
1)IEXPRESSソリューションは、古いwin 95/98マシンでも使用できます。Iexpressは、Windowsにまだパッケージされている非常に古いツールです-引数はコマンドとその引数のみを受け入れます。
使用例:
call IEXPhidden.bat "cmd /c myBat.bat" "argument"
2)SCHTASKS-ここでも、コマンドと引数の2つの引数のみを受け入れます。昇格されたアクセス許可で開始されているかどうかを確認し、可能であればWEVTUTILでプロセスのPIDを取得します(Vista以降で利用可能)。 PID)コマンド。
使用例:
call SCHPhidden.bat "cmd /c myBat.bat" "argument"
3)「WScript.Shell」 -スクリプトは「WScript.Shell」の完全なラッパーであり、すべての可能なオプションはコマンドラインオプションを介して設定できます。これはjscript / batchハイブリッドであり、バットとして呼び出すことができます。
使用例(詳細については、「-h」を使用してヘルプを印刷してください):
call ShellRunJS.bat "notepad.exe" -style 0 -wait no
4)'Win32_ProcessStartup'-再び完全なラッパーとすべてのオプションにコマンドライン引数を介してアクセスできます。今回は、いくつかのJscriptといくつかのVBScriptコードを含むWSF /バッチハイブリッドですが、開始されたプロセスのPIDを返します。プロセスがX / Y座標などの一部のオプションを使用できます(すべての実行可能ファイルに適用できるわけではありませんが、たとえばcmd.exeは座標を受け入れます)。
使用例(詳細については、「-h」を使用してヘルプを印刷してください):
call win32process.bat "notepad" -arguments "/A openFile.txt" -showWindows 0 -title "notepad"
5)。NETソリューション。ProcessStartInfoオプションのほとんどのオプションが使用されます(ただし、結局、すべてを含めるには疲れすぎました)。
使用例(詳細については、「-h」を使用してヘルプを印刷してください):
call ProcessStartJS.bat "notepad" -arguments "/A openFile.txt" -style Hidden -directory "." -title "notepad" -priority Normal