RemoteApp and Transparency - transparency

I use custom application as a Windows RemoteApp. The window of this application does not have a frame. Also the window is transparent in both ways: transparent background and transparent mouse input. This window places above all windows and indicate some changing information.
The problem is that when application works as a RemoteApp the window is created without WS_EX_TRANSPARENT flag. As a result the window is not transparent for mouse input. There is no such problem if application run locally.
Down below presented the pictures of application's window flags:
Window flags of application running locally
Window flags of application running as a RemoteApp
I tried to configure my rdp file with different settings, but I didn't find something usefull.
Anyway my rdp file looks like that:
redirectclipboard:i:1
redirectprinters:i:1
redirectcomports:i:0
redirectsmartcards:i:1
devicestoredirect:s:*
drivestoredirect:s:*
redirectdrives:i:1
session bpp:i:32
prompt for credentials on client:i:1
span monitors:i:1
use multimon:i:1
remoteapplicationmode:i:1
server port:i:3389
allow font smoothing:i:1
promptcredentialonce:i:0
videoplaybackmode:i:1
audiocapturemode:i:1
gatewayusagemethod:i:0
gatewayprofileusagemethod:i:1
gatewaycredentialssource:i:0
full address:s:XXX.XXX.XXX.XXX
alternate shell:s:||MyApp
remoteapplicationprogram:s:||MyApp
remoteapplicationname:s:MyApp
remoteapplicationcmdline:s:
workspace id:s:XXX.XXX.XXX.XXX
use redirection server name:i:1
loadbalanceinfo:s:tsv://MS Terminal Services Plugin.1.QuickSessionCollection
Any idea what can be done to make the window transparent for mouse input when application run as RemoteApp?

Related

Electron load failed when set uiAccess true

I want to use electron to develop an app to show above lock screen. I need to set my window alwaysOnTop and set the uiAccess of the exe as true.
The exe can load index.html successfully without uiAccess change, but when I change the uiAccess to true, the exe can only create a window but the window is blank, sometimes it's white while sometimes it's black.
I tried to log some event and found that the crashed event was triggered if I open the exe with non-Administrator. If I open the exe with administrator, the 'did-finish-load' was triggered but the window is black, didn't show my index.html. How can I fix this?
I found that the cause is the parameter of setAlwaysOnTop. The type for windows should be "normal". After change to mainWindow.setAlwaysOnTop(true, 'normal');, it works well.

Q: save Open Text Exceed windows sizes and positions?

how do you save your last windows sizes and position when using Exceed? I'm using it to run SAS environment but every time I boot it up, windows are always going back to default sizes and positions :(
I found this useful user written paper on using Display Manager.
The size and position of each of these windows can be adjusted using
standard mouse/window techniques. Once they have been adjusted the way
you want them, use the WSAVE ALL command in the command box to save
these settings for your next SAS session.
Also watch out for issues with not having access to your SASUSER library which can occur when you are running multiple SAS jobs at the same time. You can prevent the SASUSER library from not being accessed by all of the jobs if you run using the -RSASUSER option. But then you will not be able to run the WSAVE command. So if you want to make changes to the window locations do it when you do have write access to SASUSER.

Using mstscax to shadow a Remote Desktop session

I've used the mstscax ActiveX control in a C# Winforms application in the past.
However I now could not figure out how to shadow an existing remote session. (equivalent to mstsc.exe /shadow:<Session ID> /noConsentPrompt /v:<IP address>)
Does anyone have information or an example?
If it is for some reason not possible to do, how can I use mstsc.exe with a rdp-file to have control over the settings like keyboard redirection etc. with shadow functionality?

Can Chromium features that are normally turned on via switches be turned on programatically after starting up?

Is there a way to use Chromium switches after starting it up, or must they be enabled on start up? For example, can switches be passed to the renderer processes, or just to the main process?
I want to turn on paint flashing in Chromium (actually in my Electron app which runs on top of Chromium).
Devtools has a checkbox that turns this on, but I want to be able to turn this on without devtools, and after the app has started.
I know there's a show-paint-rects flag I can use:
chrome.exe --show-paint-rects
In my Electron app, I would need to use app.commandLine.appendSwitch:
app.commandLine.appendSwitch("show-paint-rects");
I also found a ui-show-paint-rects flag that lives in something called the "compositor," but that may be irrelevant for me.
Both of these work, but since Chromium uses a multi-process architecture, I'm hoping that there's a way I can specify that switch, or otherwise, turn on a feature in one process and not have to specify it at startup.
Is there a way to do this in Chromium? (Would be ideal to do this in Electron, but I'm not counting on it)

Detecting Quick Access command state

We have an application that is using Windows Ribbon Framework for an UI. The app itself is written in Delphi and uses Windows Ribbon Framework for Delphi to interface with the ribbon API.
Our ribbon XML places few commands into the Quick Access toolbar. Use can then remove/add commands either by using the built-in ribbon mechanism (selecting the drop/down button and clicking on a command name) or by selecting More commands command which opens the configuration dialog.
The problem I've encountered is that I cannot find a way to get the current state of commands in the QA collection (whether they are visible or not).
In the example above (picture) I would like to detect that first five commands are checked and that the last is not so I can prepare the configuration dialog accordingly.
I have no problems enumerating the IUICollection and accessing the items stored inside. I can also get the UI_PKEY_CommandId for each item. I cannot, however, find a way to read the checked/unchecked state. I tried reading UI_PKEY_BooleanValue and UI_PKEY_Enabled for all items in the collection, but they do not return that state.
I have also tried to monitor IUICommandHandler.UpdateProperty but it doesn't get called when such item is checked/unchecked (except that it is called with the UI_PKEY_Label key).
Does ribbon API even support this functionality?

Resources