我编写了一个编译好的MATLAB GUI,我们通过远程桌面在远程机器上运行。总体而言,它运行良好,但有时GUI会消除许多控件对象(按钮,表格,弹出窗口)。这似乎发生在客户端计算机的屏幕被锁定或GUI被最小化之后。
如果将鼠标移到按钮,弹出窗口或表格标题上,它们会重新出现。如果选择了表格单元格,它们将重新出现。 GUI没有崩溃,仍然可以正常工作,但对象只是消失,直到你再次出现它们。我只是在使用远程桌面(使用远程桌面连接的Windows-Windows)时才发现这种情况。
我怎样才能让这种情况停止发生?它并没有真正破坏任何东西,但它非常烦人。
我不知道这是MATLAB的问题还是远程桌面配置,所以我在这里发布了这个问题。如果您认为更合适,请随意将其移至超级用户。
答案 0 :(得分:1)
远程桌面在处理低级渲染图形以及与图形卡交互方面存在问题。根据我们的经验(我们在多个项目/应用程序中使用Nvidia GPU用于渲染和计算引擎),我们发现远程桌面在很多情况下失败,我们已经将它放弃用于第三方工具。
我怀疑这是你遇到的。
我会考虑的一个选项是强制Matlab进行软件渲染,如果这可以解决问题,那么肯定是图形卡。谷歌搜索“matlab软件渲染”的第一个命中返回matlab命令opengl
。阅读文档页面,给出命令:
opengl software
答案 1 :(得分:0)
听起来好像是由于远程桌面最小化引起的。为了提高效率,当客户端计算机上的“远程桌面”窗口最小化时,Windows将禁用各种图形。为防止这种情况,请在以下注册表位置创建DWORD RemoteDesktop_SuppressWhenMinimized 并将其设置为 2 :
HKEY_LOCAL_MACHINE\Software\Microsoft\Terminal Server Client
执行此操作以最小化并锁定屏幕后,不应对RDP会话执行任何操作。我怀疑这是图形卡的问题,因为 Windows 10 Creator's Edition 允许远程会话像使用本地图形卡一样使用远程图形卡。