cq1680 发表于 2012-7-15 02:09:52

什么方法可以获取程序的盘符?

有什么方法可以获取到程序的所在盘符呢?我只想知道正在运行的程序在什么盘。

虫子樱桃 发表于 2012-7-15 11:15:15

本帖最后由 虫子樱桃 于 2012-7-15 11:20 编辑

请看帮助,里面的宏说明的很清楚,嘻嘻。仔细看一遍帮助,你会受益匪浅的。网上什么教程什么的都是浮云了..
$nowpath = StringLeft(@ScriptFullPath,2)
MsgBox(0,'','您的程序位于'&$nowpath&'分区')

amxi 发表于 2012-7-15 11:38:03

他应该要的不是脚本运行的所在目录

xms77 发表于 2012-7-15 11:50:16

#Include <WinAPIEx.au3>

$ProcessID = ProcessExists("Autoit3help.exe")
$ProcesshWnd = _WinAPI_OpenProcess(0x001F0FFF, True, $ProcessID, False)
$temp = StringRegExp(_WinAPI_GetModuleFileNameEx($ProcesshWnd),'\b(\w:\\?)', 1)
If Not @error Then MsgBox(0,"进程的路径盘符为:",$temp)回复 1# cq1680

cq1680 发表于 2012-7-15 21:38:44

回复 2# 虫子樱桃

谢谢虫子樱桃

虎虎虎 发表于 2012-7-15 21:39:49

其实可以用注册(表读取。

xiaowo 发表于 2012-7-16 09:00:19

4楼的方法学习了,其中的正则还给消化一下

changlianxi 发表于 2012-7-16 09:04:12

4楼很专业,学习中

tegl 发表于 2012-7-24 14:01:58

4楼的源码收下了

li123168 发表于 2012-7-24 23:43:27

4楼的方法学习了

netegg 发表于 2012-7-25 00:39:22

#Include <WinAPIEx.au3>
_WinAPI_PathStripToRoot(_WinAPI_ProcessGetFilename( $vPID, True))

xiehuahere 发表于 2012-7-25 16:50:46

本帖最后由 xiehuahere 于 2012-7-25 16:52 编辑

#Include <WinAPIEx.au3>
$path = _WinAPI_GetProcessFileName(WinGetProcess("应用程序窗口标题"))
If $path <> "" Then MsgBox(0, 0, StringLeft($path, 1))

vr4u 发表于 2012-7-25 17:23:59

@xiehuahere

这个winapiex。au3是不是库里自带的函数?

jingygr 发表于 2012-7-25 17:43:19

学习了,谢谢大家的代码

xiehuahere 发表于 2012-7-26 10:25:32

回复 13# vr4u


你这样 @,我是收不到的,论坛没有这么与时俱进。呵呵~~

这个是au3里自带的。原版帮助文件上能找到的函数,都是自带的。
页: [1] 2
查看完整版本: 什么方法可以获取程序的盘符?