Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

Add-Type -TypeDefinition '

using System;
using System.Diagnostics;
using System.Runtime.InteropServices;

public class WindowAPI {


[DllImport("user32.dll")]
public static extern IntPtr FindWindow(string lpClassName, string
lpWindowName);

[DllImport("user32.dll")]
public static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int
X, int Y, int cx, int cy, uint uFlags);
}
'

# Abre o Bloco de Notas e o E-pedidos


Start-Process notepad.exe
Start-Process "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories\
Wordpad.lnk"

# Espera alguns segundos para os programas serem abertos


Start-Sleep -Seconds 2

# Encontra as janelas dos programas


$notepad = WindowAPI::FindWindow(null, "Untitled - Notepad")
$epedidos = WindowAPI::FindWindow(null, "E-pedidos")

# Define as posições e tamanhos das janelas


$posNotepad = New-Object RECT
$posNotepad.X = 0
$posNotepad.Y = 0
$posNotepad.Width = [System.Windows.Forms.SystemInformation]::VirtualScreen.Width /
2
$posNotepad.Height = [System.Windows.Forms.SystemInformation]::VirtualScreen.Height

$posEpedidos = New-Object RECT


$posEpedidos.X = [System.Windows.Forms.SystemInformation]::VirtualScreen.Width / 2
$posEpedidos.Y = 0
$posEpedidos.Width =
[System.Windows.Forms.SystemInformation]::VirtualScreen.Width / 2
$posEpedidos.Height =
[System.Windows.Forms.SystemInformation]::VirtualScreen.Height

# Posiciona as janelas
if ($notepad -ne [IntPtr]::Zero) {
WindowAPI::SetWindowPos($notepad, [IntPtr]::Zero, $posNotepad.X, $posNotepad.Y,
$posNotepad.Width, $posNotepad.Height, 0x0001)
}
if ($epedidos -ne [IntPtr]::Zero) {
WindowAPI::SetWindowPos($epedidos, [IntPtr]::Zero, $posEpedidos.X,
$posEpedidos.Y, $posEpedidos.Width, $posEpedidos.Height, 0x0001)
}

You might also like