Author |
Topic |
|
SparcU
New Member
Israel
3 Posts |
Posted - Nov 26 2023 : 11:26:46 AM
|
I use Visual Studio 2022 professional and it is running as administrator. It is set up to run as administrator by IT. My user is not administrator. When Visual Assist is loaded Visual Studio becomes "Always on top". The only way to activate another window is to minimize Visual Studio. Is there any fix for this? |
|
feline
Whole Tomato Software
United Kingdom
19024 Posts |
Posted - Nov 27 2023 : 05:52:30 AM
|
So far I cannot reproduce this, and it's not a problem I recognise.
Using Windows 10 Professional version 22H2, with VS2022 version 17.8.0 with VA 2502 I have created a local user Windows account. On the desktop I have placed a shortcut for VS2022, and in the shortcut settings I have set the shortcut to run the program as Admin. I am prompted for the admin password when running VS2022, and a blue marker is placed in the top right hand corner of VS2022 when it is loaded, telling me that it is running as Admin.
I have no problems alt-tabbing to other open windows with VS2022 running full screen with VA enabled.
Assuming this is a valid test, which it looks like it should be, I am guessing another program you are running is interacting with VA to help trigger this effect. Do you know of any other running programs that might be a factor here? |
zen is the art of being at one with the two'ness |
|
|
SparcU
New Member
Israel
3 Posts |
Posted - Nov 27 2023 : 07:16:59 AM
|
The way I tested was to load Visual Studio /safemode and this problem did not occur. What is different in my environment is that the company is using Beyound Trust / Avecto system to assign VS the Admin rights.
|
|
|
feline
Whole Tomato Software
United Kingdom
19024 Posts |
Posted - Nov 27 2023 : 07:21:40 AM
|
Can you please try disabling VA in the dialog:
IDE Extensions menu -> Manage Extensions
and then restart VS2022 and see if this has any effect? /safemode will stop other extensions loading as well, so you are making more changes than simply disabling VA. |
zen is the art of being at one with the two'ness |
|
|
SparcU
New Member
Israel
3 Posts |
Posted - Nov 29 2023 : 04:32:52 AM
|
Looks that when I disable only Visual Assist the problem disappears. May be the other running programs conflict with Visual Assist. There are multiple security related programs installed by IT that I cannot tamper with. What I am looking for is that maybe you can suggest any tool or some king of logging in Visual Assist that will help me to figure out the cause of this.
|
|
|
feline
Whole Tomato Software
United Kingdom
19024 Posts |
Posted - Nov 29 2023 : 06:35:23 AM
|
We do have logging in VA, but I doubt it is designed to cover a situation like this. Still, its worth a try since it should be quick and simple to try. Assuming you can run regedit and edit a setting, can you please make sure Visual Studio is closed, then set:
HKEY_CURRENT_USER\SOFTWARE\Whole Tomato\Logging = 1
since we need to log from when VA first loads, rather than enabling logging after the IDE has loaded, and the probably has already started. Now load the IDE normally, confirm the problem, and then close the IDE to keep the log files nice and small. This page explains where to look for the generated log files:
https://docs.wholetomato.com/default.asp?W305
Please send me the files via email:
[email protected]
including this thread ID or URL in the description, so we can match it up.
Do you know if you have any running programs with the ability to pin a window to be always on top? This is something some utilities can do, including Microsoft Powertoys. This would help explain what is happening, even if we don't know why yet. |
zen is the art of being at one with the two'ness |
|
|
foxmuldr
Tomato Guru
USA
416 Posts |
Posted - Dec 11 2023 : 09:34:43 AM
|
One workaround option is to create a service that will look for instances of the Visual Studio IDE class using EnumWindows() and GetWindowClassEx() to find all of the visible VS IDE windows (class name will be "HwndWrapper[DefaultDomain;;" + a GUID + "]". Then, use SetWindowPos() for any of those instances that have the WX_EX_TOPMOST flag set (using BOOL isTopMost = ((GetWindowLong(hWnd, GWL_EXSTYLE) & WS_EX_TOPMOST) != 0)). The service can run on a timer and automatically fixup any windows which appear as topmost once a second or so. |
Edited by - foxmuldr on Dec 11 2023 09:50:04 AM |
|
|
feline
Whole Tomato Software
United Kingdom
19024 Posts |
Posted - Dec 11 2023 : 09:40:46 AM
|
I suspect there will be permissions problems doing that in this case, since the IDE is being run as admin, from a limited user, so unless they are allowed to run something else as administrator, it won't have permission to make a change to the IDE.
An interesting idea though |
zen is the art of being at one with the two'ness |
|
|
foxmuldr
Tomato Guru
USA
416 Posts |
Posted - Dec 11 2023 : 09:55:05 AM
|
If the service runs as Local System it should be able to do it. Would be worth trying.
UPDATE: I just looked this up, and there are some steps to make it happen, so you're probably right it wouldn't work on most systems. |
Edited by - foxmuldr on Dec 11 2023 10:00:40 AM |
|
|
|
Topic |
|