Personalmente no lo he probado y no me gusta mucho cómo está hecho, pero mientras no tengas nada mejor puedes probar éste código:
Código Delphi
[-]
procedure MinimizeAll;
Begin
keybd_event( VK_LWIN, MapvirtualKey( VK_LWIN, 0), 0, 0 );
keybd_event( Ord('M'), MapvirtualKey( Ord('M'), 0), 0, 0 );
keybd_event( Ord('M'), MapvirtualKey( Ord('M'), 0), KEYEVENTF_KEYUP, 0 );
keybd_event( VK_LWIN, MapvirtualKey( VK_LWIN, 0), KEYEVENTF_KEYUP, 0 );
end;