2017-06-14 53 views
0

我爲我的應用程序使用Windows「問題步驟記錄器」(PSR),並需要將每個ActionSet(截圖)與時間戳一起存儲爲滴答粒度粒度。目前PSR HTML文件給我按以下格式每一個動作:我可以讓Windows內置步驟記錄器(PSR)存儲刻度級別的時間戳嗎?

<EachAction ActionNumber="120" Time="11:43:44 AM" Pid="8992" ProgramId="0000da39a3ee5e6b4b0d3255bfef95601890afd80709" FileId="0000f53c3e9453e8e4352db97fddbea5bc1357a3d2a2" FileName="ECLIPSE.EXE" CommandLine="ECLIPSE.EXE"> 
    <Description>User left click on "Close (button)" in "PyDev - J6VideoMining/src/utils/constants.py - Eclipse"</Description> 
    <Action>Mouse Left Click</Action> 
    <CursorCoordsXY>1349,7</CursorCoordsXY> 
    <ScreenCoordsXYWH>0,0,1366,768</ScreenCoordsXYWH> 
    <UIAStack> 
     <Level BoundingRectangle="1317,0,47,20" ControlType="50000" Name="Close" LocalizedControlType="button" /> 
     <Level BoundingRectangle="16,-5,1350,28" ControlType="50037" LocalizedControlType="title bar" /> 
     <Level BoundingRectangle="-8,-8,1382,744" ClassName="SWT_Window0" ControlType="50032" FrameworkId="Win32" Name="Eclipse SDK" LocalizedControlType="window" /> 
    </UIAStack> 
    <ScreenshotFileName>screenshot0120.JPEG</ScreenshotFileName> 
    </EachAction> 

這裏,時間戳給出時間= "11:43:44 AM"。目前我可以將其轉換爲毫秒級 - PSR時間在當地時區。我將它轉換爲UTC日期,然後獲取ms。

我能做的一個解決方法是找到另一個屏幕錄像機。但是我還沒有找到任何可以獲得像PSR這樣的屏幕細節的東西(你可以在上面給出的html代碼中的<UIAStack>標籤中看到)另一種粗糙的方式是使用另一個屏幕記錄器和PSR一起使用,並且時間同步事件截圖。需要避免額外的時間同步誤差的開銷,並且還運行多個屏幕錄像機。

我使用PSR作爲一個應用程序,其中蜱粒度是必不可少的一部分。

任何指針表示讚賞!

回答

0

我已經找到了解決這個問題的Python方法,而不是依賴於PSR,現在我直接使用PSR在內部使用的Windows DLL。使用名爲PIYA的MSAA Python客戶端庫。它使用一個名爲comtypes的DLL包裝器。

相關問題