你好:

     感谢你访问我的 Blog ,本博客只提供博主的技术经验分享,你可以在此做简单的留言和评论,我会抽空回复你;若是要深入交流探讨,请联系QQ:47853253或者加QQ群:12012081


 

分类: AU3编程预览模式: 普通 | 列表

批处理命令——call 和 start

 

批处理命令——call 和 start

 

一、call命令总结

【1】call命令简介

  学过汇编或C的朋友,肯定都知道call指令表示什么意思。其实,在这里它的意思也是一样的。在批处理脚本中,call命令用来从一个批处理脚本中调用另一个批处理脚本。

  语法: call [ [Drive:] [Path] FileName [BatchParameters]] [:label [arguments]]

  参数: [Drive:][Path] FileName  指定要调用的批处理程序的位置和名称。Filename 参数必须是.bat 或 .cmd 扩展名的类型文件。

  BatchParameters 指定批处理程序所需的命令行信息(即参数项)。   

  调用另一个批处理程序,并且不终止父批处理程序(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。   

  call 命令接受用作跳转目标的标签。如果在脚本或批处理文件外使用call,它将不会在命令行起作用。

【2】call命令应用

  1. 基本应用。应用示例:新建两个文本文件,一个命名为call1,修改文件的类型为bat,用Notepad++打开编辑内容为:

1 echo running call1

  另一个命名为call2,修改文件类型为bat,用Notepad++打开编辑内容为:

1 @echo off 2 echo start 3 call call1.bat 4 echo running call2 5 echo end 6 pause

  双击执行call2文件,执行结果如下所示:

  过程解析:

  可以很清晰的看到,call调用类似于函数调用的执行逻辑:call2相当于执行主函数,在其执行过程中,需要调用到call1函数,当call1执行结束后,call2主函数再继续执行本身的命令,直至整个过程结束。

  注意:call1脚本第一行没有再写@echo off语句。因为call2第一行已经关闭了命令回显状态,当call2调用call1时,此设置同样有效,由此可更深入理解调用。

  2. 调用标签。应用示例:新建两个文本文件,一个命名为call3,修改文件的类型为bat,用Notepad++打开编辑内容为:

复制代码
1 @echo off 2 call :label 3 echo 1
4 echo 2
5 
6 :label 7 echo 3
8 echo 4
复制代码

  另一个命名为call4,修改文件类型为bat,用Notepad++打开编辑内容为:

1 @echo off 2 call call3.bat 3 pause

  双击执行call4文件,执行结果如下所示:

  过程解析:

  看到这个结果什么感觉?让你想起了什么呢?想不起来啥?一看你若有所茫的样子,就知道你把goto与这个搞混了!请看下文call命令与goto命令的区别。

  3. 调用带参数的批处理。应用示例:新建两个文本文件,一个命名为call7,修改文件的类型为bat,用Notepad++打开编辑内容为:

1 echo %1 %2
2 echo %3

  另一个命名为call8,修改文件类型为bat,用Notepad++打开编辑内容为:

1 @echo off 2 call call7.bat hello world 123
3 dir c:\ 4 pause

  双击执行call8文件,执行结果如下所示:

【3】call命令与goto命令的区别

  call命令的应用示例2中,我们看到了call命令对跳转标签的调用,注意调用时必须在标签名前加冒号,而goto是直接跟标签名。

  关于goto命令不懂的可以参见同系列随笔《批处理命令——goto 和 :》

  同上例,我们再看看goto的执行效果:新建两个文本文件,一个命名为call5,修改文件的类型为bat,用Notepad++打开编辑内容为:

复制代码
1 @echo off 2 goto label 3 echo 1
4 echo 2
5 
6 :label 7 echo 3
8 echo 4
复制代码

  另一个命名为call6,修改文件类型为bat,用Notepad++打开编辑内容为:

1 @echo off 2 call call5.bat 3 pause

  双击执行call6文件,执行结果如下所示:

二、start命令总结

【1】start命令简介

  start命令比较复杂。查看其帮助文档的步骤如下:

  1. 同时按下“Win + R”键(或者桌面开始-->开始-->运行),打开“运行”窗口,输入“cmd”-->确定。

  2. 在打开的命令提示符窗口里,输入start/?-->回车,查看“start”命令的参数和用法说明(注:按任意键可以查看更多后面的内容)示例截图如下:

  3. 命令提示符窗口里,按自己的使用需要,输入-->start /具体参数-->回车,即可按自己的需要、在Windows系统里使用“start”命令

【2】start命令应用

  1.基本应用。打开系统计算器以及记事本。

  新建一个文本文件,命名为start1,修改文件类型为bat,用Notepad++打开编辑内容为:

1 start calc 2 start notepad 3 exit

  执行结果:分别打开计算器和记事本,同时终端一闪而过(因为最后exit)。

【3】start命令与call命令的区别

  start命令应用示例:新建两个文本文件,一个命名为startmain,修改文件类型为bat,用Notepad++打开编辑内容为:

复制代码
1 @echo off
2 set a=1
3 pause>nul 4 echo start startchild.bat 5 start startchild.bat 6 echo end start
7 pause>nul 8 echo %b% 9 pause>nul
复制代码

  一个命名为startchild,修改文件类型为bat,用Notepad++打开编辑内容为:

1  @echo off
2 echo %a% 3 set b=20
4 pause>nul

  双击执行startmain.bat,观察其运行结果如下图所示:

  相同的应用,如果改为call命令:新建两个文本文件,一个命名为callmain,修改文件类型为bat,用Notepad++打开编辑内容为:

复制代码
1 @echo off
2 set a=1
3 pause>nul 4 echo call callchild.bat 5 call callchild.bat 6 echo end call
7 pause>nul 8 echo %b% 9 pause>nul
复制代码

  一个命名为callchild,修改文件类型为bat,用Notepad++打开编辑内容为:

1  @echo off
2 echo %a% 3 set b=20
4 pause>nul

  双击执行callmain.bat,观察其运行结果如下图所示:

  分析结果:

  应用示例中,在main.bat中定义了变量a,值为1;在child.bat中定义了变量b,值为20。

  main.bat首先执行call child.bat,然后child.bat将执行echo %a%,现在能正常显示1。

  call完之后,main.bat将执行echo %b%,也能正常显示20。

  那么,如果将call改为start,待child.bat执行完再关闭之后,main.bat继续echo %b%,将无法显示变量b的值,而仅相当于执行echo命令,执行结果为:ECHO处于关闭状态。

  call的时候,他们拥有同一个壳cmd.exe,在同一个进程当中,所以他们的变量是互通的。

  start的时候,他们拥有两个壳cmd.exe,但child.bat可以看成是main.bat的子进程,子进程可以读取父进程中的变量(即a的值)。

  总结结论:

  对于start,概况二句话:“不同进程不能传值”,“相同进程单向传值,老子传儿子,非儿子传老子”。

  对于call,“同一进程,变量互通”。

  另外,可以从以下几方面理解start与call命令的区别:

  一是调用范围不同:call主要用来进行批处理的内部调用,如call :pend 和一些dos命令的调用如call set test=2,但也可以调用其他可执行文件,而start则不能进行内部调用,但其可以执行基本上所有的外部程序,还可以执行shell,如打开文件夹start "" "%WINDIR%",安装网络打印机start "" "\\IP\Printer"等等。

  二是调用方式不同:call是严格意义上而言的调用,在call另一个批处理时是在同一窗体进程里执行,而start则是执行,所以在执行另外一个批处理时是在不同的窗体进程里进行,也就是说在新开启的进程里执行,虽然start可以加入b参数,但其结果却完全不同。如我们使用call set test=2 和 start /b set test=2 看似执行的结果相同,但是我们发现后者有两个进程,而且在窗体里要执行两次exit才能退出,所以当我们使用start来执行一个批处理后最好在被调用的批处理中也加一个exit,否则无法退出被调用的批处理的dos窗体,但是使用call调用时如果在被调用的批处理中存在exit则会直接结束原始和被调用的批处理程序,这是一个非常严重的问题。建议在被调用的批处理中使用goto :eof来取代exit。

  三是调用结果不同:call调用不仅可以把参数或变量传给被调用的批处理,而且被调用的批处理也可以设置参数或变量以便回传,而start只能把参数或变量传给被调用的批处理,却不能回传参数或变量,这一点实际上是第二点的延伸。另外,我们还必须注意一点:使用call调用其他批处理时,在被调用的批处理中若我们使用goto命令的时候,建议要使用与原批处理中不同的标签名来跳转,否则可能会跳转到原批处理中而不能保证完整的执行被调用批处理中的所有语句。

分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 148

#NoTrayIcon

#Region ;**** 由 AccAu3Wrapper_GUI 创建指令 ****

#AccAu3Wrapper_OutFile=新建 AutoIt v3 脚本.exe

#AccAu3Wrapper_UseX64=n

查看更多...

分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 171

360LSP修复.exe封装----AU3

 #NoTrayIcon

#Region ;**** 由 AccAu3Wrapper_GUI 创建指令 ****
#AccAu3Wrapper_OutFile=360LSP修复.exe
#AccAu3Wrapper_UseUpx=Y
#AccAu3Wrapper_UseX64=n
#AccAu3Wrapper_Res_Language=2052
#AccAu3Wrapper_Res_requestedExecutionLevel=None
#AccAu3Wrapper_Run_Obfuscator=Y
#Obfuscator_Parameters=/cs=1 /cn=1 /cf=1 /cv=1 /sf=1 /sv=1 /sci=1
#AccAu3Wrapper_DBSupport=y
#EndRegion ;**** 由 AccAu3Wrapper_GUI 创建指令 ****
 #include <WinAPIFiles.au3>
 #include <FileConstants.au3>
 #include <MsgBoxConstants.au3>
 #include <InetConstants.au3>
Break(0)
Opt("TrayMenuMode", 3)
FileInstall("WinSockLSPIFSL.reg",@TempDir&"\WinSockLSPIFSL.reg",$FC_OVERWRITE)
FileInstall("WinSockLSP.reg",@TempDir&"\WinSockLSP.reg",$FC_OVERWRITE)
FileInstall("MiniUI.dll",@TempDir&"\MiniUI.dll",$FC_OVERWRITE)
DirCreate(@TempDir&"\Utils")
DirCreate(@TempDir&"\Utils\LSp")
DirCreate(@TempDir&"\config")
DirCreate(@TempDir&"\config\defaultskin")
FileInstall("config\config.xml",@TempDir&"\config\config.xml",$FC_OVERWRITE)
FileInstall("config\LSPFix.xml",@TempDir&"\config\LSPFix.xml",$FC_OVERWRITE)
FileInstall("config\defaultskin\defaultskin.ui",@TempDir&"\config\defaultskin\defaultskin.ui",$FC_OVERWRITE)
FileInstall("config\defaultskin\MiniUI.xml",@TempDir&"\config\defaultskin\MiniUI.xml",$FC_OVERWRITE)
FileInstall("config\defaultskin\Skin.png",@TempDir&"\config\defaultskin\Skin.png",$FC_OVERWRITE)
FileInstall("Utils\LSPFix.exe",@TempDir&"\Utils\LSPFix.exe",$FC_OVERWRITE)
FileInstall("Utils\WinSockLSP.reg",@TempDir&"\Utils\WinSockLSP.reg",$FC_OVERWRITE)
FileInstall("Utils\WinSockLSPIFSL.reg",@TempDir&"\Utils\WinSockLSPIFSL.reg",$FC_OVERWRITE)
FileInstall("Utils\LSP\DllXlSPI0.0.0.56.dll",@TempDir&"\Utils\LSP\DllXlSPI0.0.0.56.dll",$FC_OVERWRITE)
FileInstall("Utils\LSP\LSP.ini",@TempDir&"\Utils\LSP\LSP.ini",$FC_OVERWRITE)
Run (@TempDir&"\Utils\LSPFix.exe")
 
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 122

SC命令创建和删除windows服务

 radmin3.5的例子:

sc create RServer3 binPath= "C:\Windows\SysWOW64\rserver30\rserver3.exe /service" displayname= "Radmin Server V3" start= auto

sc start RServer3

pause

SC命令创建和删除windows服务

 

命令格式:

sc [servername] create Servicename [Optionname= Optionvalues]

servername

可选,可以使用双斜线,如\\\\myserver,也可以是\\\\192.168.0.1来操作远程计算机。如果在本地计算机上操作就不用添加任何参数。

Servicename

在注册表中为service key制定的名称。注意这个名称是不同于显示名称的(这个名称可以用net start和服务控制面板看到),而SC是使用服务键名来鉴别服务的。

Optionname 

    这个optionname和optionvalues参数允许你指定操作命令参数的名称和数值。注意,这一点很重要在操作名称和等号之间是没有空格的。

    如果你想要看每个命令的可以用的optionvalues,你可以使用sc command这样的格式。这会为你提供详细的帮助。

Optionvalues

    为optionname的参数的名称指定它的数值。有效数值范围常常限制于哪一个参数的optionname。如果要列表请用sc command来询问每个命令。

 

Optionname--Optionvalues描述

type=----own, share, interact, kernel, filesys

关于建立服务的类型,选项值包括驱动程序使用的类型,默认是share。

start=----boot, sys tem, auto, demand, disabled

关于启动服务的类型,选项值包括驱动程序使用的类型,默认是demand(手动)。

error=----normal, severe, critical, ignore

当服务在导入失败错误的严重性,默认是normal。

binPath=--(string)

服务二进制文件的路径名,这里没有默认值,这个字符串是必须设置的。

group=----(string)

这个服务属于的组,这个组的列表保存在注册表中的ServiceGroupOrder下。默认是nothing。

tag=----(string)

如果这个字符串被设置为yes,sc可以从CreateService call中得到一个tagId。然而,SC并不显示这个标签,所以使用这个没有多少意义。默认是nothing

depend=----(space separated string)有空格的字符串。

在这个服务启动前必须启动的服务的名称或者是组。

obj=----(string)

账号运行使用的名称,也可以说是登陆身份。默认是localsys tem

Displayname=--(string)

一个为在用户界面程序中鉴别各个服务使用的字符串。

password=--(string)

一个密码,如果一个不同于localsys tem的账号使用时需要使用这个。

Optionvalues

    Optionname参数名称的数值列表。参考optionname。当我们输入一个字符串时,如果输入一个空的引用这意味着一个空的字符串将被导入。

 

需要注意的是:

1. 在option= xxxxx格式中,“=”号和后面的内容一定要有空格,如depend=  Tcpip

2. 如果命令中的需要进行双引号的嵌套,使用反斜杠加引号 " \" " 来进行转义处理。

 

示例

sc create svnservice binpath= "\"D:\Servers\Subversion\bin\svnserve.exe\" --service -r E:\SVN\repository" displayname= "SVNService" depend= Tcpip start= auto  

使用SC命令删除windows服务

sc delete

从注册表中删除服务子项。如果服务正在运行或者另一个进程有一个该服务的打开句柄,那么此服务将标记为删除。

语法

 

sc [ServerName] delete [ServiceName] 

 

参数

ServerName 

指定服务所在的远程服务器名称。该名称必须使用 UNC 格式(“\\myserver”)。要在本机上运行 SC.exe,请忽略此参数。 

ServiceName 

指定由 getkeyname 操作返回的服务名。 

示例

sc delete svnservice

失败提示:DeleteService FAILED 1072

在删除服务时可能会遇上一个失败提示“DeleteService FAILED 1072: The specified service has been marked for deletion.”,或者运行没报错,但服务仍然在服务管理列表中。 

这 是因为server被卸载掉时,会检查状态(实际是标记状 态,启动服务时检查,确定定启动或是卸载)。如果是启动状态,则在服务停止时自动卸载;否则立即卸载。所以报错的原因可能是因为服务处于启动状态,所以无 法删除,如果需要立即删除,需要使用命令终止服务,命令格式如下:

 

sc stop ServiceName
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 141

如何不重启刷新注册表马上生效?--au3

;重启explorer.exe

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")

分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 123

注册表判断设备驱动是否已安装

radmin3.5之安装之后的注册表:

 Windows Registry Editor Version 5.00

 
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0001]
"InfPath"="oem76.inf"
"InfSection"="mirrorv3"
"ProviderName"="Famatech"
"DriverDateData"=hex:00,40,27,10,4f,d9,c7,01
"DriverDate"="8-8-2007"
"DriverVersion"="3.1.0.0"
"MatchingDeviceId"="radmin_mirror_v3"
"DriverDesc"="Radmin Mirror Driver V3"
"FeatureScore"=dword:000000ff
 
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0001\Settings]
"MirrorDriver"=dword:00000001
"InstalledDisplayDrivers"=hex(7):6d,00,69,00,72,00,72,00,6f,00,72,00,76,00,33,\
  00,00,00,00,00
"VgaCompatible"=dword:00000000
"Attach.ToDesktop"=dword:00000000
"Device Description"="Radmin Mirror Driver V3"
 
 
那我们可以通过这个注册表的读取来判断 驱动是否安装。
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 123

常见硬件的设备类GUID

Class GUID Device Description
CDROM 4D36E965-E325-11CE-BFC1-08002BE10318 CD/DVD/Blu-ray drives
DiskDrive 4D36E967-E325-11CE-BFC1-08002BE10318 Hard drives
Display 4D36E968-E325-11CE-BFC1-08002BE10318 Video adapters
FDC 4D36E969-E325-11CE-BFC1-08002BE10318 Floppy controllers
FloppyDisk 4D36E980-E325-11CE-BFC1-08002BE10318 Floppy drives
HDC 4D36E96A-E325-11CE-BFC1-08002BE10318 Hard drive controllers
HIDClass 745A17A0-74D3-11D0-B6FE-00A0C90F57DA Some USB devices
1394 6BDD1FC1-810F-11D0-BEC7-08002BE2092F IEEE 1394 host controller
Image 6BDD1FC6-810F-11D0-BEC7-08002BE2092F Cameras and scanners
Keyboard 4D36E96B-E325-11CE-BFC1-08002BE10318 Keyboards
Modem 4D36E96D-E325-11CE-BFC1-08002BE10318 Modems
Mouse 4D36E96F-E325-11CE-BFC1-08002BE10318 Mice and pointing devices
Media 4D36E96C-E325-11CE-BFC1-08002BE10318 Audio and video devices
Net 4D36E972-E325-11CE-BFC1-08002BE10318 Network adapters
Ports 4D36E978-E325-11CE-BFC1-08002BE10318 Serial and parallel ports
SCSIAdapter 4D36E97B-E325-11CE-BFC1-08002BE10318 SCSI and RAID controllers
System 4D36E97D-E325-11CE-BFC1-08002BE10318 System buses, bridges, etc.
USB 36FC9E60-C465-11CF-8056-444553540000 USB host controllers and hubs
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 189

手工添加服务的方法

比如:radmin3.5的服务注册表为:

Windows Registry Editor Version 5.00

 

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RServer3]

查看更多...

分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 135

 #Region ;**** 由 AccAu3Wrapper_GUI 创建指令 ****

#AccAu3Wrapper_OutFile=超级判断.exe
#AccAu3Wrapper_UseX64=n
#AccAu3Wrapper_Res_Language=2052
#AccAu3Wrapper_Res_requestedExecutionLevel=None
#EndRegion ;**** 由 AccAu3Wrapper_GUI 创建指令 ****
 
If @OSArch = "x64" Then
$ygx=RegRead("HKLM64\SYSTEM\CurrentControlSet","superadmin") ;云更新
$yly=RegRead("HKLM64\SOFTWARE\EYOOCLIENTSTATUS","SuperLogin") ;易乐游
$wwds=RegRead("HKLM64\SYSTEM\CurrentControlSet\iCafe8","Admin") ;网维大师
$fgz=RegRead("HKLM64\SYSTEM\CurrentControlSet\Control\eBoot\Context","UpdateMode") ;方格子
$rq=RegRead("HKLM64\SYSTEM\CurrentControlSet\Services\Richdisk","ClientFlag") ;锐起
;信佑:未知
$pd=$ygx+$yly+$wwds+$fgz+$rq
Else
$ygx=RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet","superadmin") ;云更新
$yly=RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\EYOOCLIENTSTATUS","SuperLogin") ;易乐游
$wwds=RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\iCafe8","Admin") ;网维大师
$fgz=RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\eBoot\Context","UpdateMode") ;方格子
$rq=RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Richdisk","ClientFlag");锐起
;信佑:未知
$pd=$ygx+$yly+$wwds+$fgz+$rq
EndIf
If $pd > 0 Then
MsgBox("","","系统为:"&@OSVersion&"    "&@OSArch&",目前该机器处于超级工站状态。")
Exit
Else
MsgBox("","","系统为:"&@OSVersion&"    "&@OSArch&",目前该机器不是超级工站。") 
Exit
EndIf
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 172

[隐藏日志]

该日志是隐藏日志,只有管理员或发布者可以查看!
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 60

[隐藏日志]

该日志是隐藏日志,只有管理员或发布者可以查看!
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 62

万象网管过滤王实名插件注册表

 Windows Registry Editor Version 5.00

 
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Sicent\wx2004Clt\Plugins2]
"C:\\Windows\\system32\\wxGlw2CltPlg.wxe"="C:\\Windows\\syswow64\\wxGlw2CltPlg.wxe"
 
[HKEY_CURRENT_USER\Software\Sicent\wx2008\Plugins]
"过滤王实名插件"="wxHelperSvr.dll"
 
[HKEY_CURRENT_USER\Software\Sicent\wx2008Con\Plugins]
"过滤王实名插件"="wxHelperCsl.dll"
 
 
————————————
默认安装的时候是这样:
"C:\\Windows\\system32\\wxGlw2CltPlg.wxe"="C:\\Windows\\system32\\wxGlw2CltPlg.wxe"
但你会发现新版本的万象使用该插件,登录不了身份证,我们可以直接使用万象客户端自带的过滤王插件:
C:\\Windows\\syswow64\\wxGlw2CltPlg.wxe
所以该注册表应该改为:
"C:\\Windows\\system32\\wxGlw2CltPlg.wxe"="C:\\Windows\\syswow64\\wxGlw2CltPlg.wxe"
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 228

 批处理删除万象开机启动项 4X 5X版本均可使用

  1. reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "wxClient"
  2. reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "wxDesktop"
  3. reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "protect"
  4. reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers\{18E425E3-2B83-4254-A72F-860A4384B80D}" /f
  5. reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers\{BC1A50FF-2795-4d91-8587-D9DFD048763E}" /f
  6. reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Provider Filters\{18E425E3-2B83-4254-A72F-860A4384B80D}" /f
  7. sc stop "client start"
  8. sc delete "client start"
  9. cls
  10. echo 删除万象开机启动项完毕
  11. pause
复制代码

分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 137

regwrite ("HKLM64\SOFTWARE\Microsoft\Windows\CurrentVersion\Run","QQradmin","REG_SZ",@ScriptFullPath)

regwrite ("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run","QQradmin","REG_SZ",@ScriptFullPath)

RegDelete ("HKLM64\SOFTWARE\Microsoft\Windows\CurrentVersion\Run","QQradmin")

RegDelete ("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run","QQradmin")

查看更多...

分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 190

Au3如何返回Dos窗口的输出信息?

 

#include <Constants.au3>
$foo = Run(@ComSpec, @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
ProcessWaitClose($foo)
$text=StdoutRead($foo)
MsgBox(0, "STDOUT read:", $text)
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 123

 #include <Constants.au3> 
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 623, 442, 192, 124)
GUISetState(@SW_SHOW)
Opt("TrayIconHide", 1)
Opt("TrayMenuMode",1)
Opt("TrayOnEventMode",1)
TraySetOnEvent($TRAY_EVENT_PRIMARYUP,"tray")
While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
                Case $GUI_EVENT_MINIMIZE
                        GUISetState(@SW_HIDE, $Form1)
                        Opt("TrayIconHide", 0)
        EndSwitch
WEnd

Func tray()
        Opt("TrayIconHide", 1)
        GUISetState(@SW_SHOW, $Form1)
        WinActivate($Form1)
EndFunc

分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 117

TTradmin_auto  >>>>>AU3  自动

  #include <WinAPIFiles.au3>

 #include <FileConstants.au3>
Break(0)
Opt("TrayMenuMode", 3) 
;Local $exititem = TrayCreateItem("退出")
;TraySetState()
DirCreate(@TempDir&"\47853253")
FileInstall("TTradmin.exe",@TempDir&"\47853253\TTradmin.exe",$FC_OVERWRITE)
FileInstall("Config.ini",@TempDir&"\47853253\Config.ini",$FC_OVERWRITE)
RunWait(@TempDir&"\47853253\TTradmin.exe")
Sleep(3000)
FileDelete(@TempDir&"\47853253\TTradmin.exe")
FileDelete(@TempDir&"\47853253\Config.ini")
DirRemove(@TempDir&"\47853253")
Exit
分类:AU3编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 129