Come cambio le dimensioni della finestra di un altro programma?

Come posso cambiare le dimensioni di una finestra di un altro programma, diciamo Skype, dal mio programma C #?

Puoi usare MoveWindow (dove hWnd è la finestra che vuoi spostare):

[DllImport("user32.dll", SetLastError = true)] internal static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint); MoveWindow(ApplicationHandle, 600, 600, 600, 600, true); 

Se non si conosce il puntatore della finestra, è ansible utilizzare la funzionalità FindWindow .

Vale la pena leggere anche MSDN SetWindowPos (Molto simile a MoveWindow).

È necessario ottenere l’handle della finestra dell’altro programma, utilizzare Process.MainWindowHandle o FindWindow .

Avendo questo, è ansible PInvoke SetWindowPos () per spostare, ridimensionare, modificare l’ordine Z o lo stato min / max / ripristino della finestra.

Vorrei utilizzare Windows Api SetWindowPos

controlla questo: Usando SetWindowPos in C # per spostare le windows

ovviamente prima dovresti conoscere l’handle della finestra che desideri ridimensionare, questo può essere fatto in molti modi come ottenere il processo per nome poi MainWindow di quel processo o con EnumWindow o FindWindow APIs