Processing Ajax...

Title

Message

Confirm

Confirm

Confirm

Confirm

Are you sure you want to delete this item?

Confirm

Are you sure you want to delete this item?

Confirm

Are you sure?

Open and Move 4 File Explorer Windows on Monitor 2

Description
This script will open 4 File Explorer windows, and move them to the corners of monitor 2.
Language
C#.net
Minimum Version
Created By
Keith Lammers (BFS)
Contributors
-
Date Created
Aug 1, 2018
Date Last Modified
Aug 23, 2018

Scripted Function (Macro) Code

using System;
using System.Drawing;

public static class DisplayFusionFunction
{
	public static void Run(IntPtr windowHandle)
	{
        // Set the monitor ID you want the File Explorer windows to open on
        uint targetMonitorID = 2;
        
        // If you want to open the File Explorer windows to specific folders, put the folder paths 
        // inside the quotes below otherwise just leave them blank
        string[] folderPaths = { @"",
            @"",
            @"",
            @"" };
        
        // If the windows open but don't move correctly, try adjusting this delay
        uint launchDelay = 1000;

        // Window 1
        LaunchAndMoveFileExplorer(targetMonitorID, launchDelay, folderPaths[0]);
        BFS.DisplayFusion.RunFunction("Move Window to Top-Left Corner and Size 50%");

        // Window 2
        LaunchAndMoveFileExplorer(targetMonitorID, launchDelay, folderPaths[1]);
        BFS.DisplayFusion.RunFunction("Move Window to Top-Right Corner and Size 50%");

        // Window 3
        LaunchAndMoveFileExplorer(targetMonitorID, launchDelay, folderPaths[2]);
        BFS.DisplayFusion.RunFunction("Move Window to Bottom-Left Corner and Size 50%");
        
        // Window 4
        LaunchAndMoveFileExplorer(targetMonitorID, launchDelay, folderPaths[3]);
        BFS.DisplayFusion.RunFunction("Move Window to Bottom-Right Corner and Size 50%");
	}
	
	private static void LaunchAndMoveFileExplorer(uint targetMonitorID, uint launchDelay, string folderPath)
	{
        BFS.Application.Start("C:\\Windows\\explorer.exe", folderPath);
        BFS.General.ThreadWait(launchDelay);
        BFS.Window.MoveToMonitor(targetMonitorID, BFS.Window.GetFocusedWindow());
        BFS.General.ThreadWait(100);
	}
}