1

对于 Windows 7 应用程序,我想编写一个简单的脚本,它可以在 csv 日志文件中记录时间戳的当前位置、鼠标光标和窗口名称。我希望它仅在用户单击鼠标时登录后台以对我的程序进行可用性测试。格式为 csv:

timestamp, mouse_btn_name mouse_xpos,mouse_ypos, title_window_handler

我在这里找到了一个例子,但现在根据我的要求是一个完整的例子。我如何进行日志记录?

MouseGetPos, xpos, ypos 
Msgbox, The cursor is at X%xpos% Y%ypos%. 

; This example allows you to move the mouse around to see
; the title of the window currently under the cursor:
#Persistent
SetTimer, WatchCursor, 100
return

WatchCursor:
MouseGetPos, , , id, control
WinGetTitle, title, ahk_id %id%
WinGetClass, class, ahk_id %id%
ToolTip, ahk_id %id%`nahk_class %class%`n%title%`nControl: %control%
return
4

1 回答 1

1

您的示例每 100 毫秒记录一次,这会创建一个非常长的列表。
如果您只想在单击鼠标按钮时记录,请使用以下内容:

~LButton::
MyButton = Left
GoSub, MyRecord
Return

~RButton::
MyButton = Right
GoSub, MyRecord
Return

MyRecord:
MouseGetPos, xpos, ypos 
WinGetTitle, title, A
FormatTime, CurrentDateTime,, yyyy-MM-dd-HH-mm-ss 
FileAppend, %CurrentDateTime%`,%xpos%`,%ypos%`,%MyButton%`,%title%`n, C:\Temp\Record.csv
Return

让我知道这是否适合。
编辑:更改为csv分别记录鼠标左右动作

于 2013-01-27T09:16:55.027 回答