Windows - 通过ssh打开带有图形界面的程序 - 一种通过计划任务的曲折实现方式

Windows(奇思妙想) - 通过ssh打开带有图形界面的程序 - 一种通过计划任务的曲折实现方式

前言

Windows启用OpenSSH客户端后就可以通过SSH的方式访问Windows了。但是通过SSH启动的程序:

  1. 无法显示图形界面
  2. 会随着SSH进程的结束而结束

于是想到了一种通过执行“计划任务”的方式脱离SSH以本机的名义执行不随SSH进程结束而结束的带图形界面的应用程序的方式。

Windows开启SSH

这个教程一搜一大把,这里仅仅列举主要内容以及容易踩坑的地方。

如何开启并连接:

  1. Windows设置–>应用–>应用和功能-可选功能安装OpenSSH客户端(过程可能十分缓慢,魔法也难以加速)。
  2. 启动OpenSSH SSH Server(sshd)服务。(可在services.msc通过鼠标启动,也通过命令行net start sshd启动)。
  3. 保证局域网或公网可访问目标主机,在另一台机器上执行ssh 用户名@ip地址并输入密码即可。

踩坑:

  1. 如果你是正版Windows并登录了微软账号,有可能你输入系统用户名和开机密码无法访问,但是输入你的微软账户邮箱和密码可以正常登录控制。

直接通过SSH启动其他程序效果不尽人意

有了终端,似乎一切都可以执行了。但是当我想执行带“图形界面”的爱心.exe时,若执行start 爱心.exe,则目标主机和你的主机上都没有任何踪迹,但是可以在任务管理器中看到。

在后台执行并且不显示界面

可以发现爱心.exe在后台执行了,但是不会显示界面。这时候如果断开ssh进程连接,则后台的爱心.exe也会随之消失。

大概是因为:

在Windows系统中通过SSH启动GUI程序时无法显示界面,通常是因为SSH会话与图形界面会话隔离导致的。SSH连接默认运行在非交互式控制台会话(通常为Session0),而图形界面程序需要运行在用户的交互式桌面会话(如Session1)(未验证)

通过任务计划启动UI程序

也就是说,如果能让Windows以为是它自己启动的一个程序,而不是SSH调用执行的一个后台程序,就可以正常执行显示界面并且不受SSH进程的约束了。

Windows自己启动一个程序?任务计划不就是干这个的么?

理论上,我创建一个到时间自动运行爱心.exe的任务计划,Windows到时间自己运行这个程序,那不就脱离我的ssh进程并且能正常显示界面了吗?

甚至,我直接通过SSH调用命令“立即执行这个计划任务”,是不是就达到了我想要的效果?

于是思路就变成了创建执行爱心.exe的任务计划 -> 立即执行任务 -> 删除任务计划

schtasks /create /tn "tempStartAiXin" /sc ONCE /tr "cmd /c start 爱心.exe" /ru %USERNAME% /st 00:00
schtasks /run /tn "tempStartAiXin"
schtasks /delete /tn "tempStartAiXin" /f

完美!爱心.exe在目标主机上成功运行,且不随我ssh会话的结束而终结。

End

同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/973503.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WPS接入deepseek-OfficeAI助手插件下载

功能简介 OfficeAI 助手 是一款免费的智能AI办公工具软件,专为 Microsoft Office 和 WPS 用户打造。 无论你是在寻找如何输入“打勾(√)符号”的方法,还是想知道“怎么在插入表格前添加文字”,或者“该用哪个公式”&a…

【JavaEE进阶】Spring MVC(4)-图书管理系统案例

欢迎关注个人主页:逸狼 创造不易,可以点点赞吗 如有错误,欢迎指出~ 图书管理系统 创建书籍类BookInfo import lombok.Data;import java.math.BigDecimal;Data //这个类基本上是和数据库对应起来的 public class BookInfo {private Integer id…

路由器的WAN口和LAN口有什么区别?

今时今日,移动终端盛行的时代,WIFI可以说是家家户户都有使用到的网络接入方式。那么路由器当然也就是家家户户都不可或缺的设备了。而路由器上的两个实现网络连接的基础接口 ——WAN 口和 LAN 口,到底有什么区别?它们的功能和作用…

AI客服-接入deepseek大模型到微信(本地部署deepseek集成微信自动收发消息)

1.本地部署 1.1 ollama Ollama软件通过其高度优化的推理引擎和先进的内存管理机制,显著提升了大型语言模型在本地设备上的运行效率。其核心采用了量化技术(Quantization)以降低模型的计算复杂度和存储需求,同时结合张量并行计算&…

基于COSTAR模型的内容创作:如何用框架提升写作质量

目录 前言1. Context(上下文):理解背景,奠定写作基础1.1 何为上下文1.2 上下文的作用1.3 案例解析 2. Objective(目标):明确写作方向,避免跑题2.1 确立目标2.2 如何设定目标2.3 案例…

kafka-集群缩容

一. 简述: 当业务增加时,服务瓶颈,我们需要进行扩容。当业务量下降时,为成本考虑。自然也会涉及到缩容。假设集群有 15 台机器,预计缩到 10 台机器,那么需要做 5 次缩容操作,每次将一个节点下线…

DeepSeek 提示词:定义、作用、分类与设计原则

🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编…

基于vue和微信小程序的校园自助打印系统(springboot论文源码调试讲解)

第3章 系统设计 3.1系统功能结构设计 本系统的结构分为管理员和用户、店长。本系统的功能结构图如下图3.1所示: 图3.1系统功能结构图 3.2数据库设计 本系统为小程序类的预约平台,所以对信息的安全和稳定要求非常高。为了解决本问题,采用前端…

大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(3)

Paimon的下载及安装,并且了解了主键表的引擎以及changelog-producer的含义参考: 大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(1) 利用Paimon表做lookup join,集成mysql cdc等参考: 大数据组件(四)快速入门实时数据…

blender笔记2

一、物体贴地 物体->变换->对齐物体 ->对齐弹窗(对齐模式:反方,相对于:场景原点,对齐:z)。 之后可以设置原点->原点--3d游标 二、面上有阴影 在编辑模式下操作过后,物体面有阴影。 数据-&g…

MinkowskiEngine安装(CUDA11.8+torch2.0.1+RTX4070TI)

1、背景 1)因为项目要用这个库:MinkowskiEngine,Minkowski Engine — MinkowskiEngine 0.5.3 documentation 然后就用了之前安装好 MinkowskiEngine 的torch1.8.1,cuda11.1的环境。 2)自己的代码出现cuda不支持torch用gpu进行矩…

【Blender】二、建模篇--05,阵列修改器与晶格形变

阵列修改器是bender里面一个比较常用的修改器,所以我们单独开口来讲,我们会先从几片树叶出发,然后我们用阵列修改器把这几片树叶变成这样的造型和这样的造型。这两个造型分别就代表着阵列修改器最常用的两种偏移方法,我们现在就开始我们先来做几个树叶。 1.树叶建模 首先…

华为昇腾服务器(固件版本查询、驱动版本查询、CANN版本查询)

文章目录 1. **查看固件和驱动版本**2. **查看CANN版本**3. **其他辅助方法**注意事项 在华为昇腾服务器上查看固件、驱动和CANN版本的常用方法如下: 1. 查看固件和驱动版本 通过命令行工具 npu-smi 执行以下命令查看当前设备的固件(Firmware&#xff0…

2024电子取证“獬豸杯”WP

简介: 竞赛为个人赛,工具自备,只发证书(还没用,公告这么写的哈)竞赛选手们将对模拟的案件进行电子数据调查取证,全面检验参赛选手电子数据取证的综合素质和能力。 检材链接: 百度网盘…

GESP2024年3月认证C++七级( 第三部分编程题(1)交流问题)

参考程序&#xff1a; #include <iostream> #include <vector> #include <unordered_map> using namespace std;// 深度优先搜索&#xff0c;给每个节点染色&#xff0c;交替染色以模拟两校同学的划分 void dfs(vector<vector<int>>& graph…

Spring Boot框架总结(超级详细)

前言 本篇文章包含Springboot配置文件解释、热部署、自动装配原理源码级剖析、内嵌tomcat源码级剖析、缓存深入、多环境部署等等&#xff0c;如果能耐心看完&#xff0c;想必会有不少收获。 一、Spring Boot基础应用 Spring Boot特征 概念&#xff1a; 约定优于配置&#…

Blaze RangePartitioning 算子Native实现全解析

引言&#xff1a;本文将全面且深入地解析Blaze RangePartitioning算子的Native实现过程。相较于原生Spark&#xff0c;RangePartitioning的Native实现在执行时间上达到了30%的显著下降&#xff0c;同时在资源开销方面节省了高达76%。这一改进大幅降低了运行成本&#xff0c;展现…

|网络安全|网络安全学习方法

1、先网络后安全 很多初学者还没搞定网络看懂网络拓扑&#xff0c;就急着研究防火墙或VPN&#xff0c;其实这样就不清楚整个网络架构是如何安全演进的。正确的流程是&#xff1a;先通过网络协议和拓扑设计的学习&#xff0c;能独立搭建一个企业网/校园网&#xff0c;再引入局域…

关于酒店旅游信息的数据采集API接口返回||包含参数说明

相关网站站点 xiecheng API 接入说明 携程获取酒店详情原数据 API返回值说明 item_get_app-获取酒店详情原数据 xiecheng.item_get_app 公共参数 名称类型必须描述keyString是调用key&#xff08;必须以GET方式拼接在URL中&#xff09;secretString是调用密钥api_nameStrin…

【.NET全栈】.NET包含的所有技术

文章目录 前言一、基础框架与语言1、.NET Framework2、编程语言 二、Web开发技术1、ASP.NET2、Blazor3、SignalR 三、桌面与移动开发技术1、Windows Forms&#xff08;WinForms&#xff09;2、Windows Presentation Foundation&#xff08;WPF&#xff09;3、Xamarin4、.NET MA…