输入错误密码后拍照

Roo*_*ook 15 windows-7

在输入错误的用户密码后,运行 Windows 7 的笔记本电脑是否可以使用网络摄像头拍照?

Tha*_*Guy 10

也许您可能想查看KeyLemon登录管理器。这是我能找到的唯一接近您需要的解决方案。适用于 XP、Vista、7 和 8。不幸的是,此功能仅在付费版本中提供。

从产品页面:

劫机者追踪

使用劫机者跟踪功能,您可以查看以下图片:

  • 自动锁窗前谁在你的电脑前
  • 谁在计算机被锁定时输入了错误的密码

免责声明:我绝对与产品或公司无关。


Zer*_*ro3 5

多么酷的问题。这是我的解决方案(部分灵感来自 Keltari 的回答):

要求

  • 较新的 Windows 版本(可能是 Vista 或更高版本)
  • 兼容 DirectShow 的视频设备(可能是 Windows 识别为相机的任何设备,等等)
  • ffmpeg.exe ( http://ffmpeg.org/ )

snapshot_login_failure.cmd(将其放在带有 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
Run Code Online (Sandbox Code Playgroud)

snapshot_login_failure.xml(将此作为 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>&lt;QueryList&gt;&lt;Query Id="0" Path="Security"&gt;&lt;Select Path="Security"&gt;*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and EventID=4625]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</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>
Run Code Online (Sandbox Code Playgroud)

笔记

  • 您需要调整设备名称和路径以适合您的系统。也许任务文件中的用户帐户也是如此。
  • 您可能需要根据Windows 7 登录失败事件不存在启用失败登录的日志记录
  • 登录失败事件在“错误的用户名或密码 bla bla”对话框上单击确定触发而不是在输入无效登录信息后立即触发
  • 如果在启动期间显示登录屏幕后提前触发(当 Windows 仍在启动服务且系统为 IO 绑定时),则会出现明显延迟


小智 5

很抱歉恢复旧线程,但我将其发布为对将来偶然发现此问题的人的帮助。

Zero3 的 Process 大部分工作正常,值得他称赞!但是,我只有在启用失败登录尝试的日志记录后才能工作,然后右键单击日志中的事件 ID 并选择“将任务附加到此事件”,而不是通过 XML 导入任务,这可能是处理权限,因为我必须输入管理员密码才能创建任务。

另一件让我感到奇怪的事情是触发的任务无法将 .cmd 文件识别为程序/脚本。为了解决这个问题,我使用下面的代码在同一目录中创建了一个名为 run.bat 的简单 .bat 文件,并让任务启动批处理文件,从而运行 .cmd。

有点像跳苏格兰威士忌一样让它发挥作用,但我对这个帖子的成功感到非常高兴,而且我很想制作一个关于这个过程的视频教程:)

非常感谢大家!

注意:我运行的是 Windows 10 Pro x64

run.bat代码:

Start "" "C:\<filepath to .cmd>"
Run Code Online (Sandbox Code Playgroud)