前言 在 Windows 中相信大家已经很熟悉使用 Xmanager(Xshell), MobaXterm, SecureCRT 通过 X11 实现 Linux 图形化界面显示,我的需求是在 macOS...下使用 iTerm2 作为 Terminal 实现 X11 图形化界面显示,网上大部分教程只提到安装 Xquartz 但并没有结合实际问题给出完整的解决步骤,我把实践过程做了详细的记录方便大家按照最简单的步骤实现...Linux 图形化显示效果。...X11 介绍 有些 Linux 服务器出于性能和效率的考虑,通常都是没有安装图形化界面的,那么图形化程序在服务器上压根儿就跑不起来,或者无法直接显示出来,这就很尴尬了!那么如何解决这个问题呢?...Linux 本身是没有图形化界面的,所谓的图形化界面系统只不过中 Linux 下的应用程序。这一点和 Windows 不一样。
接着是将远程的linux服务器上的运行结果,在本地的XQuartz中显示。...这表示实际本地和远端没有能建立起来X11协议的转发体系,原因可能有很多,比如连接端口不是10.0,或者认证没通过等等。...断开ssh连接,使用ssh -AX username@ip地址重新连过来,-A的意思是使用X11认证授权方式,这样连接之后,linux主机会生成一个~/.Xauthority保存授权允许连接的远程终端信息...再次尝试执行x11应用,比如xclock,应当能成功了。...以后连接远程主机的时候,使用ssh -X ...或者ssh -Y ...而不用增加-A选项了,我们使用-A只是为了生成~/.Xauthority授权文件。
blog.csdn.net/Quincuntial/article/details/53766638 文章作者:Tyan 博客:noahsnail.com | CSDN | 简书 在使用...命令行链接时添加-L/opt/X11/lib -lX11即可;2....IDE下编写C++程序,需要在Library search path(-L)中添加/opt/X11/lib,在Libraries(-l)中添加X11,重新编译链接即可。
详细请看 dotnet 解决 UNO 在 OpenKylin 麒麟系统运行找不到默认字体启动失败 本文代码放在 github 和 gitee 上,可以使用如下命令行拉取代码 先创建一个空文件夹,接着使用命令行...https://gitee.com/lindexi/lindexi_gd.git git pull origin 8402eaca48804ec2418b459f540e5e48d1109a23 以上使用的是
这是我在尝试优化 Avalonia 在 Linux 上的低端设备的渲染性能时所研究的方式,本文将告诉大家如何简单使用 XShmPutImage 等 X11 的 XShm Extension 扩展方法,通过共享内存的方式推送图片...众所周知,在 X11 里面有经典的 Client-Server 模型。...里面简单使用 XShm Extension 扩展方法推送图片渲染 本文使用的很多 X11 的 PInvoke 代码是从 CPF 和 Avalonia 里面抄的,大家可以在本文末尾找到本文所有代码的下载方法...前置的 X11 相关知识博客,请参阅 博客导航 尽管在上个世纪就能找到 XShm 相关文档,但是在实际使用之前,推荐还是判断一下当前设备的 XShm 情况,判断代码如下 var status...= shmget(IPC_PRIVATE, mapLength, IPC_CREAT | 0777); 详细关于 shmget 函数的介绍,还请参阅 Linux进程间通信(六):共享内存 shmget(
最近,使用ubuntu 发现默认不能使用 x11转发。...systemctl restart sshd.service sudo vim /etc/ssh/ssh_config:修改客户端的ssh sudo systemctl restart ssh.service 开启x11
最近是有Xshell登录服务器总是连接慢,需要等很长时间,但是最后还是可以登录;xshell窗口提示如下图:图片提示信息主要如下;The remote SSH server rejected X11 forwarding...request.主要解决登录慢的问题:SSH登录到服务器执行命令:vim /etc/ssh/sshd_config,找到如下信息并修改:> (可选) X11Forwarding 设置为yes 是否允许进行 X11...> UseLogin 设置为 no (和上面二选一既可) 是否在交互式会话的登录过程中使用 login,如果开启此指令,那么 X11Forwarding 将会被禁止;> UseDns 设置为 no...让xshell在连接时不要每次都自动检测DNS环境是否一致,这样一来就可以提高我们连接linux的速度图片最后使用systemctl restart sshd.service 重启ssd服务问题解决
本文将通过阅读 lib x11 代码告诉大家,调用 XRootWindow 函数是不耗时的,没有成本的 在我阅读 Avalonia 和 CPF 和 UNO 框架的代码的时候,我发现了很多时候都是在需要用到...此时我想着是否将 RootWindow 存放起来,这样可以稍微提升一点性能 在对某个函数调用进行性能测量考虑时,不仅可以使用基准性能测试工具进行测试,还可以通过阅读代码的方式了解实现原理从而了解其性能...通过阅读 lib x11 的代码,我发现了 XRootWindow 方法只是从结构体里面将值取出来,性能损耗其实和自己将 RootWindow 存起来可以认为是等价的 在 Macros.c 文件的对 XRootWindow...里面先取 Screen 再取其 root 字段 var xRootWindow = XRootWindow(display, screen); 那这么说是否可以绕过 XRootWindow 方法,直接不安全使用...github.com/lindexi/lindexi_gd.git git pull origin 7ad18fcc3b99003e0864e54e1ea6e696909b4b3b 获取代码之后,进入 X11
它可以进行文本扩展、运行宏和运行脚本,其中任何一个都可以用热键、组合键或键入的缩写来触发,它是完全可定制的,你可以使用它来自动化几乎任何你可以想到的计算机行为。...AutoKey提供了一个API与系统交互,可实现诸如鼠标点击或使用键盘输入文本等操作。...例如: Platform: Linux-4.13.0-37-generic-x86_64-with-LinuxMint-18.3-sylvia Browser: Google Chrome 65.0.3325.181...一种GUI对话框,使用键入或键入和单击输入的组合来启动程序或显示对话框。你可以自定义脚本以执行几乎任何你喜欢的操作。...你可以让脚本等待鼠标点击,如果没有收到鼠标点击,可以使用计时器在指定的延迟后执行操作,也可以不使用计时器,在这种情况下,只有在实际点击鼠标后才会执行操作。 例如:打印文本前等待左键单击。
本文记录如何在 X11 应用里面,使用 XShapeCombineRegion 方法配置一个 X11 窗口支持和 Win32 窗口一样的命中测试穿透功能,即对应 Win32 的 WS_EX_TRANSPARENT...的鼠标、触摸等的点击等动作的穿透功能,可以实现在窗口中挖空一块范围直接穿透到后面的窗口 在 X11 窗口中,想要实现让窗口不可命中,即所有的鼠标、触摸等的事件穿透到后面的窗口上,可以采用 libXext.so...提供的 XShapeCombineRegion 方法,也可以使用有争议的 libXfixes.so 提供的 XFixesSetWindowShapeRegion 方法 通过以上两个方法即可让 X11...只是这个 libXfixes.so 也足够旧了,基本上系统都会带的 所有代码放在 github 和 gitee 上,可以使用如下命令行拉取代码 先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹...libXext.so.so: 无法打开共享对象文件: 没有那个文件或目录 /home/uos/Downloads/lin/liblibXext.so.so: 无法打开共享对象文件: 没有那个文件或目录 at CPF.Linux.XLib.XShapeCombineRegion
本文记录我在麒麟 Kylin 的 X11 应用开发过程的经验 系统版本信息 本文面向的麒麟系统版本信息如下: $ cat /etc/os-release NAME="Kylin" VERSION="银河麒麟桌面操作系统...(教育版)V10" VERSION_US="Kylin Linux Desktop EDU V10" ID=kylin ID_LIKE=debian PRETTY_NAME="Kylin V10 SP1
} finally { XCloseDisplay(display1); } } }); 以上的 handle 是一个 X11...display 对象,则发送失败 以上代码放在 github 和 gitee 上,可以使用如下命令行拉取代码 先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码...XInitThreads 方法才能确保安全 完全的代码如下 // See https://aka.ms/new-console-template for more information using CPF.Linux...; using System; using System.Diagnostics; using System.Runtime; using static CPF.Linux.XLib; XInitThreads...; 以上代码放在 github 和 gitee 上,可以使用如下命令行拉取代码 先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码 git init
本文记录我学习开发 X11 应用的笔记 如何设置X11里面两个窗口之间的层级关系 如何类似 WPF 的 Owner 之类的关系?可使用 XSetTransientForHint 方法。...比如有 a 和 b 两个窗口,使用下面代码即可设置 a 窗口一定在 b 窗口上方 // 我们使用XSetTransientForHint函数将窗口a设置为窗口b的子窗口。...,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码 git init git remote add origin https://gitee.com/lindexi...dc1b79521e00300dfaef49d54226b6f687b25b3e 获取代码之后,进入 GececurbaiduhaldiFokeejukolu 文件夹,即可获取到源代码 和 Avalonia 相互调用 设置工具栏与 X11...窗口绘制的笔迹 获取 Avalonia 的 X11 窗口 if (TryGetPlatformHandle()?.
本文告诉大家如何在 UNO 里面,如何通过日志信息判断是否在 Linux 的 X11 平台上使用 OpenGL 渲染加速 本文的方法适用于 UNO 的 5.2.175 版本,其他版本还请大家自行测试 需要先开启...更具体的测试就是默认选择使用 Debug 模式,或者去掉条件编译符 再添加日志过滤,如以下代码 builder.AddFilter("Uno.WinUI.Runtime.Skia.X11....UseMacOS() .UseWindows() .Build(); host.Run(); } } 尝试运行以上代码,在 Linux...我整个代码仓库比较庞大,使用以下命令行可以进行部分拉取,拉取速度比较快 先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码 git init git...https://gitee.com/lindexi/lindexi_gd.git git pull origin 7de15e7b026989eab007b3ca4b38f56f334f175b 以上使用的是国内的
你可能会看到如下错误: No protocol specified No protocol specified No protocol specified No protocol specified 这是由于X11...解决的办法很简单,允许所有用户访问X11服务即可。这个事情可以用xhost命令完成。
故事的背景是我在给 Avalonia 加上触摸尺寸的支持时,代码审查过程中大佬提出了在多屏上的 X11 行为问题,为此我找了两个触摸屏进行测试 X11 的多屏触摸行为。...由于 Min 常是 0 因此在计算中常被忽略 但值得一提的是在 X11 里面,根据 https://www.kernel.org/doc/html/latest/input/multi-touch-protocol.html...文档,所获取的是椭圆长轴,将其当成触摸宽度是不准确的 校准屏幕 在我的设备上,发现触摸屏的触摸输入和对应的屏幕显示没有对齐,需要根据以下大佬们的博客进行修复 Linux处理多触屏的终极解决方案 香风家的火柴盒...我整个代码仓库比较庞大,使用以下命令行可以进行部分拉取,拉取速度比较快 先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码 git init git...github.com/lindexi/lindexi_gd.git git pull origin dedfc0ec3a3c8d04e7bec5276fe5bcaa926fe6e9 获取代码之后,进入 X11
本文将告诉大家如何在 dotnet 里面的后台线程设置 X11 窗口的最小化 核心设置 X11 窗口最小化的方法是 XIconifyWindow 方法,核心问题是在后台线程需要自己使用 XOpenDisplay...先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码 git init git remote add origin https://gitee.com...display); } }); 完全的代码如下 // See https://aka.ms/new-console-template for more information using CPF.Linux...; using System; using System.Diagnostics; using System.Runtime; using static CPF.Linux.XLib; XInitThreads...; 以上代码放在 github 和 gitee 上,可以使用如下命令行拉取代码 先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码 git init
这是我在学习 CPF 和 Avalonia 过程中,编写的 X11 触摸测试程序所测试到的一些行为 前置博客: dotnet 学习 CPF 框架笔记 了解 X11 里如何获取触摸信息 X11 触摸测试程序...抬手时,可以收到 End 事件 本文代码放在 github 和 gitee 上,可以使用如下命令行拉取代码 先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码...XITouchClass Touch mode: direct Max number of touches: 50 如此可以证明这是从 X11...我整个代码仓库比较庞大,使用以下命令行可以进行部分拉取,拉取速度比较快 先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码 git init git...github.com/lindexi/lindexi_gd.git git pull origin c64e19bfab4a85720d9a0692f1de3c960d6d8ce1 获取代码之后,进入 X11
正式踏入 linux 学习历程,记录日常 BUG,总结提升 序 作为学习 Linux 的小白来说,无论什么样的操作,必须不能影响到主机的健全,为此,专门搞了台服务器来耍一耍 连接服务器肯定是需要终端的...XShell,大家都说好那必须是没毛病,闭眼冲 如果你是学生(其实不用验证,发下邮件就好啦),是可以免费使用 XShell 的,进入官网后下滑,找到这里 然后你就会收到官方的邮件,点击里面的下载链接,...安装就好 问题描述 今天使用 XShell 连接服务器的时候,总是弹出这么一个警告信息,很是烦人 WARNING:The remote SSH server rejected X11 forwarding...解决办法如下,非常简单就能解决,强迫症患者滴福音诶 解决方案 在会话管理器中找到当前会话 右键选择属性 点击隧道取消选中转发X11连接到(X) 点击确定,双击会话重新连接 警告消失,问题解决
本文将告诉大家如何在 X11 里面设置窗口透明 不同于在 WPF 里面可以使用 AllowsTransparency 简单方便的设置透明,在 X11 里面设置窗口透明的方法比较绕。...AllowUnsafeBlocks 开启不安全代码 打开 Program.cs 文件,开始编写 X11 透明窗口示例应用代码 按照 X11 的基础使用方法,先获取 Display 和 Screen 和...var defaultScreen = XDefaultScreen(display); var rootWindow = XRootWindow(display, defaultScreen); 接着使用...{ break; } } return visual->visual; } 获取 Visual 指针的方法就是本文的核心逻辑了,也是 X11...return _addr_GetVisualFromFBConfig(@dpy, @config); } // Ignores egl functions. // On some Linux
领取专属 10元无门槛券
手把手带您无忧上云