Сделайте фото с веб-камеры при входе в Windows 7
Как мне настроить свою веб-камеру на то, чтобы захватывать изображения потихоньку каждый раз, когда моя учетная запись (или любая учетная запись) входит в систему? Есть ли какое-то конкретное программное обеспечение, которое будет делать это?
У меня есть камера Logitech QuickCam Fusion и работает под управлением Windows 7.
4 ответа
Используя AutoIt, этот код сделает снимок, просто запустите его при запуске (просто используйте ярлык, если вы не измените путь сохранения и не включите папку включения для включаемого файла). Обратите внимание, что в течение половины времени на камере будет мигать любой светодиод на камере. во-вторых, пока он делает снимок, пути к этому нет:
#include <GUIConstants.au3>
#include <Webcam.au3>
$gui = GUICreate("Webcam UDF Test",640,480)
_WebcamInit()
_Webcam($gui,640,480,0,0)
GUISetState(@SW_HIDE)
Sleep(100)
ConsoleWrite("Taking snapshot ..." & @CRLF)
_WebcamSnapShot()
ConsoleWrite("Snapshot taken !" & @CRLF)
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then
_WebcamStop()
Exit
EndIf
Sleep(10)
_WebcamStop()
Exit
WEnd
Вам необходимо получить включаемый файл Webcam.au3 здесь. Поместите его в ту же директорию, что и скрипт, или в папку autoit include. Я позаимствовал код с этого сайта и изменил его для ваших нужд. Файл появится в той же папке, что и скрипт (вы можете изменить его через файл Webcam.au3, если это необходимо).
РЕДАКТИРОВАТЬ: вам также нужно добавить эту строку в верхней части веб-камеры.au3:
#include <WindowsConstants.au3>
EDIT2: строка, которую вы измените для пути в Webcam.au3, если вы хотите указать его:
$snapfile = @ScriptDir & "\snapshot.bmp"
что-то вроде:
$snapfile = "C:\snapshot\snapshot.bmp"
или если вы хотите дату и время картинки:
$snapfile = "C:\snapshot\" & @YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & "-" & @MIN & "-" & @SEC & ".bmp"
Я только что построил небольшую программу под названием qpic
,
Единственные требования .Net Framework 3.5
,
Просто извлеките папку в любое место, и когда она будет запущена, через полсекунды она закроется и сохранит JPG
изображение в папке, из которой оно было запущено со следующим порядковым номером.
Просто поместите ярлык этой программы в свой startup
папка или HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
- и это должно работать без проблем!
Чтобы увидеть, когда кто-то вошел в систему, просто посмотрите на дату / время изображения.
Помимо всего этого, если у вашей веб-камеры есть индикатор или аналогичный индикатор, который показывает, когда он активен, вы не сможете обойти это, поскольку это аппаратная функция веб-камеры... Если вы не откроете ее и не отключите светодиод / индикатор.!
(Он построен на модифицированной версии этого проекта)
Вы можете скачать здесь.
Есть несколько способов сделать это.
Лично я бы сделал скрипт с использованием AutoIt (здесь есть пример, как сделать снимок). AutoIt позволяет при желании создать исполняемый файл из скрипта.
После того, как у вас есть рабочий сценарий, вам нужно создать ярлык для него (или исполняемого файла) в папке "Startup" запуска StartMenu предполагаемого пользователя (или "Все пользователи", если снимок должен быть получен от всех пользователей).
Visual Basic 6, по-видимому, имеет библиотеки для управления веб-камерами.
На этой странице есть исходный код для приложения Visual Basic, которое начинает захват с веб-камеры, закрывает камеру и предлагает параметры форматирования видео.
Я представляю себе, что VBScript предлагает и такие вещи, которые, вероятно, будет проще запускать при запуске системы.