RemoteApp window display issue on reconnect - remoteapp

I am running windows server 2019 datacenter, with a basic RemoteApp install. When I initially connect to a session, everything displays as expected. When I disconnect and then reconnect to the session, most of my windows get a thick blue border and some dark mode elements do not display correctly.
Initial connect:
explorer on initial connection to remoteapp session
Reconnect:
explorer on reconnection to session
I tried to change settings related to remotefx in gpedit, as well as regedit. Nothing I tried seemed to make any difference.

Set "Themes" service in services.msc to manual or disabled. The issue was that for some reason it was setting windows to use aerolite theme instead of just aero

Related

About behavior of "Minimize" in case of Remote App when using Guacamole

We are using Guacamole for developing an application with RDP. We did POC using code from the following GitHub repositories:
https://github.com/wwt/guac
https://github.com/wwt/guac-vue
Configuration details are:
Windows Server 2016. RDP service is running here.
With this setup, we could successfully access the application remotely, however, the "minimize" action is not behaving as we expected. That is, the remote app window vanishes when we press the "minimize" button and a black screen is shown.
We could get back to the app by pressing 'Alt+Tab' combination but what we are expecting here is that the app getting placed at the bottom of the window showing three buttons: "Minimize, Restore and Close", so that we can take the further action. (As shown below.)
Has someone come across such a scenario and was able to address the need? Any help will be highly appreciated.
We came across this thread that talks about a similar problem but it doesn't have a solution.
We also explored official documentation of guacamole but had no luck.
Thanks in advance!
I believe you are starting the application using RemoteApp mechanism. The RemoteApp means that the remote application will be started integrated with the local computer desktop. The local computer desktop, or better window manager, will handle the minimise action.
In case of the Guacamole, the "local computer desktop" is the browser window, which does not have window manager. This means that there is no place for app to go when minimised.
You may try the Guacamole parameter "initial-program" instead of "remote-app". This parameter will launch the application immediately upon the connection is established, but the session will also have full desktop from the remote machine.

lotus notes xpage debugging

I'm using xpages and lotus notes.
I've followed the guides mentioned from various sites about setting up debugging with lotus notes xpages javascript,
where
JavaEnableDebug=1
JavascriptEnableDebug=1
JavaDebugOptions=transport=dt_socket,server=y,suspend=n,address=8000
has to be set up on workstation and on dev server.
Also, the port 8000 has to be enabled, and opened in default firewall on workstation and dev server.
And create a Javascript debug config on LN with ip address of dev server, and port 8000.
Also checking, port 8000 is not being used as per using netstat...
on workstation and on dev server,
and so I did...
Then soft restart workstation and dev server, loaded up LNotes and designer,
then using Chrome, I loaded my app for debugging,
then going back to LNotes while app is running and focused on the browser,
then trying to run my Debug config...
But debugger still does not connect, and keeps popping the help info screen.
So, what could I have missed?
In Domino Designer you need to switch to the Debug tab and click on the bug to start your session.
I found it doesn't connect always directly. When you see only 2 threads it didn't. Click disconnect and connect again.
Once you see more threads you are good to go. You also need to set some breakpoints otherwise it runs through

Microsoft RDP for mac has no resume and reconnects with new session each time after minimized

I have been using the Microsoft Remote Desktop 8.0.18 to work on Azure vms. Every time the rdp on the mac changes to minimized there is no way to get your current window back again. I click on the Windows RDP icon down on the task bar and only get prompted with the initialize connection screen. The causes the server to run out of rdp sessions and am forced to reset the vm. I am not a pro mac user so it is probably something simple I am missing.
Have you tried forcing an install of the new mac rdp client?
http://blogs.msdn.com/b/devfish/archive/2015/02/25/mac-remote-desktop-connection-error-connecting-to-azure-virtual-machine.aspx#10631510

Why can't Visual Studio 2013 see the Remote Debugger running on my Surface?

I am trying to install and run my Windows Store app on a real Surface RT device. I have installed the Remote Debugger for ARM and its running, with no authentication on 4018.
Visual Studio fails to see the device, fails to connect and deploy.
In Windows on the desktop, I cannot ping and my port-query tool says 4018 is down, the host is unreachable.
What can I do? Why didn't they just use USB like Windows Phone development?
Microsoft don't tell you this, but you need to configure some firewall rules for the device to become visible on the network. Of course, you won't find anything by searching for "firewall" from the Start screen, but it can be found as a Snap-in for MMC.
You could turn the firewall off for the Private Profile, i.e. your local, private home network, since your home router already has a firewall and the one in Windows is just there to annoy people; cause family members to call and interrupt your dinner while they struggle to get things working on their budget new Windows 8 laptops (with no touch screen), or you could set the right rules manually.
However there's an easier way, turn on the oh-so-discoverable - especially on a tablet that's not even supposed to even have a desktop - "Network discovery and file sharing" by opening Windows (file) Explorer and clicking on the Network node on the left. A bar will pop up to remind you that Windows is getting in the way and that you can click it to make stuff work again; this configures the firewall for you.
Note that turning on "Network discovery..." via the option under Control Panel > Network Sharing Blah > Instantly-forgettable Name doesn't work. No one knows why.
By now you should be able to ping you device and the port is open, just in time for your battery to have gone flat.
Important Edit
Today, its not working again and pop-up doesn't appear again so I cannot try the same trick. My port query tool says the port is not open (it was the other day).
So I tried this, but its not working for me.
# Elevated Command Prompt #
netsh advfirewall firewall add rule name="RemoteDebugger" dir=in action=allow protocol=TCP port=4018
That says 'Ok.' but the port isn't open.
So I went into MMC and added the Firewall snap-in and its enabled itself again for the Private profile.
Then I noticed that it doesn't turn off. If you flip it to Off and hit Apply, it does nothing!!
There are now two inbound rules for the Remote Debugger, the one I setup and another for the executable. Still, doesn't work.
This thread:
http://answers.microsoft.com/en-us/windows/forum/windows_rt-networking/possible-windows-firewall-bug-on-surface-rt-blocks/caa8b40c-dacc-4d19-a751-7a04f8ef00e4
There's an answer stating:
Open Control Panel -> Administrative Tools -> Windows Firewall with Advanced Security.
Click "Windows Firewall Properties" in the main frame
In each of the three tabs of Domain, Private and Public Profile:
1) Note that: If you change "Firewall state", or change "Inbound connections" to "Allow" (inbound connections that do not match a rule are allowed), it is not going to work. The change is immediately lost after you click "OK" or "Apply" to close the dialog box.
2) What you need to do is: click Protected network connections: "Customize", it will show another dialog box, in which you can deselect some network connections. In this case, you can uncheck "Wireless" and leave "Bluetooth" on.
Once you finish step 3, Action Center will pop up an alert, saying Windows Firewall is off or not using recommended settings. You can ignore this alert, or turn it off in "Change Action Center settings".
Though someone on that thread confirm it had worked, it hasn't for me.
Luke

Terminal session when minimized\disconnected returns a blank screen upon capturing desktop snapshot

I am using the below JAVA code to capture the desktop of a remote machine
Robot robot = new Robot();
BufferedImage screenShot = robot.createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()));
ByteArrayOutputStream imageBytes = new ByteArrayOutputStream();
ImageIO.write(screenShot, "PNG", imageBytes);
return imageBytes.toByteArray();
However the captured image is blank, when the terminal session to the remote machine is either minimized or disconnected. I appreciate your help in resolving the issue, at the very least the minimized scenario.
Configuration:
I have the same issues with a physical machine running windows 7 and a virtual machine running windows server 2008 R2.
More insights from MSDN:
Why you get black screen when you disconnect from RDP ?
 
http://msdn.microsoft.com/en-us/library/aa383015%28VS.85%29.aspx
Here is my attempt to make things work, but none of the following did the trick:
 
How to get data when RDP window minimized ?
 
You can force the RDP display driver to send data when minized, try these steps and let me know how it goes:
 
1) Add the following key
HKEY_LOCAL_MACHINE\Software\Microsoft\Terminal Server Client\ Created a new DWORD value and named it RemoteDesktop_SuppressWhenMinimized. Specified 2 as the value data.
Note: Also tried adding the registry key to HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Terminal Server Client\
 
2) Disable bitmap caching (http://technet.microsoft.com/en-us/library/cc737325(WS.10).aspx)
In the Remote Desktop Connection window, click Options.
On the Experience tab, verify that the Bitmap caching check box is selected. Or, to disable bitmap caching, clear theBitmap caching check box
If you minimize the Remote Desktop window, Windows switches the remote session to the GUI-less mode and does not display windows and controls. As a result, TestComplete (or TestExecute) will be unable to interact with the tested application’s GUI, as it does not exist and your automated GUI test will fail.
To work around the issue, you can change the Remote Desktop’s registry settings on your local computer (where you launch the Remote Desktop):
On your local computer, close all open Remote Desktop sessions.
Launch the Registry editor (regedit.exe).
Navigate to one of the following Registry keys, depending on whether you wish to modify the Remote Desktop settings only for the current user or for all users on the computer:
HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client
HKEY_LOCAL_MACHINE\Software\Microsoft\Terminal Server Client
Create a DWORD value named RemoteDesktop_SuppressWhenMinimized and set it to 2.
Or you can do it programmatically by following steps:
Transparent the window
Restore the Window
Capture
Minimize it again
Remove transparency
We had similar problem in our project last year...we could find any stable and permanent solution....however here is how a work around worked for us...
We had to run on 5 remote desktops (which will take screens capture as well during failure) ..however as you have figured already if we disconnect session or minimise the RDC Window blank screenshot is captured. Therefore we had added one more VM to connect those other five test boxes. The task for that VM is to keep session active and resized to other 5 boxes...this worked for us.
If you connect a remote desktop to the test machine, make sure to reboot the machine when you are done, otherwise the desktop will remain locked and screen captures will not work.
I don't believe there is any other way around the issue.
I just configured the clients to auto logon, disabled the screen saver and installed a VNC server on each client.
Basically, make sure the screen is always on, and don't RDP into them.
This worked on both physical PCs and on virtual machines hosted on a Hyper-V server.
I even wrote a small .NET desktop client that ran multiple VNC clients inside a single window, so we could see what was happening on all the clients. We had an old PC running this with it's monitor on top of a cupboard to (a) let the developers see if any client had hung, had hundreds of browser windows open, etc. and (b) to look impressive for any non-developers walking past.
A simpler alternative to the above answers to to transmute the terminal session (RDP) into the console session. The session will then display to the physical screen (Switching the user of anyone currently logged into the physical machine). The following command does this:
for /f "skip=1 tokens=3" %%s in ('query user %USERNAME%') do (tscon.exe %%s /dest:console)

Resources