3D3设备和RDP窗口的远程桌面行为最小化 [英] Remote desktop behavior with 3D3 Device and RDP window minimize
问题描述
在C#WPF中,我们使用显示地图的第三方(非托管)库.
我们使用系统.Windows.Interop.D3DImage 类.
第三方库将Direct3D用于IntPtr32表面位置属性.
In our C# WPF we use a 3rd party (unmanaged) library that display a map.
We use the System.Windows.Interop.D3DImage class.
The 3rd party library uses Direct3D for the the IntPtr32 surface location property.
当我从另一台计算机打开远程桌面并尝试查看WPF客户端时,我们看到了地图.
一旦WPF UI客户端启动,并且我最小化RDP会话或关闭RDP,我将获得异常:
When i open a remote desktop from another computer and trying to view the WPF Client, we see the map.
Once the WPF UI Client is up, and I minimize the RDP session or close the RDP i will get exception:
Direct3D device is lost
根据我在视频流应用程序方面的经验,最小化窗口时,它将停止渲染图像以节省bandwitdh.
我猜rdp的表现是一样的吗?它是可配置的吗?我希望即使窗口最小化也可以继续流式传输.
From my experience with video streaming applications, When a window is minimized, it is stop rendering the image in order to save bandwitdh.
I guess rdp is acting the same ? Is it configureable ? I wish to continue streaming even if window is minimized.
我知道,.RDP文件中有其他设置.
Directx设置为:redirectdirectx:i:1
I know that there are additional settings in the .RDP file as mentioned here.
The directx is set to: redirectdirectx:i:1
部分答案:
当RDP客户端应用程序正在连接到RDP服务时,显示该窗口时是GUI模式,最小化时是GUI-LESS模式,并且Direct 3D组件确实丢失了.为了在最小化过程中保持活动状态,必须打开注册表项( RemoteDesktop_SuppressWhenMinimized )