远程交互处理方法及装置与流程

文档序号:28811662发布日期:2022-02-09 04:15阅读:350来源:国知局
远程交互处理方法及装置与流程

1.本技术涉及计算机网络技术领域,特别涉及一种远程交互处理方法及装置。


背景技术:

2.随着计算机网络技术的发展,远程交互应用也越来越引起人们的关注。windows系统中,远程交互的应用通过控制台程序进行交互时,由于设备设置的差异,远程交互的双方可能具有不同的输入方式或输出方式。由此,远程交互双方针对交互过程中的消息,在不同的输入方式或输出方式下,有可能出现输入的数据乱码或显示的数据乱码的问题,计算机因此读取或执行到与实际情况不同的数据或命令信息,继而导致交互过程中应用程序无法正确响应交互中的数据信息而报错,无法继续进行操作。


技术实现要素:

3.有鉴于现有技术中存在的上述问题,本技术提供了一种远程交互处理方法及装置,本技术实施例采用的技术方案如下:
4.一方面,本技术实施例提供了一种远程交互处理方法,应用于被控端,所述方法包括:
5.在与主控端连接成功的状态下,根据主控端发送的键盘输入事件显示第一显示内容;
6.根据所述第一显示内容向所述主控端返回第一消息,以使所述主控端根据所述第一消息以所述被控端的显示方式对所述第一显示内容进行相应地显示;其中,所述第一消息至少包括所述第一显示内容对应的显示参数和生成所述第一消息的输出编码方式。
7.在一些实施例中,根据主控端发送的键盘输入事件显示第一显示内容之前,还包括:
8.响应于所述主控端发送的设置编码事件进行输入编码设置,以基于设置后的输入编码方式响应所述键盘输入事件来显示所述第一显示内容。
9.在一些实施例中,显示第一显示内容之前,还包括:
10.界定出用于显示所述第一显示内容的第一显示区域。
11.在一些实施例中,所述显示参数至少包括:显示颜色和光标位置。
12.另一方面,本技术实施例还提供了另一种远程交互处理方法,应用于主控端,所述方法包括:
13.在与被控端连接成功的状态下,获取键盘输入事件;
14.将所述键盘输入事件发送至所述被控端,以供所述被控端显示第一显示内容;
15.获取所述被控端发送的第一消息,响应所述第一消息,以通过所述被控端的显示方式对所述第一显示内容进行相应地显示;
16.其中,所述第一消息由所述被控端根据所述第一显示内容生成,其至少包括所述第一显示内容对应的显示参数和生成所述第一消息的输出编码方式。
17.在一些实施例中,所述方法还包括:
18.对所述键盘输入事件所对应的内容不显示。
19.在一些实施例中,所述响应所述第一消息,以通过所述被控端的显示方式对所述第一显示内容进行相应地显示,包括:
20.根据所述输出编码方式对所述第一消息进行解码,根据解码后的第一消息基于所述显示参数呈现与第一显示内容相应的第二显示内容。
21.在一些实施例中,还包括:
22.若所述第一消息包括设置编码事件,则响应所述设置编码事件进行输入编码设置;
23.基于所述输入编码方式根据解码后的所述第一消息进行输入,以呈现所述第二显示内容。
24.另一方面,本技术还提供了一种远程交互处理装置,包括:
25.第一显示模块,配置为在与主控端连接成功的状态下,根据主控端发送的键盘输入事件显示第一显示内容;
26.第一发送模块,配置为根据所述第一显示内容向所述主控端返回第一消息,以使所述主控端根据所述第一消息以所述被控端的显示方式对所述第一显示内容进行相应地显示;其中,所述第一消息至少包括所述第一显示内容对应的显示参数和生成所述第一消息的输出编码方式。
27.另一方面,本技术还提供了另一种远程交互处理装置,包括:
28.获取模块,在与被控端连接成功的状态下,获取键盘输入事件;
29.第二发送模块,配置为将所述键盘输入事件发送至所述被控端,以供所述被控端显示第一显示内容;
30.第二显示模块,配置为获取所述被控端发送的第一消息,响应所述第一消息,以通过所述被控端的显示方式对所述第一显示内容进行相应地显示;
31.其中,所述第一消息由所述被控端根据所述第一显示内容生成,其至少包括所述第一显示内容对应的显示参数和生成所述第一消息的输出编码方式。
32.本技术的实施例中,被控端直接接收主控端发送的键盘输入事件,针对键盘输入事件进行响应,以正确获取到主控端发送的消息并进行输出,从而显示出第一显示内容。根据第一显示内容向主控端返回第一消息时,第一消息包括第一显示内容的显示参数和生成第一消息的输出编码,以使主控端可以基于该输出编码正确获取第一消息的数据内容,并以被控端的显示方式对第一显示内容进行显示,从而避免远程交互的双方因数据乱码而导致操作无法继续的问题,提升远程交互中的数据处理效率,用户体验好。
附图说明
33.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
34.图1为本技术实施例提供的远程交互处理方法的流程图;
35.图2为本技术另一实施例提供的远程交互处理方法的流程图;
36.图3为本技术实施例提供的远程交互处理装置的框图;
37.图4为本技术另一实施例提供的远程交互处理装置的框图。
具体实施方式
38.此处参考附图描述本技术的各种方案以及特征。
39.应理解的是,可以对此处申请的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本技术的范围和精神内的其他修改。
40.包含在说明书中并构成说明书的一部分的附图示出了本技术的实施例,并且与上面给出的对本技术的大致描述以及下面给出的对实施例的详细描述一起用于解释本技术的原理。
41.通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本技术的这些和其它特性将会变得显而易见。
42.还应当理解,尽管已经参照一些具体实例对本技术进行了描述,但本领域技术人员能够确定地实现本技术的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。
43.当结合附图时,鉴于以下详细说明,本技术的上述和其他方面、特征和优势将变得更为显而易见。
44.此后参照附图描述本技术的具体实施例;然而,应当理解,所申请的实施例仅仅是本技术的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本技术模糊不清。因此,本文所申请的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本技术。
45.本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其他实施例中”,其均可指代根据本技术的相同或不同实施例中的一个或多个。
46.一般主机通过远程交互对远程设备进行控制时,主机通过主控端控制台程序向远程设备发送消息,远程设备通过被控端控制台程序接收到消息后进行显示,并根据显示的内容向主机返回相应的消息。但是,不同的设备在输入方式和输出方式可能不同,由此,远程设备接收到消息时有可能出现显示数据信息乱码的问题,无法接收主控端的控制执行正确的操作。本技术的实施例中,被控端直接接收主控端发送的键盘输入事件,针对键盘输入事件进行响应,以正确获取到主控端发送的消息并进行输出,从而显示出第一显示内容。根据第一显示内容向主控端返回第一消息时,第一消息包括第一显示内容的显示参数和生成第一消息的输出编码,以使主控端可以基于该输出编码正确获取第一消息的数据内容,并以被控端的显示方式对第一显示内容进行显示,从而避免远程交互的双方因数据乱码而导致操作无法继续的问题,提升远程交互中的数据处理效率,用户体验好。
47.图1为本技术实施例的一种远程交互处理方法的流程图。如图1所示,本技术实施例的远程交互处理方法,应用于被控端,该方法包括以下步骤s100-s200:
48.s100,在与主控端连接成功的状态下,根据主控端发送的键盘输入事件显示第一
显示内容。
49.本步骤旨在接收主控端发送的键盘输入事件进行处理,以显示出第一显示内容。本步骤中,第一显示内容是显示于被控端的显示界面上的内容。被控端在与主控端链接成功的状态下,接收主控端发送的消息。主控端向被控端发送消息时,直接发送键盘输入事件,也就是主控端在监控到键盘输入信号时,即监控到键盘输入事件,直接将该键盘输入事件发送至被控端。被控端接收到键盘输入事件后,根据该键盘输入事件确认对应的按键,以进行输入并显示出相应的字符数据,从而显示出第一显示内容。
50.示例性的,主控端与被控端连接成功的状态下,通过控制台程序对被控端进行控制时,主控端在当前控制界面启动cmd程序,在监控到键盘输入信号时,即为监控到键盘输入事件,直接将该键盘输入信号发送至被控端。被控端在当前控制界面启动cmd程序,接收到键盘输入事件后,根据键盘输入信号确定对应的字符数据,调用writeconsoleinput函数把键盘事件写入到控制台界面,从而在cmd程序中实现输入,以显示出第一显示内容。
51.s200,根据所述第一显示内容向所述主控端返回第一消息,以使所述主控端根据所述第一消息以所述被控端的显示方式对所述第一显示内容进行相应地显示;其中,所述第一消息至少包括所述第一显示内容对应的显示参数和生成所述第一消息的输出编码方式。
52.本步骤旨在根据被控端显示的第一显示内容向主控端返回第一消息,以使主控端能以被控端的显示方式将第一显示内容的信息显示出来。本步骤中,第一消息基于第一显示内容生成,以将显示于被控端的界面上的内容同样地显示于主控端。为实现本步骤的目的,第一消息中包括生成第一消息的输出编码方式,主控端接收到第一消息时,可以基于该输出编码方式正确获取第一消息的内容。示例性的,被控端可以调用getconsoleoutputcp函数获取字符输出编码,以将获取的输出编码发送至主控端。在一些具体的应用中,被控端还可以调用getconsolecp函数获取被控端字符输入编码,将该输入编码发送至主控端,以使主控端在基于输出编码获取第一消息中的字符数据后,再将该字符数据根据该输入编码进行输入。第一消息中还包括第一显示内容对应的显示参数,从而主控端可以根据该显示参数进行设置,以根据第一消息进行显示时,显示方式与第一显示内容的显示方式保持一致。
53.在一些实施例中,所述显示参数至少包括:显示颜色和光标位置。本实施例中,显示颜色包括第一显示内容的字符数据的显示颜色,以在主控端接收到第一消息时,以同样的显示颜色进行显示。光标位置为被控端在进行字符输入后显示第一显示内容时光标所在的位置。由此,主控端根据第一消息进行显示后,光标所停留的位置和第一显示内容中光标所在的位置相同,从而主控端后续可以基于该位置接收新的消息进行输入后显示,与被控端的显示方式和光标位置一直保持统一。示例性的,被控端可以通过调用readconsoleoutput函数读取控制台界面cmd程序上显示的字符数据,以及字符的显示颜色。被控端还可以调用getconsolecursorinfo函数获取第一显示内容中光标的位置信息。
54.在一些实施例中,根据主控端发送的键盘输入事件显示第一显示内容之前,还包括:响应于所述主控端发送的设置编码事件进行输入编码设置,以基于设置后的输入编码方式响应所述键盘输入事件来显示所述第一显示内容。本实施例旨在对被控端的输入编码进行设置,以避免出现根据键盘输入事件输出的字符与该键盘输入事件在主控端对应的字
符的不一致的问题。本步骤中,在显示第一显示内容之前,基于主控端发送的设置编码事件进行输入编码设置。示例性的,主控端发送的键盘输入事件显示为

chcp 936+回车’时,则根据该指令调用setconsolecp函数进行输入编码设置,将输入编码设置为936对应的输入编码方式,从而在设置后的输入编码方式下接收主控端的键盘输入事件,以显示出第一显示内容。
55.在一些实施例中,显示第一显示内容之前,还包括:界定出用于显示所述第一显示内容的第一显示区域。本实施例旨在预先设置显示第一显示内容的区域的大小,以对第一显示内容进行完整地显示。示例性的,被控端启动cmd程序后,先调用setconsolescreenbuffersize函数对缓冲区的大小进行设置。缓冲区大小的具体数值可以根据技术人员的经验进行选择,通常情况下可以对接收到的消息可以进行完整显示即可,例如设置为可以容纳100行,本技术这里对缓冲区大小的具体数值不做具体设定。
56.本技术实施例还提供了应用于主控端的远程交互处理方法。如图2所示,本技术实施例的远程交互处理方法包括以下步骤s500-s700:
57.s500,在与被控端连接成功的状态下,获取键盘输入事件。
58.本步骤旨在获取主控端的键盘输入事件。本步骤中,主控端在与被控端接收成功的状态下,在控制台界面下监控到键盘输入信号时,即监控到键盘输入事件,此时将该键盘输入信号保存至缓存中,以便后续将该键盘输入信号发送至被控端。示例性的,主控端在与被控端接收成功的状态下,在控制台当前界面启动cmd程序,监控到键盘输入信号时,直接将该键盘输入信号保存至缓存中,以便后续程序进行使用。
59.在一些实施例中,为保持主控端与被控端的显示内容一致,主控端对所述键盘输入事件所对应的内容不显示。示例性的,主控端启动cmd程序后,调用setconsolemode包含enable_window_input标志,对该参数进行设置后,监控到键盘输入信号时,键盘输入信号对应的数据不会直接回显到cmd界面上,从而界面上仅会显示从被控端返回的信息。
60.s600,将所述键盘输入事件发送至所述被控端,以供所述被控端显示第一显示内容。
61.本步骤旨在从主控端将键盘输入事件发送至被控端,以供被控端输出第一显示内容。本步骤中,主控端将缓冲中存储的键盘输入信号发送至被控端。被控端接收到键盘输入信号时,通过确定对应的字符数据,输入到cmd程序中,呈现于cmd界面上,以显示出第一显示内容。被控端显示第一显示内容的具体实施方式可以参照前述实施例,在此不再赘述。
62.s700,获取所述被控端发送的第一消息,响应所述第一消息,以通过所述被控端的显示方式对所述第一显示内容进行相应地显示;
63.其中,所述第一消息由所述被控端根据所述第一显示内容生成,其至少包括所述第一显示内容对应的显示参数和生成所述第一消息的输出编码方式。
64.本步骤旨在接收被控端返回的第一消息进行相应地显示,显示方式与被控端保持一致。本步骤中,第一消息由被控端基于第一显示内容生成。在一些具体的示例中,被控端生成第一消息时,可以获取第一显示内容的字符数据,并获取第一显示内容的显示参数,例如,字符数据的显示颜色,以及光标所在的位置。同时获取第一显示内容的字符数据生成第一消息时的输出编码方式,以供主控端对第一消息进行解码,获取正确的字符数据。在一些具体的示例中,被控端还可以获取显示出第一显示内容时的输入编码方式,以在根据第一
消息获取正确的字符数据后,利用该输入编码方式进行输入,以避免显示出与第一显示内容不同的内容。
65.在一些实施例中,所述响应所述第一消息,以通过所述被控端的显示方式对所述第一显示内容进行相应地显示,包括:
66.根据所述输出编码方式对所述第一消息进行解码,根据解码后的第一消息基于所述显示参数呈现与第一显示内容相应的第二显示内容。
67.本实施例中,主控端根据第一消息进行显示,显示方式与第一显示内容保持一致。在一些具体的应用中,主控端根据第一消息中的输出编码对第一消息中的字符数据进行解码,获取第一显示内容对应的字符数据,再输入这些字符数据,以第一消息中的显示参数进行显示,从而以被控端的显示方式对第一显示内容的信息进行相应地显示。示例性的,主控端接收到第一消息后,调用getconsoleoutputcp函数获取字符输出编码,以对第一消息中的字符数据进行解码,获取与第一显示内容对应的字符数据。之后,主控端在cmd程序中输入该字符数据进行显示,此时调用writeconsoleoutput函数以进行输入,将该字符数据及其显示颜色写到cmd程序中进行显示;并调用setconsolecursorinfo设置光标位置。从而主控端以被控端显示第一显示内容的方式根据第一消息进行相应地显示。
68.在一些实施例中,为避免主控端显示的内容与被控端不一样问题,主控端响应第一消息还包括:
69.若所述第一消息包括设置编码事件,则响应所述设置编码事件进行输入编码设置;
70.基于所述输入编码方式根据解码后的所述第一消息进行输入,以呈现所述第二显示内容。
71.本实施例中,主控端根据被控端发送的设置编码时间进行输入编码设置,以利用与被控端相同的输入编码方式对字符数据进行输入,从而进一步避免出现显示内容与被控端不一致的问题。本实施例中,在根据第一消息进行显示之前,若第一消息中包括设置编码事件,则响应于该设置编码事件进行输入编码设置。具体实施方式可以参照前述实施例中被控端进行输入编码设置的实施方式,在此不再赘述。对输入编码进行设置后,主控端利用设置后的输入编码方式对解码后的第一消息进行输入,从而显示出的第二显示内容中,字符数据与第一显示内容的字符数据保持相同,避免了显示不一致的问题。
72.在一些具体的应用中,主控端响应所述第一消息之前,还可以预先设置用于对所述第一显示内容进行相应地显示的第二显示区域的大小,以根据第一消息对第一显示内容的数据信息进行完整地显示。示例性的,主控端启动cmd程序后,先对缓冲区的大小进行设置,缓冲区大小的具体数值可以根据被控端设置的数值进行设定,以与被控端的显示方式保持一致,具体在此不再赘述。
73.另一方面,本技术还提供了一种远程交互处理装置,图3示出了本技术实施例的远程交互处理装置的框图。如图3所示,本技术实施例的远程交互处理装置包括:
74.第一显示模块10,配置为在与主控端连接成功的状态下,根据主控端发送的键盘输入事件显示第一显示内容;
75.第一发送模块20,配置为根据所述第一显示内容向所述主控端返回第一消息,以使所述主控端根据所述第一消息以所述被控端的显示方式对所述第一显示内容进行相应
地显示;其中,所述第一消息至少包括所述第一显示内容对应的显示参数和生成所述第一消息的输出编码方式。
76.本技术实施例中的所述远程交互处理装置,通过其配置的功能模块能够实现本技术中任意实施例提到的远程交互处理方法的步骤。
77.另一方面,本技术还提供了另一种远程交互处理装置,图4示出了本技术实施例的远程交互处理装置的框图。如图4所示,本技术实施例的远程交互处理装置包括:
78.获取模块50,配置为在与被控端连接成功的状态下,获取键盘输入事件;
79.第二发送模块60,配置为将所述键盘输入事件发送至所述被控端,以供所述被控端显示第一显示内容;
80.第二显示模块70,配置为获取所述被控端发送的第一消息,响应所述第一消息,以通过所述被控端的显示方式对所述第一显示内容进行相应地显示;
81.其中,所述第一消息由所述被控端根据所述第一显示内容生成,其至少包括所述第一显示内容对应的显示参数和生成所述第一消息的输出编码方式。
82.本技术实施例中的所述远程交互处理装置,通过其配置的功能模块能够实现本技术中任意实施例提到的远程交互处理方法的步骤。
83.此外,尽管已经在本文中描述了示例性实施例,其范围包括任何和所有基于本技术的具有等同元件、修改、省略、组合(例如,各种实施例交叉的方案)、改编或改变的实施例。权利要求书中的元件将被基于权利要求中采用的语言宽泛地解释,并不限于在本说明书中或本技术的实施期间所描述的示例,其示例将被解释为非排他性的。因此,本说明书和示例旨在仅被认为是示例,真正的范围和精神由以下权利要求以及其等同物的全部范围所指示。
84.以上描述旨在是说明性的而不是限制性的。例如,上述示例(或其一个或更多方案)可以彼此组合使用。例如本领域普通技术人员在阅读上述描述时可以使用其它实施例。另外,在上述具体实施方式中,各种特征可以被分组在一起以简单化本技术。这不应解释为一种不要求保护的公开的特征对于任一权利要求是必要的意图。相反,本技术的主题可以少于特定的公开的实施例的全部特征。从而,以下权利要求书作为示例或实施例在此并入具体实施方式中,其中每个权利要求独立地作为单独的实施例,并且考虑这些实施例可以以各种组合或排列彼此组合。本技术的范围应参照所附权利要求以及这些权利要求赋权的等同形式的全部范围来确定。
85.以上对本技术多个实施例进行了详细说明,但本技术不限于这些具体的实施例,本领域技术人员在本技术构思的基础上,能够做出多种变型和修改实施例,这些变型和修改都应落入本技术所要求保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1