找回密码
 加入
搜索
查看: 3535|回复: 25

问几个问题。。。不知如何表达,什么宏能去系统盘?如何修改某文件中的语句?

[复制链接]
发表于 2009-6-26 10:18:34 | 显示全部楼层 |阅读模式
本帖最后由 kn007 于 2009-6-26 20:55 编辑

autoit要写什么才能自动判断系统盘

比如说我是双系统,我除了C盘另外的系统盘符为F

要写什么 宏 或 函数,才能让他转到这个盘,比如

@SystemDir

在C盘系统运行,显示为C:\WINDOWS\system32

在F盘的系统运行,显示为F:\WINDOWS\system32

看,盘符改了

但我要的是 显示为C:\或显示为F:\

明白不。。。
 楼主| 发表于 2009-6-26 10:37:15 | 显示全部楼层
还有个问题,autoit如何修改系统盘下的boot.ini中的timeout=5
 楼主| 发表于 2009-6-26 11:04:45 | 显示全部楼层
还有如何读取boot.ini中是否有某一行有 abc.abc 字符
 楼主| 发表于 2009-6-26 11:37:15 | 显示全部楼层
我问的问题,为什么无人问津呢?
 楼主| 发表于 2009-6-26 12:07:11 | 显示全部楼层
...先下了,待会上来看
发表于 2009-6-26 13:38:10 | 显示全部楼层
但我要的是 显示为C:\或显示为F:\

StringLeft
autoit如何修改系统盘下的boot.ini中的timeout=5

先去除系统属性再读行修改
还有如何读取boot.ini中是否有某一行有 abc.abc 字符

StringInStr
 楼主| 发表于 2009-6-26 13:44:13 | 显示全部楼层
Run(@ScriptDir & "\XXXXXXXXXXX.exe")
改什么才能变为C:\XXXXXXXXXX.exe


就是说
Run(@什么 & "\XXXXXXXXXXX.exe")
输出为C:\xxxxxxxxx.exe
 楼主| 发表于 2009-6-26 13:46:10 | 显示全部楼层
第2和3是要用autoit的
 楼主| 发表于 2009-6-26 14:27:47 | 显示全部楼层
你得给我个例子。第一也为解决
 楼主| 发表于 2009-6-26 14:28:34 | 显示全部楼层
如:StringInStr("C:\boot.ini",timout=)

然后还要如何替换。。。。
发表于 2009-6-26 15:28:44 | 显示全部楼层
boot 那个我想到的办法是去掉 只读 属性  再把修改好的boot文件.替换....用修改的办法.这个还没研究过..
发表于 2009-6-26 15:31:17 | 显示全部楼层
很简单的函数运用问题!有空看一下帮助里面有什么函数可用吧!

$file = @HomeDrive & '\boot.ini'
MsgBox(0,0,@HomeDrive)
If StringInStr(FileRead($file), 'abc.abc') Then MsgBox(0,0,'found the string')
FileSetAttrib($file, '-RSH')
$str = StringRegExpReplace(FileRead($file), 'timeout\s*=\s*\d+', 'timeout=5')
$tmp_file = FileOpen($file, 2)
FileWrite($file, $str)
FileClose($tmp_file)
FileSetAttrib($file, '+RSH')
ShellExecute($file)

评分

参与人数 1金钱 +10 收起 理由
kn007 + 10 谢谢您的帮助,后面有点小问题,想问问您, ...

查看全部评分

 楼主| 发表于 2009-6-26 16:52:02 | 显示全部楼层
本帖最后由 kn007 于 2009-6-26 16:59 编辑
谢谢狮子,原来是 @HomeDrive ,实在是谢谢,我在帮助硬是没找到,希望不用下载新版本



找到了,原来他没有例子,我只注意那些有例子的,汗,我就说吗,记得曾经看过到这个宏
 楼主| 发表于 2009-6-26 16:53:42 | 显示全部楼层
$str = StringRegExpReplace(FileRead($file), 'timeout\s*=\s*\d+', 'timeout=5')

对不起,再麻烦下,能不能解释下'timeout\s*=\s*\d+的意思...

还有 StringRegExpReplace,我的帮助几乎无解释,而且是英文的
发表于 2009-6-26 17:47:25 | 显示全部楼层
查找"timeout"后面跟0-N个空白符,然后是个"=",再接0-N个空白符,然后后面是1-N个数字这样的文字并把他换成'timeout=5'
简单来说就是把'timeout=X'中的X换成了5,X可能是任意数字

评分

参与人数 1金钱 +10 收起 理由
kn007 + 10 谢谢

查看全部评分

您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-3 16:50 , Processed in 0.074160 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表