Top Menu

Scripting Support

VDM multi-monitor
Scripting support is provided via PowerShell Cmdlets, compatible with .Net 4.5.2 and higher, ensuring compatibility with all recent flavors of PowerShell. To start, run:
    Import-Module "C:\Program Files (x86)\VDM\System32\UI\VDMXPS.dll"   
            
                    
        
Get currently supported Cmdlets
    CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Get-VdmConfigs                                     4.0.0.454… VDMXPS
Cmdlet          Get-VdmMonitorSnapshots                            4.0.0.454… VDMXPS
Cmdlet          Get-VdmVirtualDesktops                             4.0.0.454… VDMXPS
Cmdlet          Set-VdmActiveConfig                                4.0.0.454… VDMXPS
Cmdlet          Set-VdmActiveMonitorSnapshot                       4.0.0.454… VDMXPS
Cmdlet          Set-VdmActiveVirtualDesktop                        4.0.0.454… VDMXPS
Cmdlet          Set-VdmDefaultConfig                               4.0.0.454… VDMXPS
Cmdlet          Set-VdmOff                                         4.0.0.454… VDMXPS
Cmdlet          Set-VdmOn                                          4.0.0.454… VDMXPS   
        
Example: listing available configurations
    Get-VdmConfigs
configName id                               isActive isDefault
---------- --                               -------- ---------
1/4|2|3    f5cf7a7a9e1eaf46bcafebbcd4b70990     True      True
1|2/3+1    1b8f4f18d20b5014ec86a40dafed11cf    False     False
2x1        0d0bd32f934762ea407d5766f5942ed9    False     False
2x2        edccbba329cc090ccff77ab0abb6059d    False     False
3+1        17d2a5f52331718e00c2b5e2e8a205bb    False     False   
        
Example: setting active configuration by name
    Set-VdmActiveConfig -name "1|2/3+1"   
        
Example: setting default configuration by id
    Set-VdmDefaultConfig -id 1b8f4f18d20b5014ec86a40dafed11cf   
        
Example: listing available Virtual Desktops
    Get-VdmVirtualDesktops
name           isActive index guid
----           -------- ----- ----
Desktop 1          True     0 dd158d79-8de4-44f4-a527-4425c1086484
Desktop 2         False     1 339ba945-4d72-423d-8d65-85169a7b17c9
Custom Desktop    False     2 f0d6f737-9bb1-4ae8-8617-ac1725d21075   
        
Example: setting default Virtual Desktop by sequential index. Selection by name or guid option is also available.
    Set-VdmActiveVirtualDesktop -index 1   
        
Example: listing available Monitor Snapshots that allow to preserve and restore Windows desktop topology, including monitor sizing, placements and mirroring.
    Get-VdmMonitorSnapshots
name                 index
----                 -----
1+1080p_Mirror           0
1+2+3                    1
1+2+3 Alternative        2
2                        3
2 monitors - low res     4
2+3                      5
2+3 shifted              6
5k+8k                    7   
        
Example: setting the active Monitor Snapshot by Name. Setup by Index is also available.
    Set-VdmActiveMonitorSnapshot -name "1+2+3"   
        
Example: turning VDM on or off
    Set-VdmOn
Set-VdmOff   
        
And yes, Elgato's Stream Deck is supported!

Teknica Software Inc. © 2024. All Rights Reserved