找回密码
 加入
搜索
查看: 2770|回复: 5

[系统综合] 关于USB插入检索data导入导出的问题,求思路

  [复制链接]
发表于 2011-7-3 11:02:38 | 显示全部楼层 |阅读模式
学习AU3有一段时间了,大言不惭的和老板吹了次AU3的牛,老板随即提出一个写作要求:
公司有台专供人们拷资料的PC,老板的意思是员工可以直接插上U盘进行杀毒的动作,导入导出资料以log的形式记录下来,我想了很长时间,一直delay到了现在;
先说我的思路,开机启动一脚本检查U盘的插入,
#include <Process.au3>
$strComputer = "."
$objWMIService = ObjGet("winmgmts:\" & $strComputer & "\root\cimv2")

$colEvents = $objWMIService.ExecNotificationQuery _
("Select * From __InstanceOperationEvent Within 5 Where " _
& "TargetInstance isa 'Win32_LogicalDisk'")

While 1
$objEvent = $colEvents.NextEvent
    If $objEvent.TargetInstance.DriveType = 2 Then 
    Select 
        Case $objEvent.Path_.Class()="__InstanceCreationEvent"
                        MsgBox(262144, "哎呀", "可移动磁盘" & $objEvent.TargetInstance.DeviceId & "已经插进来了!",3)
                Case $objEvent.Path_.Class()="__InstanceDeletionEvent"                        
                        ;MsgBox(262144, "哎呀", "可移动磁盘" & $objEvent.TargetInstance.DeviceId & "被拔出去了~",3)
                EndSelect
EndIf
WEnd
公司用的symantec,开始想检查到U盘的插入,然后找代码进行杀毒,可偏偏无果,于是又生一计,在u盘扫毒前禁止打开U盘,找了段dos命令,可又对U盘不起作用,凌乱的我深知能力不行,不怪代码。
$U ="U盘盘符"
_RunDos("cacls "&$U&": /e /d %username%")
再说重头戏,data的导入导出LOG记录的问题,导入可能容易点还要面对随时拔掉的U盘记录不全的问题,导出呢?一点都没有思路
好吧,我知道,牛皮吹破了
发表于 2011-7-3 22:01:29 | 显示全部楼层
用SetClipboardViewer函数获得WM_DRAWCLIPBOARD消息,从而得到拷贝粘贴信息,你就可以监视u盘的data的导入导出
发表于 2011-7-3 22:39:10 | 显示全部楼层
本帖最后由 水木子 于 2011-7-3 22:42 编辑

这是我之前学习Windows Message时做的练习,希望能帮到你吧!
当然这不光是插入优盘插入的消息,这是设备发生改变所产生的消息,所以如果只需要优盘插入的消息还需要做些修改。

Global Const $WM_DEVICECHANGE = 537 ;设备发生改变
Global Const $DBT_DEVICEARRIVAL = 0x8000 ;设备插入
Global Const $DBT_DEVICEREMOVECOMPLETE = 0x8004 ;设备移除

GUIRegisterMsg($WM_DEVICECHANGE, 'My_Message_Test')

GUICreate("Test", 400, 300)
;GUISetState()

Do
Until GUIGetMsg() = -3

Func My_Message_Test($hWnd, $Msg, $wParam, $lParam)
        Switch $wParam
                Case $DBT_DEVICEARRIVAL
                        MsgBox(0, '提示!', '检测到设备插入 - ' & $lParam)
                Case $DBT_DEVICEREMOVECOMPLETE
                        MsgBox(0, '提示!', '检测到设备被移除 - ' & $lParam)
        EndSwitch
EndFunc   ;==>My_Message_Test
发表于 2011-7-3 23:42:28 | 显示全部楼层
这是我之前学习Windows Message时做的练习,希望能帮到你吧!
当然这不光是插入优盘插入的消息,这是设备发 ...
水木子 发表于 2011-7-3 22:39



    水哥是孙悟空? 这么厉害!
 楼主| 发表于 2011-7-4 01:29:18 | 显示全部楼层
回复 2# happytc

谢谢了,明天测试
 楼主| 发表于 2011-7-4 01:32:14 | 显示全部楼层
回复 3# 水木子


    谢谢孙悟空大哥,我明天好好屡屡
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-14 14:14 , Processed in 0.092092 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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