Risposte:
Forse potresti voler controllare il gestore degli accessi KeyLemon . È l'unica soluzione che sono riuscito a trovare vicino a ciò di cui hai bisogno. Funziona su XP, Vista, 7 e 8. Sfortunatamente, questa funzione è presente solo nella versione a pagamento.
Dalla pagina del prodotto:
Tracciamento dei dirottatori
Con la funzione di tracciamento dei dirottatori è possibile visualizzare immagini di:
- che era di fronte al tuo computer prima del blocco automatico di Windows
- che ha digitato una password errata quando il computer era bloccato
Disclaimer: non sono assolutamente correlato al prodotto o all'azienda.
Che bella domanda. Ecco la mia soluzione (ispirata in parte alla risposta di Keltari):
Requisiti
snapshot_login_failure.cmd (posizionalo in una cartella con ffmpeg.exe)
@echo off
:: Get date and time independent of regional settings. Source: http://stackoverflow.com/questions/203090/how-to-get-current-datetime-on-windows-command-line-in-a-suitable-format-for-us
for /F "usebackq tokens=1,2 delims==" %%i in (`wmic os get LocalDateTime /VALUE 2^>NUL`) do if '.%%i.'=='.LocalDateTime.' set ldt=%%j
set datetime=%ldt:~0,4%_%ldt:~4,2%_%ldt:~6,2%_%ldt:~8,2%_%ldt:~10,2%_%ldt:~12,2%
:: Capture snapshot through DirectShow using FFmpeg and save to disk. Change name of video adapter and save path.
ffmpeg.exe -f dshow -i video="USB 2.0 UVC HD Webcam" -vframes 1 E:\snapshot_%datetime%.jpg
snapshot_login_failure.xml (importalo come attività di pianificazione di Windows)
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Date>2013-07-06T23:32:34.0732602</Date>
<Author>Zoe\Zero3</Author>
</RegistrationInfo>
<Triggers>
<EventTrigger>
<Enabled>true</Enabled>
<Subscription><QueryList><Query Id="0" Path="Security"><Select Path="Security">*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and EventID=4625]]</Select></Query></QueryList></Subscription>
</EventTrigger>
</Triggers>
<Principals>
<Principal id="Author">
<UserId>S-1-5-19</UserId>
<RunLevel>LeastPrivilege</RunLevel>
</Principal>
</Principals>
<Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
<DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
<StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
<AllowHardTerminate>true</AllowHardTerminate>
<StartWhenAvailable>false</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
<IdleSettings>
<StopOnIdleEnd>true</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>false</Hidden>
<RunOnlyIfIdle>false</RunOnlyIfIdle>
<DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
<UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>PT1H</ExecutionTimeLimit>
<Priority>7</Priority>
</Settings>
<Actions Context="Author">
<Exec>
<Command>E:\snapshot_login_failure.cmd</Command>
<WorkingDirectory>E:\</WorkingDirectory>
</Exec>
</Actions>
</Task>
Appunti
Ci scusiamo per aver rianimato una vecchia discussione, ma sto pubblicando questo come aiuto per chiunque si imbatti in questo in futuro ..
Il processo di Zero3 ha funzionato per la maggior parte, e molti complimenti per lui! Ma l'ho fatto funzionare solo dopo aver abilitato la registrazione di tentativi di accesso non riusciti, quindi facendo clic con il pulsante destro del mouse sull'ID evento nei registri e selezionato "allegare un'attività a questo evento" invece di importare l'attività tramite XML, probabilmente qualcosa a fare con le autorizzazioni, come ho dovuto digitare la mia password di amministratore per creare l'attività.
Un'altra cosa, che mi è sembrata strana, è che l'attività che è stata attivata non ha riconosciuto il file .cmd come programma / script. per risolvere questo problema, ho creato un semplice file .bat chiamato run.bat nella stessa directory con il codice seguente, e invece ho avuto il compito di avviare il file batch e quindi eseguire .cmd.
Un po 'un modo hop-scozzese per farlo funzionare, ma sono molto contento del mio successo grazie a questo thread, e sono tentato di fare un tutorial video su questo processo :)
Mille grazie a tutti!
Nota: sto eseguendo Windows 10 Pro x64
Il codice run.bat:
Start "" "C:\<filepath to .cmd>"
Sì, se hai familiarità con Windows MSGINA, in teoria potresti creare un evento di accesso personalizzato che avvierà la fotocamera sul laptop e scatta una foto e la salva in una cartella personalizzata
Riferimento: http://technet.microsoft.com/en-gb/library/bb742447.aspx
un accesso non valido ha un registro come Event ID: 529nel registro eventi di sicurezza. Potresti scrivere uno script che controlla quell'ID e quindi eseguire un comando per scattare una foto ... non sei sicuro di come fare la seconda parte però ...