2013-03-10 56 views
5

我想制作一个告诉用户文件是否正在使用的小VBS脚本。当然,我有一个文件,如果这个文件正在使用,VBS让我看到一个消息,该文件正在使用中。如果文件没有被任何进程使用,VBS会显示该文件未被使用。 我试图this但它没有显示任何消息。检查文件是否与VBS一起使用

+0

的知识库文章有示例代码为VBA,这是微软Office的宏语言。 VBScript与VBA不同。 – 2013-03-10 19:16:09

+0

@Fesiitis - 你能变得更具体吗? – 2013-03-10 21:53:53

+0

我想创建VBS文件,并将其放入与我的媒体文件相同的文件夹中。当我打开媒体文件然后打开这个VBS时,VBS需要显示带有媒体文件的文本消息框,这个文件正被某个进程使用(不需要显示这个进程是什么)。但是,如果我只打开这个VBS,而不是媒体,那么VBS会向我显示带有文本的消息框,表明媒体文件未被某人进程使用。 – Fesiitis 2013-03-10 22:52:17

回答

8

您可以尝试使用WMI查询:

filename = "..." 

Set wmi = GetObject("winmgmts://./root/cimv2") 

qry = "SELECT * FROM Win32_Process WHERE CommandLine LIKE '%" & filename & "%'" 
For Each p In wmi.ExecQuery(qry) 
    WScript.Echo "Media file in use." 
    WScript.Quit 0 
Next 

WScript.Echo "Media file not in use." 
+0

它的工作。十分感谢! – Fesiitis 2013-03-11 12:43:27

相关问题