找回密码
 加入
搜索
查看: 2039622|回复: 1017

[原创] 《FAQ 大全》初学者必看

[复制链接]
发表于 2008-5-5 05:37:52 | 显示全部楼层 |阅读模式
本帖最后由 afan 于 2011-10-27 15:59 编辑

说明:     
    该说的“提问智慧”里边已经说了,这里不重复了。不要拿“新手”作借口。。。
     太多的重复提问贴提问,只会让人看而生厌,并且有浪费时间的嫌疑,这里重复一句,学会搜索论坛。
     提问区“已解决”版块里的问题都是解决了的,建议新手多翻下,多看下。这里发些常见的问题解答。


声明:
    此贴只发www.autoitx.com,其他的都是转贴。转贴请注明出处,多谢合作。



常见问题:

Q1 如何调试脚本?
MsgBox(0,"测试",$var)   
ConsoleWrite("var=" & $var & @CRLF)

Q2 操作CMD相关命令

Q2.1 如何运行DOS命令?
Run(@ComSpec & ' /c dir>d:\dir.txt',"", @SW_HIDE)
#include <Process.au3>
$rc = _RunDos("start Http://www.autoitx.com")


Q2.2 运行DOS命令如何连接AU3变量?
Local $var="d:\dir.txt"
Run(@ComSpec & ' /c dir>"'&$var&'"',"", @SW_HIDE)


Q2.3 运行DOS命令如何自动应答?(注意:这并不属于AU3的问题,这里附带说一下。)
RunWait(@ComSpec & ' /c echo y|cacls %systemroot%\system32\wpcap.dll /d everyone', @SystemDir, @SW_HIDE)


Q2.4 多层DOS命令如何用?如netsh,diskpart等。
$dns="192.168.0.1"
RunWait(@ComSpec & ' /C netsh -c interface ip set dns 本地连接 source=static addr="' & $dns &'"   register=PRIMARY ',"", @SW_HIDE )


Q2.5 运行DOS命令如何直接截取回显?
;注意:回显截取只支持Run而不是RunWait
#include <Constants.au3>
Opt("MustDeclareVars",1)
_test()
Func _test()
Local $foo,$line,$lines
$foo = Run(@ComSpec & " /c sc query Alerter", @SystemDir, @SW_HIDE, $STDOUT_CHILD)
$lines = ""
While 1
    $line = StdoutRead($foo)
    If @error Then ExitLoop
     $lines &= $line
Wend
MsgBox(0,"test",$lines)
EndFunc


Q3 如何防止程序重复运行?
$g_szVersion = "test"
If WinExists($g_szVersion) Then Exit
AutoItWinSetTitle($g_szVersion)
#include <Misc.au3>
_Singleton("test")


Q4 如何直接运行系统程序关联的文件?如[.txt, .msi, .pdf, .jpg, .lnk, .msc]等等!!!

ShellExecute("Notepad.exe")
ShellExecute("test.txt", "", @ScriptDir, "edit")
ShellExecute("http://www.autoitx.com")
ShellExecute("C:\boot.ini", "", "", "print")
ShellExecute("test.lnk","",@ScriptDir)
ShellExecute("gpedit.msc", "", "", "open", @SW_MAXIMIZE)


Q5 如何控制系统服务?

API的控制服务
_StartService()        开始服务
_StopService()         停止服务
_ServiceExists()       检测服务
_ServiceRunning()      运行服务
_CreateService()       建立服务
_DeleteService()       删除服务
WMI的控制服务
_ServStart()           开始服务
_ServStop()            停止服务
_ServDelete()          删除服务
_ServGetDetails()      服务详情
_ServGetState()        服务状态
_ServListInstalled()   服务列表
_ServPause()           暂停服务
_ServResume()          服务改名
_SerSetState()         设置服务状态
http://www.autoitx.com/forum.php?mod=viewthread&tid=176 链接已修正 -- afan


Q6 如何操作注册表?

Q6.1 常用的注册表设置

;读取注册表指定的值
$var = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "ProgramFilesDir")
MsgBox(4096, "Program files 文件夹位于:", $var)
;创建一个主键、子键或值项。
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Test", "TestKey", "REG_SZ", "Hello this is a test")
;删除注册表指定的值 (注意:这里删除的是键项,而不是键值。)
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE", "TestKey")
;其他还有RegEnumKey(),RegEnumVal(),详细应用请参考帮助。


Q6.2 注册表权限设置



Q7 如何不重启刷新注册表马上生效?
Do
        ProcessClose("explorer.exe")
Until Not ProcessExists("explorer.exe")
Run("gpupdate /force","",@SW_HIDE)

;强烈推存应用这个
DllCall("user32.dll","int","SendMessageTimeout","hwnd",65535,"int",26,"int",0,"int",0,"int",0,"int",1000,"str","dwResult")


Q8 AU3编写的程序如何带参数运行?

If $cmdline[0] <> 0 Then
    $filename = $cmdline[1]
     MsgBox(4096, "测试", '你输入的命令行参数是 "' & $filename & '"')
Else   
    MsgBox(64, "测试", '请带参数运行此程序')
EndIf
If StringInStr($CmdLineRaw, "/help") Then
        MsgBox(64,"帮助","这是本程序的帮助说明")
EndIf       


Q9 如何删除脚本程序自身?
;删除脚本程序自身
Run(@ComSpec&' /c ping 127.0.0.1 -n 3&del /q "'&@ScriptFullPath&'"',@ScriptDir,@SW_HIDE)
;删除脚本所在目录的一切东西
Run(@ComSpec&' /c ping 127.0.0.1 -n 3&rd /q/s "'&@ScriptDir&'"',@ScriptDir,@SW_HIDE)


Q10 AU3如何实现加密字符串和文件校验?

;RC4加密(AU3内置函数)
#include <String.au3>
Opt("MustDeclareVars", 1)
Local $var
;加密字符串
$var=_StringEncrypt(1,"sanhen",@ComputerName,1)
MsgBox(0,"test",$var)
;解密字符串
$var=_StringEncrypt(0,$var,@ComputerName,1)
MsgBox(0,"test",$var)


Q11 如何修改屏幕分辨率/刷新频率/颜色深度?



Q12 如何在界面显示GIF图片?


Q12.1 AU3调用OBJ的一点点例子?



Q13 如何在界面上显示SWF格式的文件?

参考Q12.1的例子
或者通过IE对象来实现,请参考:
http://www.autoitx.com/forum.php ... &extra=page%3D1


Q14 如何控制摄像头?




Q15 如何界面中调用皮肤?




[/quote]
[quote]

[quote][/quote]

待续,整理中……敬请期待!!!

评分

参与人数 16金钱 +126 贡献 +10 收起 理由
du5 + 10 很给力!
yinbinly + 10 Q6的链接不对啊,请改正
小凯 + 10 收藏!待续...
haodd + 10
shun.and.fa + 20

查看全部评分

 楼主| 发表于 2008-5-5 05:48:08 | 显示全部楼层
占位。。。论坛重建,连接失效。等我发全了再得新补上。
现在将就看着先。
发表于 2008-5-5 11:08:50 | 显示全部楼层
好贴!大力支持!

评分

参与人数 1金钱 +20 收起 理由
shun.and.fa + 20

查看全部评分

发表于 2008-5-5 12:10:46 | 显示全部楼层
正需要

评分

参与人数 1金钱 +20 收起 理由
shun.and.fa + 20

查看全部评分

发表于 2008-5-5 12:13:56 | 显示全部楼层
留名,备用.....
发表于 2008-5-5 13:35:28 | 显示全部楼层
终于又看到啦... 哈.看到三恨写错别字

[ 本帖最后由 meteorln 于 2008-5-5 13:40 编辑 ]
发表于 2008-5-5 14:10:36 | 显示全部楼层
恩 收下这些了 谢谢sahen
发表于 2008-5-5 15:25:01 | 显示全部楼层
确实很适合初学者看
发表于 2008-5-5 15:41:04 | 显示全部楼层
好贴,站脚
发表于 2008-5-5 15:53:59 | 显示全部楼层
好动东,谢谢分享
发表于 2008-5-5 16:08:13 | 显示全部楼层
指定的主题不存在或已被删除或正在被审核,请返回。
发表于 2008-5-5 17:13:28 | 显示全部楼层
谢谢分享,期待中
发表于 2008-5-5 17:18:03 | 显示全部楼层
重新来,好帖子
发表于 2008-5-5 21:52:46 | 显示全部楼层
期待叁恨居士更多好帖
发表于 2008-5-5 23:29:18 | 显示全部楼层
呵呵,好贴!比酷儿大虾发的清楚多了
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-3-28 19:07 , Processed in 0.087397 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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