|
He can just send hhis obnoxious sized monitor to me!
CQ de W5ALT
Walt Fair, Jr.PhD P. E.
Comport Computing
Specializing in Technical Engineering Software
|
|
|
|
|
I would try using a virtual machine for the sessions. You can "clone" your physical system into a virtual machine. Set the resolution to something friendly for Team or Zoom meetings. Connect to your projects via shared folders.
Lou
If you can keep your head while those about you are losing theirs, perhaps you don't understand the situation.
|
|
|
|
|
That's what I was going to suggest.
Window mode for the VM and within the VM the standard resolution that the other people have.
Only difference... I would not clone the system, if only used for the meetings a trimmed down version would be better. No need to have the whole drivers and so on in the VM.
I usually use one with standard drivers, 1 CPU kern, 10% of my drive size and 50% of my RAM as max.
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Thanks for the suggestion! As I understand it; I would need to have my dev environment running inside a VM, and work through an RDP connection, only to gain the ability to have everything running inside an app that would be shareable from the physical machines OS, right?
To me, thats more troublesome than executing my "switch to 2560x1440.bat" before the teams meeting and then the "switch to 5120x1440.bat" after the meeting.
Why, oh why, can't we just have an option in Teams to share a part of the screen...
Or have NVidia register the physical monitor as a number of physical monitors. That way, Windows wouldn't know the difference, and everything would work.
Do you know why it's important to make fast decisions? Because you give yourself more time to correct your mistakes, when you find out that you made the wrong one. Chris Meech on deciding whether to go to his daughters graduation or a Neil Young concert
|
|
|
|
|
Jan R Hansen wrote: Thanks for the suggestion! As I understand it; I would need to have my dev environment running inside a VM, and work through an RDP connection, only to gain the ability to have everything running inside an app that would be shareable from the physical machines OS, right? If need the whole set of tools of your main OS... then yeah it is more a PITA than a help.
Jan R Hansen wrote: To me, thats more troublesome than executing my "switch to 2560x1440.bat" before the teams meeting and then the "switch to 5120x1440.bat" after the meeting. I have bookmarked your message... I am waiting the delivery of one 34 Inches monitor... but for private, my old monitor will be the second unit for the work lappie.
Jan R Hansen wrote: Why, oh why, can't we just have an option in Teams to share a part of the screen...
We are speaking about Microsoft... aren't we?
Jan R Hansen wrote: Or have NVidia register the physical monitor as a number of physical monitors. That way, Windows wouldn't know the difference, and everything would work. That's actually a good idea, give them the suggestion, they are some better than others getting feedback from users.
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
|
Let's hope they implement it... but just in case, don't hold your breath
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Anything past 640x480 VGA is always a risk.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Jan R Hansen wrote: 3 concurrent code files open next to each other
I have always wondered how you manage this. While I am now used to mouse drag or to winkey move the files from one screen to the other, how do you manage setting up windows on the same screen ? Is there any native support using keyboard shortcuts to place 3 files across the screen ?
|
|
|
|
|
not three windows, just visual studio with three documents inside.Just right-click any document header-tab and select "New vertical document group"
Do you know why it's important to make fast decisions? Because you give yourself more time to correct your mistakes, when you find out that you made the wrong one. Chris Meech on deciding whether to go to his daughters graduation or a Neil Young concert
|
|
|
|
|
After researching a bit, I found out that widescreens come with application that can split your screen in virtual screens, hence acting as if you would have several monitors, which also mean you can use the usual dual-or-more monitor features and key shortcuts of windows. This sounds really cool !
|
|
|
|
|
Yes - it "sounds" really cool. The problem is, that it doesn't hold water. You cannot divide my Samsung CRG9 49" 5120x1440 monitor (or similar monitors, from other manufacturers) into anything that *windows* recognizes as multiple monitors.
There are a number of software solutions, like (previously mentioned)
- GitHub - microsoft/PowerToys: Windows system utilities to maximize productivity[^]
- DisplayFusion: Multiple Monitors Made Easy by Binary Fortress Software[^]
Easy Setting Box | Monitor Solution | Samsung Display Solutions[^]
but all of these are software tools that adds a way of organizing windows into sections of the monitor in a more convenient way. Microsoft Teams allows you to share applications or "desktops". The latter being actual displays that windows recognizes as physical displays.
So unless your graphics driver is able to map the actual monitor as separate physical devices, you're out of luck with Teams. For all other purposes, the tools mentioned above work just fine. PowerToys and the samsung tool are even free, and DisplayFlusion comes in a free (feature-restricted) edition as well.
Being able to split the physical monitor to allow shortcuts like WIN-ARROWLEFT etc work for window snapping would be great, but not available as of now.
Do you know why it's important to make fast decisions? Because you give yourself more time to correct your mistakes, when you find out that you made the wrong one. Chris Meech on deciding whether to go to his daughters graduation or a Neil Young concert
|
|
|
|
|
I thought that you could use several windows virtual desktops with different resolutions, bit this does not work.
What you could do is install an app that allows you to switch the resolution quickly - Still a hassle, but at least you do not need to navigate-click in these user-unfriendly monitor setup menus from windows.
What *could* help is checking in the video card app (catalyst or whatever you have) if they have a feature that may come handy.
|
|
|
|
|
Thanks. I already have a .bat-file which executes a powershell-script, that switches to a given resolution. Very fast and efficient. but still less elegant than getting away with sharing a custom part of your screen.
this
Import-Module $PSScriptRoot\setScreenResolution\setScreenResolution -Verbose
Set-ScreenResolution -Width 2560 -Height 1440
executes this (which I copied from a MS resource somewhere)
Function Set-ScreenResolution {
<#
.Synopsis
Sets the Screen Resolution of the primary monitor
.Description
Uses Pinvoke and ChangeDisplaySettings Win32API to make the change
.Example
Set-ScreenResolution -Width 1024 -Height 768
#>
param (
[Parameter(Mandatory=$true,
Position = 0)]
[int]
$Width,
[Parameter(Mandatory=$true,
Position = 1)]
[int]
$Height
)
$pinvokeCode = @"
using System;
using System.Runtime.InteropServices;
namespace Resolution
{
[StructLayout(LayoutKind.Sequential)]
public struct DEVMODE1
{
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
public string dmDeviceName;
public short dmSpecVersion;
public short dmDriverVersion;
public short dmSize;
public short dmDriverExtra;
public int dmFields;
public short dmOrientation;
public short dmPaperSize;
public short dmPaperLength;
public short dmPaperWidth;
public short dmScale;
public short dmCopies;
public short dmDefaultSource;
public short dmPrintQuality;
public short dmColor;
public short dmDuplex;
public short dmYResolution;
public short dmTTOption;
public short dmCollate;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
public string dmFormName;
public short dmLogPixels;
public short dmBitsPerPel;
public int dmPelsWidth;
public int dmPelsHeight;
public int dmDisplayFlags;
public int dmDisplayFrequency;
public int dmICMMethod;
public int dmICMIntent;
public int dmMediaType;
public int dmDitherType;
public int dmReserved1;
public int dmReserved2;
public int dmPanningWidth;
public int dmPanningHeight;
};
class User_32
{
[DllImport("user32.dll")]
public static extern int EnumDisplaySettings(string deviceName, int modeNum, ref DEVMODE1 devMode);
[DllImport("user32.dll")]
public static extern int ChangeDisplaySettings(ref DEVMODE1 devMode, int flags);
public const int ENUM_CURRENT_SETTINGS = -1;
public const int CDS_UPDATEREGISTRY = 0x01;
public const int CDS_TEST = 0x02;
public const int DISP_CHANGE_SUCCESSFUL = 0;
public const int DISP_CHANGE_RESTART = 1;
public const int DISP_CHANGE_FAILED = -1;
}
public class PrmaryScreenResolution
{
static public string ChangeResolution(int width, int height)
{
DEVMODE1 dm = GetDevMode1();
if (0 != User_32.EnumDisplaySettings(null, User_32.ENUM_CURRENT_SETTINGS, ref dm))
{
dm.dmPelsWidth = width;
dm.dmPelsHeight = height;
int iRet = User_32.ChangeDisplaySettings(ref dm, User_32.CDS_TEST);
if (iRet == User_32.DISP_CHANGE_FAILED)
{
return "Unable To Process Your Request. Sorry For This Inconvenience.";
}
else
{
iRet = User_32.ChangeDisplaySettings(ref dm, User_32.CDS_UPDATEREGISTRY);
switch (iRet)
{
case User_32.DISP_CHANGE_SUCCESSFUL:
{
return "Success";
}
case User_32.DISP_CHANGE_RESTART:
{
return "You Need To Reboot For The Change To Happen.\n If You Feel Any Problem After Rebooting Your Machine\nThen Try To Change Resolution In Safe Mode.";
}
default:
{
return "Failed To Change The Resolution";
}
}
}
}
else
{
return "Failed To Change The Resolution.";
}
}
private static DEVMODE1 GetDevMode1()
{
DEVMODE1 dm = new DEVMODE1();
dm.dmDeviceName = new String(new char[32]);
dm.dmFormName = new String(new char[32]);
dm.dmSize = (short)Marshal.SizeOf(dm);
return dm;
}
}
}
"@
Add-Type $pinvokeCode -ErrorAction SilentlyContinue
[Resolution.PrmaryScreenResolution]::ChangeResolution($width,$height)
}
Do you know why it's important to make fast decisions? Because you give yourself more time to correct your mistakes, when you find out that you made the wrong one. Chris Meech on deciding whether to go to his daughters graduation or a Neil Young concert
|
|
|
|
|
Or this[^], which is quite clever.
|
|
|
|
|
Nice find! That was the exact app I mentioned in my original post. The problem seem to be that it doesn't work as desired in teams anyway, however - here is the link for future reference
GitHub - john--/FauxDesktop[^]
Do you know why it's important to make fast decisions? Because you give yourself more time to correct your mistakes, when you find out that you made the wrong one. Chris Meech on deciding whether to go to his daughters graduation or a Neil Young concert
|
|
|
|
|
having read thru the responses. They have been quite good. I especially like the virtual machines thing. That might work. Then you just share the RDP window into the virtual machine.
I have alittle bit of this problem. Not a huge monitor like yours but fairly large and larger than my customers on my desktop. I just use my little old laptop and RDP to my main butt kicker and do my teams meetings from there. It work for me. and my laptop has a better camera and sound card.
To err is human to really elephant it up you need a computer
|
|
|
|
|
The problem with using VMs is that if you change the resolution with one VM, it changes the resolution for the monitor itself, so all the VMs now have this resolution. The only way to have two resolutions in two different displays is to have two seperate monitors each with a different resolution.
|
|
|
|
|
Download a program called sizer, when it is running, you press CTRL + WIN + Z and then you can choose the size of the window. Set it to a 16:9 resolution and share the window. Everyone will see it at a normal size - this is also a handy app for multi tasking.
Also check if your monitor has a virtual monitor PIP mode. Many ultrawides can create a virtual monitor that sits in the corner this may be of use. I don’t like it but I know people that do.
I use sizer every time I stream.
I also have a tiny monitor to the side of my ultra wide (repurposed laptop screen) though I am looking at getting a 15 inch portable usb monitor, as they are perfect size to sit under my ultra wide when it’s lifted on the arm stand.
|
|
|
|
|
Thanks. Yeah, the sizer-thing is nice and all, but still relies on eventually sharing an app, not a screen-area where I can switch between apps within the area.
The PIP-mode is more the oppsite thing, where the monitor can display e.g. HDMI and DisplayPort1 at the same time. But points for creative thinking
A secondary monitor has been mentioned before, and while it probably is the fast-track solution, it still takes up space on my desk, and it would be nice to handle this without extra hardware. A USB version might be a sort of lightweight alternative though. Any recommendations?
Do you know why it's important to make fast decisions? Because you give yourself more time to correct your mistakes, when you find out that you made the wrong one. Chris Meech on deciding whether to go to his daughters graduation or a Neil Young concert
|
|
|
|
|
Amazon.co.uk : portable monitor
There are a wide range and they are lightweight and small so you either fit them below the monitor if you have space or find a way to attach them above.
Here's an edge case creative thinking idea:
Use OBS to create a virtual camera that is extremely customisable.
You can capture your screen then go to filters and use the crop function to crop a 16:9 portion of your screen (How to Crop and Rotate OBS Inputs - YouTube). You could use this in conjunction with sizer: Use sizer to resize the windows you hope to share to 16:9 then drag the windows into the capture mask.
NOTE:
Teams will flip your virtual camera so you need to flip the screen capture inside OBS:
horizontal flip of camera - Microsoft Community
Again, just putting ideas out there. I thought have a QHD 21:9 was bad... the plight of the ultrawide owner.
|
|
|
|
|
With regards to the PIP solution, you just pull 2 cables from your GPU. Your computer will see it as 2 monitors. Then you just turn the second one off when you're not using it. PIP can be clunky though depending on the brand of monitor. A virtual solution is better as you could move the region around without crappy monitor OSD controls.
|
|
|
|
|
I feel your pain, having a 4k screen, love it, FancyZones and all.... Share on Teams... nightmare..
Can only share an 'application' which like you say is pretty useless for brain storming/solving dev problems.
Other Option, the quality is still cr*p but teach people to hold CTRL & Mouse Zoom Wheel. This will allow them to zoom in and move around, far from ideal but atleast they can see!
|
|
|
|
|
yeah... you should consider using the .bat-file approach in that case. Since you run PowerToys anyway, you can use PowerToys Run to quickly execute "2560.bat" that fires the powershell command I pasted above and switches to that resolution. When you're done with the meeting, you just run "<native>.bat" and switches back to your preferred resolution. Since your aspect ratio doesnt change (mine does) I think most window positions will be retained (relatively) and windows in full screen remain such, which is fine for you, but not for me... So that might be a quick and dirty solution for you, untill MS decides to fix Teams.
Do you know why it's important to make fast decisions? Because you give yourself more time to correct your mistakes, when you find out that you made the wrong one. Chris Meech on deciding whether to go to his daughters graduation or a Neil Young concert
|
|
|
|
|
Jan R Hansen wrote: So that might be a quick and dirty solution for you, untill MS decides to fix Teams. I wouldn't hold my breath...
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|