2017-06-14 1 views
0

J'utilise Windows "Problem Steps Recorder" (PSR) pour mon application et j'ai besoin de stocker chaque ActionSet (Screenshot) avec horodatage pour cocher la granularité du niveau. À l'heure actuelle fichier html PSR me donne chaque action dans le format suivant:Puis-je créer un Steps Recorder (PSR) intégré à Windows pour stocker l'horodatage au niveau des ticks?

<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> 

Ici, l'horodatage est donnée en temps = "11:43:44 AM". À l'heure actuelle, je suis en mesure de le convertir au niveau de la milliseconde - le temps PSR est dans le fuseau horaire local. Je le convertis en date UTC, puis en obtenant ms.

Une solution de contournement que je peux faire est, trouver un autre screenrecorder. Mais je n'en ai trouvé aucun, qui peut obtenir des détails d'écran comme PSR (vous pouvez voir dans la balise <UIAStack> dans l'extrait html donné ci-dessus.) Un autre moyen brut serait d'utiliser un autre screenrecorder avec PSR, et timesync les screenshots d'événement. nécessité d'éviter une surcharge supplémentaire d'erreur timesync, et également l'exécution de plusieurs enregistreurs écran.

J'utilise PSR dans le cadre d'une application, où la granularité tique est essentielle.

Tout pointeur est apprécié!

Répondre

0

I J'ai trouvé un moyen de résoudre ce problème en Python: au lieu de compter sur le PSR, je travaille directement avec les DLL Windows que PSR utilise en interne. en utilisant une bibliothèque cliente MSAA Python appelée PIYA. Il utilise un wrapper DLL appelé comtypes.