function WiggleSend
{
param(
[string] $InputObject
)
Add-Type -Assembly System.Windows.Forms
Write-Host "Position the mouse to the left hand side of the screen"
Start-Sleep -Seconds 10
$currentPosition = [Windows.Forms.Cursor]::Position
$InputObject = $InputObject + [char]3
foreach($char in $InputObject.ToCharArray())
{
$charOffset = [int] $char
[Windows.Forms.Cursor]::Position = New-Object Drawing.Point ($currentPosition.X + ($charOffset * 3)),$currentPosition.Y
Start-Sleep -m 50
[Windows.Forms.Cursor]::Position = $currentPosition
Start-Sleep -m 50
}
}
function WiggleReceive
{
Add-Type -Assembly System.Windows.Forms
Start-Sleep -Seconds 10
$currentPosition = [Windows.Forms.Cursor]::Position.X
$baseX = $currentPosition
$lastX = $baseX
$sb = New-Object System.Text.StringBuilder
while($true)
{
$currentPosition = [Windows.Forms.Cursor]::Position.X
if($currentPosition -ne $lastX)
{
if($currentPosition -ne $baseX)
{
$result = [int] (($currentPosition - $baseX) / 3)
if($result -eq 3)
{
return $sb.ToString()
}
else
{
$null = $sb.Append([char] $result)
}
}
$lastX = $currentPosition
}
}
}
Comments