黑菜 发表于 2009-1-27 11:00:34

对于一个完整路径,如果准确去除文件名与后缀

$objWMIService = ObjGet("winmgmts:\\.\root\CIMV2:win32_process")
$colItems = $objWMIService.instances_
For $objItem In $colItems   
If $objItem.Name="QQ.exe" Then MsgBox(0,'',$objItem.executablepath)
Next

例如这样会返回:Y:\QQ2008II\QQ.exe
我希望得到的是:Y:\QQ2008II\
有什么办法既准确又通用的吗?:face (29):

[ 本帖最后由 黑菜 于 2009-1-28 19:32 编辑 ]

黑菜 发表于 2009-1-27 11:05:49

补充下:我就希望从进程中获得QQ的路径。不带文件名与后缀

pusofalse 发表于 2009-1-27 11:47:20

$var = "Y:\QQ2008II\QQ.exe"
$str = stringRegExp($var, ".*\\", 1)
msgBox(0, '', $str)

冷风无泪 发表于 2009-1-27 16:09:41

#include <File.au3>
Global $String, $Drive, $Dir, $File, $Ext

$String = "Y:\QQ2008II\QQ.exe"
_PathSplit($String, $Drive, $Dir, $File, $Ext)
MsgBox(0, "", $Drive & StringTrimRight($Dir, 1))

[ 本帖最后由 冷风无泪 于 2009-1-27 16:11 编辑 ]

黑菜 发表于 2009-1-28 19:32:59

谢谢两位~~~
页: [1]
查看完整版本: 对于一个完整路径,如果准确去除文件名与后缀