アカウント(または任意のアカウント)がログオンするたびにslyで画像をキャプチャするようにWebカメラを設定するにはどうすればよいですか?これを行う特定のソフトウェアはありますか?
Logitech QuickCam Fusionカムがあり、Windows7を実行しています。
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インクルードフォルダに配置します。私はそのサイトからコードを借りて、あなたのニーズに合わせてそれを修正しました。ファイルはスクリプトと同じフォルダーに表示されます(必要に応じてWebcam.au3ファイルを介して変更できます)。
編集:Webcam.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
です。
どこかのフォルダに解凍するだけで、起動すると0.5秒後に閉じて、起動元のフォルダに次の連番でJPG
画像を保存します。
このプログラムへのショートカットをstartup
フォルダーまたはHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
に配置するだけで、問題なく動作するはずです。
誰かがいつログオンしたかを確認するには、写真の日付/時刻を確認するだけです。
これはさておき、ウェブカメラにアクティブなときに表示されるライトなどがある場合、それはウェブカメラのハードウェア機能であるため、これを回避する方法はありません...それを開いてLED /ライトを外さない限り!!
(それは このプロジェクト の修正バージョンから構築されています)
これにはいくつかの方法があります。
個人的には、 AutoIt (例があります ここでスナップショットを撮る方法 )を使用してスクリプトを作成します。 AutoItを使用すると、必要に応じてスクリプトから実行可能ファイルを生成できます。
動作するスクリプトを作成したら、目的のユーザー(または、すべてのユーザーからスナップショットを取得する必要がある場合は「すべてのユーザー」)のStartMenuのスタートアップフォルダーにスクリプト(または実行可能ファイル)のショートカットを作成する必要があります。
Visual Basic 6には、Webカメラを制御するためのライブラリがあるようです。
このページにはソースコードがあります Webカメラからのキャプチャを開始し、カムを閉じ、ビデオフォーマットオプションを提供するVisualBasicアプリの場合。
イメージングVBScriptはこの種の機能も提供しますが、これはおそらくシステムの起動時に実行する方が簡単です。