From 6e42ba1d39b24ef8a5f3063b7806a07c8b33cc14 Mon Sep 17 00:00:00 2001 From: bitform Date: Sun, 20 Jan 2013 21:35:56 -0500 Subject: Moved scripts to their respective modules. --- Get-TimedScreenshot.ps1 | 99 ------------------------------------------------- 1 file changed, 99 deletions(-) delete mode 100644 Get-TimedScreenshot.ps1 (limited to 'Get-TimedScreenshot.ps1') diff --git a/Get-TimedScreenshot.ps1 b/Get-TimedScreenshot.ps1 deleted file mode 100644 index 3a19a7d..0000000 --- a/Get-TimedScreenshot.ps1 +++ /dev/null @@ -1,99 +0,0 @@ -Function Get-TimedScreenshot { -<# -.SYNOPSIS - - Get-TimedScreenshot - - Author: Chris Campbell (@obscuresec) - License: BSD 3-Clause - -.DESCRIPTION - - A function that takes screenshots and saves them to a folder. - -.PARAMETER $Path - - Specifies the folder path. - -.PARAMETER $Interval - - Specifies the interval in seconds between taking screenshots. - -.PARAMETER $EndTime - - Specifies when the script should stop running in the format HH-MM - -.EXAMPLE - - PS C:\> Get-TimedScreenshot -Path c:\temp\ -Interval 30 -EndTime 14:00 - -.LINK - - http://obscuresecurity.blogspot.com/2013/01/Get-TimedScreenshot.html - https://github.com/obscuresec/random/blob/master/Get-TimedScreenshot - -#> - - [CmdletBinding()] Param( - [Parameter(Mandatory=$True)] - [ValidateScript({Test-Path -Path $_ })] - [string] $Path, - - [Parameter(Mandatory=$True)] - [int32] $Interval, - - [Parameter(Mandatory=$True)] - [string] $EndTime - ) - - #Define helper function that generates and saves screenshot - Function GenScreenshot { - $ScreenBounds = [Windows.Forms.SystemInformation]::VirtualScreen - $ScreenshotObject = New-Object Drawing.Bitmap $ScreenBounds.Width, $ScreenBounds.Height - $DrawingGraphics = [Drawing.Graphics]::FromImage($ScreenshotObject) - $DrawingGraphics.CopyFromScreen( $ScreenBounds.Location, [Drawing.Point]::Empty, $ScreenBounds.Size) - $DrawingGraphics.Dispose() - $ScreenshotObject.Save($FilePath) - $ScreenshotObject.Dispose() - } - - Try { - - #load required assembly - Add-Type -Assembly System.Windows.Forms - - Do { - #get the current time and build the filename from it - $Time = (Get-Date) - - [string] $FileName = "$($Time.Month)" - $FileName += '-' - $FileName += "$($Time.Day)" - $FileName += '-' - $FileName += "$($Time.Year)" - $FileName += '-' - $FileName += "$($Time.Hour)" - $FileName += '-' - $FileName += "$($Time.Minute)" - $FileName += '-' - $FileName += "$($Time.Second)" - $FileName += '.png' - - #use join-path to add path to filename - [string] $FilePath = (Join-Path $Path $FileName) - - #run screenshot function - GenScreenshot - - Write-Verbose "Saved screenshot to $FilePath. Sleeping for $Interval seconds" - - Start-Sleep -Seconds $Interval - } - - #note that this will run once regardless if the specified time as passed - While ((Get-Date -Format HH:%m) -lt $EndTime) - } - - Catch {Write-Warning "$Error[0].ToString() + $Error[0].InvocationInfo.PositionMessage"} - -} \ No newline at end of file -- cgit v1.2.3