Search code examples
c#.netactivexterminal-services

Handle Rdp ActiveX minimize event


I've developed a simple .net form application where I've embedded the RdpClient ActiveX. To reproduce the application, you have to:

  • 'Add Reference' and select COM
  • include 'Microsoft Terminal Services Control Type Library'
  • select the ToolBox, 'Choose Items...' and go to 'COM Components' tab
  • look for 'Microsoft RDP Client Control - version 6' (this is the version I've used)

Now you can drop this Control on the form. Handle the form Shown event with this code

axMsRdpClient6.FullScreen = true;
axMsRdpClient6.Server = "yourserver";
axMsRdpClient6.Connect();

Then when the rdpclient window appear, click the minimize button on the top bar.

My question is: why the event AxMSTSCLib.AxMsRdpClient7.OnRequestContainerMinimize is not fired when minimize button is clicked?

I need to handle when the user minimize the client to take peculiar actions (write log files, activate other windows application and so on).


Solution

  • I've found the answer in MSDN

    This method will only be called if the container-handled full-screen mode is enabled - see IMsTscAdvancedSettings::put_ContainerHandledFullScreen for more information.