顽固不化 发表于 2009-12-9 11:23:58

AU3的“FindStr.exe”命名质疑

如果执行一段批处理,这段批处理中含有字串搜索命令“FindStr”的话,在AU3的3.3.1.6中肯定会出错。CRWMART朋友就遇到此问题。有段代码在au3的3.3.0.0.里能执行的代码,在3.3.1.6里就出现问题。最终查到的原因是,在3.3.1.6的au3的目录里有一个“FindStr.exe”与dos下(windows\system32下)的命令文件同名。而以前的AU3版本没有这个文件。
比较了一下au3的FindStr源码和DOS的FindStr的帮助,发现在参数上有很大差异,甚至说完全不同的机制。因为安装了AU3后,系统环境变量的路径中可能包含了AU3的路径,所以在运行DOS的FindStr时会首先调用AU3的FindStr,故造成了错误。
可能au3的FindStr.exe服务于SciTe的,但与DOS命令重名会造成执行DOS的FindStr时出现障碍。这算不上个BUG,也许不会被修改,但存在此问题始终是一大缺憾。

make2855 发表于 2009-12-9 12:04:38

膀子男的确很细心:face (33):

z1b 发表于 2010-5-20 11:25:20

AUTOIT_3.3.6.1-PRE中也存有这个问题
希望得到修正
另感谢LZ的细心

lxsh010 发表于 2012-3-2 14:49:57

今天我也遇到 这个问题,非常郁闷 。。。。

guowenfu 发表于 2012-11-13 15:56:59

大神啊,我这两天为了这个烦死了。

zzwwdd 发表于 2013-4-4 11:02:39

电脑 报findstr.exe不是有效的 win32 应用程序    错误, 如何解决????
页: [1]
查看完整版本: AU3的“FindStr.exe”命名质疑