•   Login
  •  
  •   Rss
  •   Rss2.0
  •   ATOM1.0
  •   Admin
  •   Top
  •   Home

Windowsコマンド start

私は、Windowsを起動した時に様々なプログラムを自動起動するため、バッチプログラムを組んでいます。
職場でもタスクマネージャーで定期的に実行してチェックをしています。
(Windows 10では、設定-アプリ-スタートアップで簡易ながらもシンプルに自動起動のオンオフが出来ます。)


その時、いつも最後にファイルやアプリを起動させるのですが、そうするとコマンドプロンプト画面がずっと残ったままの情けない結果になります(笑)
これを一体どうやったらスマートに出来るのだろう。と考えたのですがコマンドが分からなかったので、アヒル先生に聞いたら答えが返ってきました。

「start コマンドを使え・・・」

何それ?
物凄い直球やん。
と思って、一例を挙げてみます。

【変更前】
%USERPROFILE%\AppData\Local\Vivaldi\Application\vivaldi.exe -disk-cache-dir="Z:\temp"


これは、私のメインブラウザVivaldiを起動するコマンドです。
キャッシュディスクをこれまでCドライブにしていたのですが、RAMディスクドライブのZドライブ指定にしています。
しかし、このままだと、コマンドプロンプトが立ち上がりっぱなしなので、次のようにすると綺麗に閉じてくれます。

【変更後】
start "" %USERPROFILE%\AppData\Local\Vivaldi\Application\vivaldi.exe -disk-cache-dir="Z:\temp
"

至ってシンプルで、「なんじゃそりゃ?」状態です。
start /? と入力すると、長々と説明があって奥深いです。


じゃぁ、もう少し奥深いところを掘り下げてみますか。
【変更前】
C:\bat\netwrok_drive.vbs
 ↓ ↓ ↓ ↓
Const olFolderInbox = 6
Const olMinimized = 1
Dim olkApp
Dim fldInbox
Dim expInbox
Dim objWShell

WScript.sleep 1000
Set olkApp = CreateObject("Outlook.Application")
If olkApp.Explorers.Count = 0 Then
Set fldInbox = olkApp.Session.GetDefaultFolder(olFolderInbox)
fldInbox.Display
Set expInbox = fldInbox.GetExplorer()
expInbox.WindowState = olMinimized
End If
Set objWShell = CreateObject("WScript.Shell")
Set objWShell = Nothing


【変更後】
start "" /min "C:\Program Files (x86)\Microsoft Office\root\Office16\OUTLOOK.EXE"



もともと、このプログラムはネットワークドライブ接続がおかしかったところから始まり、ついでにVBScriptでOutlookを自動起動するけど最小化にしちゃえ。
から作りました。そんなコマンドも、たった1行で終わりです(笑)
わざわざ、変数宣言したり時間差を設けたりしたのですが、そんなのは不要になりました。
こうすることで、コマンドプロンプトが綺麗に終了してくれます。


startコマンドの活用は無限大です。
是非、試してみてください。


記事を評価してください(★1つ=悪い、★5つ=良い)
この記事の平均評価: (13人)
Posted by いぐぅ 06:00 | ソフトウェア::プログラミング | comments (0) | trackback (0)
コメント
コメントする









この記事のトラックバックURL
http://www.sir-2.net/dablg/tb.php/8089
トラックバック

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31