sensel 发表于 2009-4-25 19:42:31

关于WMI中的页面文件,和系统托盘菜单的两个问题

在WMI的命令行工具wmic中,直接可用create和delete创建/删除页面文件,但我翻了很久MSDN上Win32_PageFile相关部分,都找不到如何实现。请教怎样在au3中通过wmi更改页面文件?
还有就是,现在已利用_SysTray_ClickItem打开系统托盘中某程序的菜单,那么如何点击菜单中的特定项目(除了用Send发送按键)?而且,为何无法用au3info无法获取菜单句柄?

sanhen 发表于 2009-4-25 21:34:43



; autoit中文论坛 http://www.autoitx.com

$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20
$colItems = ""
$strComputer = "localhost"

$Output=""
$Output = $Output & "Computer: " & $strComputer& @CRLF
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_PageFileSetting", "WQL", _
                                          $wbemFlagReturnImmediately + $wbemFlagForwardOnly)

If IsObj($colItems) then
   For $objItem In $colItems
    $objItem.InitialSize = 1500;初始大小(MB)
    $objItem.MaximumSize = 3000;最大值(MB)
                     
    $objItem.Put_
        Next
Else
   Msgbox(0,"WMI 输出","你确认你的WMI服务开启了?或者没有找到WMI对象: " & "Win32_PageFileSetting" )
Endif



要删除将最小值和最大值设为0,就可以了。

sensel 发表于 2009-4-25 23:09:35

多谢三恨。
删除学会了,但是有办法创建吗?

sensel 发表于 2009-4-27 01:47:22

顶一下,看看有没有解决办法。
菜单那个,现在可以获取弹出菜单的窗口句柄,但是找不到有效控件。。。

sensel 发表于 2009-4-27 06:02:35

第2个问题快要解决了,方法是参考以下链接写一个UDF。原来这不是想像中那么复杂的。。。
http://www.autoitx.com/forum.php?mod=viewthread&tid=5354&extra=page%3D1

sensel 发表于 2009-4-27 09:08:13

神啊,,,获取菜单项目解决了,才发现UDF的_GUICtrlMenu部分居然没有模拟点击???
那我得到了菜单又有何用?最后还得回到老路去Send?还是模仿_GUICtrlToolbar_ClickButton自己写点击函数?

sensel 发表于 2009-4-27 12:12:48

第2个问题完全解决,相关函数已放在UDF区 http://www.autoitx.com/forum.php?mod=viewthread&tid=6698&extra=page%3D1

foxdcj 发表于 2009-7-16 00:24:55

模拟点击怎么搞啊?
页: [1]
查看完整版本: 关于WMI中的页面文件,和系统托盘菜单的两个问题