博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
10个小技巧atuotoit
阅读量:2401 次
发布时间:2019-05-10

本文共 3090 字,大约阅读时间需要 10 分钟。

10个小技巧,源自论坛

1,开机(windows运行)时间:(By Gooker)
$time = DllCall("kernel32.dll","int","GetTickCount")
MsgBox(0,0,$time[0]) ;$time[0]是window运行时间的毫秒数
2,根据文件扩展名取得相关图标(By 辣椒龙)
以txt文件为例。
1.找HKEY_CLASSES_ROOT/.txt下的默认键,值是“txtfile”。
2.找HKEY_CLASSES_ROOT/txtfile/DefaultIcon下的默认值,值是“%SystemRoot%/system32/shell32.dll,-152”。
逗号前是文件名(也可以是exe文件等),后是位置(正值为顺序号,负值为索引号)。
3,设置Combo内内容为不可更改(样式)(By chasedream)
GUICtrlCreateCombo("", 32, 45, 145, 25,$SS_BLACKFRAME)
4,判断大写键盘灯亮还是灭(By Gooker)
$result = DllCall("user32.dll","Int","GetKeyState","int",20)
If @error = 1 Then
           MsgBox(0,"错误","函数调用失败") ;基本上不会的 :)
           Exit
Else
           If $result[0] = 1 Then
                   MsgBox(0,"大写键盘灯状态","亮")
           Else
                   MsgBox(0,"大写键盘灯状态","灭")
           EndIf
EndIf
5,调用迅雷下载(By thesnow)
$obj=ObjCreate("ThunderAgent.Agent")
;$obj.Addtask("下载地址", "另存文件名", "保存目录","任务注释","引用地址","开始模式", "只从原始地址下载","从原始地址下载线程数") ;添加下载任务
;说明一下,开始模式只能为1(立即)/0(手动)/-1,只从原始地址下载请设置为真或者假(True/False)(1/0)
$obj.AddTask(" );添加下载任务
$obj.CommitTasks(1)                   ;提交任务.
6,查CPU温度(WMI)(By zcbenz)
Dim $temp = ""
While 1
       $objWMIService = ObjGet("winmgmts://./root/WMI")
       $colItems = $objWMIService.ExecQuery("SELECT * FROM MSAcpi_ThermalZoneTemperature")
       $temp = ""
       For $objItem in $colItems
           $temp &= "CurrentTemperature: " & ($objItem.CurrentTemperature - 2732) / 10 & "°C" & @LF
       Next
       ToolTip(StringTrimRight($temp,1),100,0)
       $objWMIService = 0
       Sleep(5000)
WEnd
7,调用放大镜的功能(By zcbenz)
Global $SRCCOPY = 0x00CC0020
Global $leave = 0
HotKeySet("{PAUSE}","leave")
SplashTextOn ( "AU3MAG", "" , 100 , 100 , 0, 0, 1 )
$MyhWnd = WinGetHandle("AU3MAG")
While Not $leave
     Sleep(25)
     MAG()
WEnd
Func MAG()
     $MyHDC = DLLCall("user32.dll","int","GetDC","hwnd",$MyhWnd)
     If @error Then Return
     $DeskHDC = DLLCall("user32.dll","int","GetDC","hwnd",0)
     If Not @error Then
        $xy = MouseGetPos()
        If Not @error Then
           $l = $xy[0]-10
           $t = $xy[1]-10
           DLLCall("gdi32.dll","int","StretchBlt","int",$MyHDC[0],"int",0,"int",0,"int",100,"int",100,"int",$DeskHDC[0],"int",     $l,"int",$t,"int",20,"int",20,"long",$SRCCOPY)
        EndIf
        DLLCall("user32.dll","int","ReleaseDC","int",$DeskHDC[0],"hwnd",0)
     EndIf
     DLLCall("user32.dll","int","ReleaseDC","int",$MyHDC[0],"hwnd",$MyhWnd)
EndFunc
Func leave()
     $leave = 1
EndFunc
7,打开我的电脑,定位到C盘(By 辣椒龙)
Run(@WindowsDir & "/explorer.exe /e, /select,C:/")
8,限制input框为数字和数量限制(By dyljf & 20ysbb)
$Input1 = GUICtrlCreateInput("", 95, 205, 129, 21,$ES_NUMBER)
GUICtrlSetLimit(-1, 9)
9,强制刷新组策略和注册表 (By redapple)
xp/2003命令
gpupdate /force
2k命令
secedit /refreshpolicy machine_policy /enforce
10,获得进程路径 (By sanhen)
Func Processpath($iPID)
       Local $aProc = DllCall('kernel32.dll', 'hwnd', 'OpenProcess', 'int', BitOR(0x0400, 0x0010), 'int', 0, 'int', $iPID)
       If $aProc[0] = 0 Then Return SetError(1, 0, '')
       Local $vStruct = DllStructCreate('int[1024]')
       DllCall('psapi.dll', 'int', 'EnumProcessModules', 'hwnd', $aProc[0], 'ptr', DllStructGetPtr($vStruct), 'int', DllStructGetSize($vStruct), 'int_ptr', 0)
       Local $aReturn = DllCall('psapi.dll', 'int', 'GetModuleFileNameEx', 'hwnd', $aProc[0], 'int', DllStructGetData($vStruct, 1), 'str', '', 'int', 2048)
       If StringLen($aReturn[3]) = 0 Then Return SetError(2, 0, '')
       Return $aReturn[3]
EndFunc
 

转载地址:http://mnpob.baihongyu.com/

你可能感兴趣的文章
本周搞几件事情,说说你的计划吧
查看>>
在oracle实践学习位运算 第一篇
查看>>
通过sql语句分析足彩
查看>>
生产环境sql语句调优实战第七篇
查看>>
一个oracle查询引起的bug
查看>>
通过shell来比较oracle和java中的字符串使用
查看>>
关于纠结的recycle pool的设置
查看>>
清华梦的粉碎读后感--论理想主义者王垠
查看>>
生活中的优化和向往(r11笔记第72天)
查看>>
最近的几个技术问题总结和答疑(七)
查看>>
容灾切换中的数据库宕机问题简单分析(一)
查看>>
几年前的一次答疑解惑
查看>>
MySQL RR隔离级别的更新冲突策略
查看>>
MySQL索引条件下推的简单测试
查看>>
通过SQL解读财富的分配(二)
查看>>
一个MySQL死锁问题的复现
查看>>
数据迁移中的几个问题总结
查看>>
心理学中的效应简单解读(r12笔记第24天)
查看>>
mysqldump简单解析
查看>>
Oracle备库无法连接主库的问题分析
查看>>