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?
Save up to 50% on our desktop apps during our Year End Sale!Save up to 50% on our desktop apps during our Year End Sale, including DisplayFusion, ClipboardFusion, FileSeek, LogFusion, TrayStatus, and VoiceBot!Save up to 50% on our desktop apps during our Year End Sale!

Load Monitor Profile, Launch Application, Set Monitor Profile Back After Exit

Description
This function demonstrates how to change your screen resolution, launch an application or game, then change the resolution back once the application/game has exited.
Note: You must create monitor profiles with the desired settings for this function to work correctly.
Language
C#.net
Minimum Version
Created By
Thomas Malloch (BFS)
Contributors
-
Date Created
Sep 29, 2014
Date Last Modified
Oct 3, 2014

Scripted Function (Macro) Code

using System;
using System.Drawing;

// The 'windowHandle' parameter will contain the window handle for the:
//   - Active window when run by hotkey
//   - Window Location target when run by a Window Location rule
//   - TitleBar Button owner when run by a TitleBar Button
//   - Jump List owner when run from a Taskbar Jump List
//   - Currently focused window if none of these match
public static class DisplayFusionFunction
{
	public static void Run(IntPtr windowHandle)
	{
		//load a monitor profile with the desired resolution settings
		BFS.DisplayFusion.LoadMonitorProfile("Modified Resolution Profile");
		
		//start a process and capture its application id
		uint appId = BFS.Application.Start("J:\\Program Files (x86)\\Steam\\SteamApps\\common\\Orion Dino Beatdown\\Binaries\\Win32\\DinoHordeGame.exe", "");
		
		//wait forever for the above process to exit
		const int waitForever = 0;
		BFS.Application.WaitForExitByAppID(appId, waitForever);
		
		//load a monitor profile with your original resolution settings
		BFS.DisplayFusion.LoadMonitorProfile("Original Resolution Profile");
	}
}