Marumaru's TinyPlaza
(2009.07.12)RSS配信テスト2
センタリング
((pre_st))
Option Explicit
On Error Resume Next
Const ERR_MSG_ALREADY_STARTED = "このアプリケーションは既に起動されています。"
Dim objProcessList
Dim objProcess
Dim objWshShell
Dim strProcessName
Dim strExecuteCmd
Dim isAlreadyStarted
'起動状態を確認したいプロセス名
strProcessName = "calender.exe"
'プロセスが未起動状態の際に実行するファイル(フルパス)
strExecuteCmd = "Calender.exe 予定表.sdl"
isAlreadyStarted = false
Set objWshShell = WScript.CreateObject("WScript.Shell")
Set objProcessList = GetObject("winmgmts:").InstancesOf("win32_process")
For Each objProcess In objProcessList
If StrComp(LCase(objProcess.Name),strProcessName,vbTextCompare) = 0 Then
If Err.Number = 0 Then
isAlreadyStarted = true
Else
WScript.Echo Err.Description
End If
End If
Next
If isAlreadyStarted Then
WScript.Echo ERR_MSG_ALREADY_STARTED
Else
objWshShell.Run strExecuteCmd
End If
Set objProcessList = Nothing
Set objWshShell = Nothing
((pre_ed))

まるまる コメントテスト (2009/07/12 18:57:05)
aaa テストコメント (2009/07/13 18:01:13)