CN116860358B - 执行注入代码的方法、系统、设备及介质 - Google Patents

执行注入代码的方法、系统、设备及介质 Download PDF

Info

Publication number
CN116860358B
CN116860358B CN202311107856.4A CN202311107856A CN116860358B CN 116860358 B CN116860358 B CN 116860358B CN 202311107856 A CN202311107856 A CN 202311107856A CN 116860358 B CN116860358 B CN 116860358B
Authority
CN
China
Prior art keywords
configuration information
real
code
current operation
executing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311107856.4A
Other languages
English (en)
Other versions
CN116860358A (zh
Inventor
刘现坤
王鲲
陈飞
邹懋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vita Technology Beijing Co ltd
Original Assignee
Vita Technology Beijing Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Vita Technology Beijing Co ltd filed Critical Vita Technology Beijing Co ltd
Priority to CN202311107856.4A priority Critical patent/CN116860358B/zh
Publication of CN116860358A publication Critical patent/CN116860358A/zh
Application granted granted Critical
Publication of CN116860358B publication Critical patent/CN116860358B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

本申请涉及计算机技术领域,公开了一种执行注入代码的方法、系统、设备及介质。该方法包括:读取注入代码的当前操作对应的配置信息,所述配置信息包括表征实时控制所述注入代码的当前操作的实时控制信息;基于所述实时控制信息,发送等待控制请求;接收控制台程序端响应于所述等待控制请求发送的实时控制指令;根据所述实时控制指令,执行注入代码的当前操作。本申请提供了一种新的执行注入代码的方法,修改配置信息简单灵活。

Description

执行注入代码的方法、系统、设备及介质
技术领域
本申请涉及计算机技术领域,更具体地,涉及一种执行注入代码的方法、执行注入代码的系统、电子设备以及计算机可读存储介质。
背景技术
在一些开发、调试、部署场景中,利用代码注入技术,可以将新开发模块中的代码(即注入代码)注入到既有程序中执行。在这些场景中,用户希望对注入代码的执行方式进行一定程度的控制。
目前执行注入代码的方案是受控程序(即注入了注入代码的既有程序)在执行注入代码前,一次性读取注入代码中所有操作的执行方式的配置信息,然后按照该配置信息执行注入代码中的每一个操作。
当配置信息需要修改时,受控程序需要重新读取修改后的配置信息。因此,用户需要进行如下操作:关闭受控程序和控制台程序(即控制注入代码执行的程序)等相关程序、修改配置信息以及重新启动相关程序,才能使受控程序可以根据修改后的配置信息执行注入代码。整个操作过程繁琐。尤其是,当受控程序是程序树结构时,修改配置信息将更加麻烦。
发明内容
本申请的一个目的是提供一种用于执行注入代码的新技术方案。
根据本申请的第一方面,提供了一种执行注入代码的方法,包括:读取注入代码的当前操作对应的配置信息,所述配置信息包括表征实时控制所述注入代码的当前操作的实时控制信息;基于所述实时控制信息,发送等待控制请求;接收控制台程序端响应于所述等待控制请求发送的实时控制指令;根据所述实时控制指令,执行注入代码的当前操作。
根据本申请的第二方面,提供了一种执行注入代码的系统,包括:控制台程序端和受控程序端,受控程序端,用于读取注入代码的当前操作对应的配置信息,所述配置信息包括表征实时控制所述注入代码的当前操作的实时控制信息;基于所述实时控制信息,发送等待控制请求;接收控制台程序端响应于所述等待控制请求发送的实时控制指令;根据所述实时控制指令,执行注入代码当前操作;控制台程序端,用于接收所述受控程序端发送的等待控制请求,并响应于所述等待控制请求发送实时控制指令。
根据本申请的第三方面,提供了一种电子设备,包括如本申请第二方面中任一项所述的执行注入代码的系统,或,包括存储器和处理器,所述存储器用于存储计算机指令,所述处理器用于从所述存储器中调用所述计算机指令,以执行如本申请第一方面中任一项所述的执行注入代码的方法。
根据本申请的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现如本申请第一方面中任一项所述的执行注入代码的方法。
本申请实施例提供了一种新的执行注入代码的方法。本申请实施例当注入代码的当前操作对应的配置信息包括表征实时控制所述注入代码的当前操作的实时控制信息时,基于所述实时控制信息,发送等待控制请求;并接收控制台程序端响应于所述等待控制请求发送的实时控制指令;然后根据所述实时控制指令,执行注入代码的当前操作。这样当想要修改当前操作的配置信息时,只需要再次执行受控程序中的注入代码即可,而无需关闭再重启控制端程序和受控端程序,操作过程简单。
此外,当注入代码中某些操作的执行方式不确定或不想固定时,可以通过实时控制的方式实现,更加灵活。
此外,本申请实施例通过控制台程序端和受控程序端的实时交互控制,使得用户可以实时感知对注入代码的具体控制操作。
本申请实施例通过以下参照附图对本申请的示例性实施例的详细描述,本申请的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且连同其说明一起用于解释本申请的原理。
图1是本申请实施例提供的一种执行注入代码的方法的示意性流程图。
图2是本申请实施例提供的受控程序端程序执行的示意性流程图。
图3是本申请实施例提供的当前操作为显示图片时受控程序执行的示意性流程图。
图4是本申请实施例提供的另一种执行注入代码的方法的示意性流程图。
图5是本申请实施例提供的执行注入代码的系统的示意性框图。
图6是本申请实施例提供的电子设备的示意性框图。
具体实施方式
现在将参照附图来详细描述本申请的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本申请及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
在一些开发、调试、部署场景中,利用代码注入技术,可以将新开发模块(即注入模块)中的代码(即注入代码)注入到既有程序中执行。在这些场景中,用户希望对注入代码中具体每个操作(或功能)的执行方式进行一定程度的控制。
作为一个示例,注入代码的具体操作为“显示图片”。用户希望可以控制“显示图片”操作的执行方式,例如正常显示图片,或者不显示图片,又或者显示加水印的图片。
作为另一个示例,注入代码的具体操作为“执行新程序1”。用户希望控制“执行新程序1”的执行方式,例如执行新程序1,或者不执行新程序1,又或者执行新程序1并注入代码(即执行新程序1,并将当前程序的注入代码注入到新程序1中)。
目前执行注入代码执行的方案是受控程序(即注入了注入代码的既有程序)在执行注入代码前,一次性读取注入代码中所有操作的执行方式的配置信息,然后按照该配置信息执行注入代码中的每一个操作。
当配置信息需要修改时,受控程序需要重新读取修改后的配置信息。因此,用户需要进行如下操作:关闭受控程序和控制台程序(即控制注入代码执行的程序)等相关程序、修改配置信息以及重新启动相关程序,才能使受控程序可以根据修改后的配置信息执行注入代码。整个操作过程繁琐。尤其是,当受控程序是程序树结构时,修改配置信息将更加麻烦。
本申请实施例提供了一种新的用于执行注入代码的方法。该方法应用于受控程序端,如图1所示,该方法包括步骤S110~S140。
步骤S110,读取注入代码的当前操作对应的配置信息。
在本申请实施例中,当前操作是指当前即将要执行但未执行的操作。
注入代码的当前操作可以理解为注入代码当前要实现的功能。例如,当前操作可以是“执行新程序”,也可以是“显示图片”。
配置信息可以包括表征实时控制注入代码的当前操作的实时控制信息,也可以包括表征通过预设配置信息控制注入代码的当前操作的预设控制信息。
本申请实施例中的实时控制是控制台程序端和受控程序端之间交互式的实时控制,是控制台程序端基于用户实时输入的信息来控制受控程序端注入代码的执行。用户实时输入的信息可以表征当前操作的任意一种执行方式。例如,用户实时输入的信息可以是“显示加水印图片”,也可以是“不显示图片”,还可以是“正常显示图片”等。
通过预设配置信息控制为基于预先设定的注入代码当前操作的具体一种执行方式来控制。可以理解,当注入代码当前操作的配置信息为预设控制信息时,受控程序端会按照预设控制信息中的具体的执行方式执行。以当前操作为“显示图片”为例,预设控制信息是“显示加水印图片”、“不显示图片”、“正常显示图片”任意一种。
注入代码的配置信息可以以键值对形式存储在配置文件中。注入代码的每一个操作都对应一个配置值。可以以注入代码中的每个操作作为一个键,每个操作对应的一个控制信息作为该键对应的配置值。本申请实施例对配置信息的存储形式不作具体限定。
配置信息中的配置值,即实时控制信息或预设控制信息,可以是直接以文字信息的形式体现,也可以是根据预先设定好的映射关系,以字母、数字、或者字母和数字的组合等形式来体现,还可以是二者的结合。
本申请实施例对实时控制信息和预设控制信息的体现形式不作具体限定。同时,对控制信息的表征内容和控制信息的具体值之间的映射关系也不作具体限定。
作为一个示例,可以以数字0表征注入代码的操作需要实时控制,以数字1表征执行注入代码的操作,以数字2表征拒绝执行注入代码的操作,以字母A表征执行注入代码的操作并注入新的代码。
步骤S120,基于实时控制信息,发送等待控制请求。
当受控程序执行到当前操作对应的注入代码时,若读取到的当前操作对应的配置信息为实时控制信息,则受控程序端向控制台程序端发送等待控制请求。等待控制请求包括需要控制的当前操作的信息。例如,可以包括当前操作的名称或当前操作的ID,也可以包括当前操作的当前步骤的名称等。
步骤S130,接收控制台程序端响应于等待控制请求发送的实时控制指令。
实时控制指令可以包括基于用户输入的信息确定的注入代码当前操作的具体执行方式的信息,也可以包括当前操作的名称或者ID等信息。
在控制台程序端接收到受控程序端发送的等待控制请求后,控制台程序端的输出模块向用户展示当前等待控制请求,并提示用户输入实时控制信息(即用户输入的当前操作具体执行方式的信息)。控制台程序端的输入模块接收到用户输入的实时控制信息,并将该实时控制信息转化为实时控制指令后,发送至受控程序端。
步骤S140,根据实时控制指令,执行注入代码的当前操作。
作为一个示例,预先设定注入代码的当前操作“显示图片”的配置信息表征实时控制。当受控程序执行到当前操作对应的代码时,就需要根据用户实时输入的信息来控制当前操作对应的代码的执行。
若用户输入的控制注入代码当前操作的控制信息为执行当前操作或者该执行方式映射的配置值1,控制台程序端将包含该控制信息的实时控制指令发送至受控程序端。受控程序端根据接收的实时控制指令,执行“显示图片”的操作。
若用户输入的控制当前操作的控制信息为执行该代码且注入新代码(例如是实现添加水印的代码)或者该执行方式映射的配置值2,控制台程序端将包含该控制信息的实时控制指令发送至受控程序端。受控程序端根据接收的实时控制指令,执行“显示水印图片”的操作。
为了便于理解,如图2所示,本申请实施例提供了受控程序端程序执行的示意性流程图。
当受控程序执行到注入代码的当前操作时,读取注入代码的当前操作对应的配置信息。若当前操作对应的配置信息为“预设控制”,则受控程序端执行相应的预设控制指令,并在执行完毕后返回下一个新操作。
若当前操作对应的配置信息为“实时控制”,则受控程序端发送等待控制请求。控制台程序端接收到该等待控制请求后,提示用户输入相应信息,并将基于用户输入的信息确定的实时控制指令发送给受控程序端。受控程序端接收该实时控制指令,并按照该实时控制指令执行当前操作。受控程序端执行完当前操作后,继续执行下一个新操作,直至受控程序结束。
以当前操作为“显示图片”为例,如图3所示,本申请实施例提供了当前操作为显示图片时受控程序执行的示意性流程图。
当受控程序执行到注入代码的当前操作时,读取注入代码的当前操作对应的配置信息。若当前操作对应的配置信息为预设控制信息“显示加水印图片”,则受控程序执行添加水印并显示图片的操作。若当前操作对应的配置信息为预设控制信息“不显示图片”,则受控程序不执行显示图片的操作。若当前操作对应的配置信息为预设控制信息“正常显示图片”,则受控程序正常执行显示图片的操作。若当前操作对应的配置信息为“实时控制”,则受控程序执行本申请实施例的实时控制方法。受控程序执行完当前操作后,继续执行下一个新操作,直至受控程序执行结束。
本申请实施例提供了一种新的执行注入代码的方法。在本申请实施例中,当注入代码的当前操作对应的配置信息包括表征实时控制所述注入代码的当前操作的实时控制信息时,基于该实时控制信息,发送等待控制请求;并接收控制台程序端响应于等待控制请求发送的实时控制指令;然后根据该实时控制指令,执行注入代码的当前操作。这样当想要修改当前操作的配置信息时,只需要再次执行受控程序中的注入代码即可,而无需关闭再重启控制端程序和受控端程序,操作过程简单。
此外,当注入代码中某些操作的执行方式不确定或不想固定时,可以通过实时控制的方式实现,更加灵活。
此外,本申请实施例通过控制台程序端和受控程序端的实时交互控制,使得用户可以实时感知对注入代码的具体控制操作。
在一些实施例中,如图4所示,步骤S110可以包括步骤S112~S113。
步骤S112,接收注入代码的全局配置信息。
全局配置信息可以包括注入代码所有操作以及与每个操作对应的控制信息。当然全局配置信息也可以包括其它信息,例如操作ID。此处不作具体限定。作为一个示例,表1示出了全局配置信息的部分信息,以示意性地反映全局配置信息。
表1
注入代码的全局配置信息可以由控制台程序端向受控程序端下发。作为一个示例,控制台程序端选择目标程序后,在目标程序内部执行代码注入流程,将注入代码注入到目标程序中。在控制台程序端接收到受控程序端完成代码注入的指令后,控制受控程序端向受控程序端下发注入代码的全局配置信息。受控程序端接收并保存该全局配置信息。
作为另一个示例,当全局配置信息需要修改时,控制受控程序端向受控程序端下发修改后的全局配置信息。
在一些实施例中,控制台程序端需要控制多个受控程序中相同注入代码的执行。此时,控制台程序端在接收到各个受控程序端完成代码注入的指令后,向各个受控程序端下发注入代码的全局配置信息。
控制台程序端可以为不同受控程序下发相同的全局配置信息,也可以为不同受控程序下发不同的全局配置信息。也就是说,不同受控程序中相同注入代码可以有相同的全局配置信息,也可以是不同的全局配置信息。
本申请实施例通过控制台程序端下发全局配置信息的方式,可以克服现有技术中不同受控程序注入相同代码时只能用相同的全局配置信息的缺陷,一定程度上增加了灵活性。
步骤S113,根据全局配置信息,读取注入代码的当前操作对应的配置信息。
作为一个示例,控制台程序端下发的全局配置信息如表1所示,当受控程序执行到注入代码的操作1时,从全局配置信息中读取到的操作1的配置信息为0-实时控制。
在一些实施例中,步骤S110还可以包括步骤S115~S116。
步骤S115,在注入代码的全局配置信息被修改的情况下,接收控制台程序端下发的修改后的全局配置信息。
初始的注入代码的全局配置信息可以是从静态配置文件中直接读取,也可以由控制台程序端下发。
当注入代码的全局配置信息需要修改时,本申请实施例由控制台程序端向受控程序下发修改后的全局配置信息,受控程序端接收到修改后的全局配置信息后,替换初始的全局配置信息。此时,修改后的全局配置信息开始生效。
步骤S116,根据修改后的全局配置信息,读取注入代码的当前操作对应的配置信息。
本申请实施例提供的修改全局配置信息的方法,无需关闭并重启相关程序,就可以根据修改后的全局配置信息,读取注入代码当前操作对应的配置信息,实时性强,操作过程简单。
在一些实施例中,在步骤S140之后,本申请的执行注入代码的方法还包括步骤S150。
步骤S150,向控制台程序端发送控制注入代码执行的结果,以使在控制台程序端展示控制注入代码执行的结果。
在这些实施例中,用户可以通过控制台程序端展示的控制注入代码执行的结果,实时感知具体控制操作,并能及时获取具体控制结果。
在一些实施例中,注入代码的一个操作可以包括多个步骤。例如,“显示图片”操作中步骤1为“选择执行方式为添加水印显示”,步骤2为“指定添加水印的参数”。水印的参数例如可以是水印添加的位置、水印的字体、颜色等等。
当当前操作的配置信息是实时控制时,受控程序端可以一次性发送所有步骤的等待控制请求,并由控制台程序端一次性发送所有步骤的实时控制指令。受控程序端也可以分多次发送每个步骤的等待控制请求,并由控制台程序端分别发送每个步骤的实时控制指令。
优选地,步骤S140可以包括步骤S142。
步骤S142,在注入代码的当前操作的多个步骤未执行完毕的情况下,继续执行发送等待控制请求的步骤。
如图2所示,当控制端接收执行结果后,判断实时控制是否结束,即当前操作的多个步骤是否执行完毕。若实时控制结束,则继续执行下一个新操作。若实时控制没有结束,则受控程序端继续向控制台程序端发送等待控制请求,继续执行实时控制处理流程。
作为一个示例,当前操作为“显示图片”操作,当受控程序执行完步骤1后,继续向控制台程序端发送等待控制请求,控制台程序端提示用户输入添加水印的参数,并将基于用户输入的信息确定的实时控制指令发送给受控程序端,受控程序端接收到该实时控制指令,根据该实时控制指令,继续执行步骤2。
本申请实施例通过在控制台程序端和受控程序端之间多次实时交互控制,相比一次性发送所有步骤的指令,更灵活。
本申请实施例还提供了一种执行注入代码的系统。如图5所示,该系统1000包括控制台程序端1100和受控程序端1200。
受控程序端1200,用于读取注入代码的当前操作对应的配置信息。该配置信息包括表征实时控制注入代码的当前操作的实时控制信息;基于该实时控制信息,发送等待控制请求;接收控制台程序端1100响应于等待控制请求发送的实时控制指令;根据该实时控制指令,执行注入代码当前操作。
控制台程序端1100,用于接收受控程序端1200发送的等待控制请求,并响应于等待控制请求发送实时控制指令。
该系统1000还包括通信模块。通信模块作为通信组件,负责控制台程序端1100和受控程序端1200之间的通信。在一些实施例中,负责控制台程序端1100和多个受控程序端1200之间的通信。
在一些实施例中,受控程序端1200还用于接收注入代码的全局配置信息,并根据全局配置信息,读取注入代码的当前操作对应的配置信息。控制台程序端1100还用于向受控程序端1200下发全局配置信息。
在一些实施例中,控制台程序端1100还可以包括输入模块和输出模块。输入模块可以用于接收用户输入的控制信息。输出模块可以用于向用户展示控制注入代码执行的如下信息中任意一项:控制请求信息、控制执行的结果信息,还可以用于向用户展示其它控制信息、运行信息、交互信息、查询信息等。例如,对“注入代码”行为全局控制的信息,如“启动程序A执行注入代码a”,“启动程序B不注入代码”,“拦截对程序C的启动”。又如,对“注入代码”行为的实时控制信息,如修改特定操作的执行参数。又如,特定受控程序特定时间内“注入代码”的执行的查询信息。
在一些实施例中,控制台程序端1100还包括统计模块。该统计模块用于统计受控程序端1200的启用操作和对注入代码执行的控制操作。在这些实施例中,控制台程序端1100的输入模块还可以用于接收用户输入的查询信息。
本申请实施例通过控制台程序端的统计模块,可以对“注入代码”操作进行监控、统计、以及查询、审计。通过“配置信息”可以设定对“注入代码”中特定操作的执行及控制等行为进行监控、统计、以及查询、审计。
本申请实施例还提供了一种电子设备。该电子设备2000包括如上述任一项执行注入代码的系统1000,或,如图6所示,包括存储器2100和处理器2200,存储器2100用于存储计算机指令,处理器2200用于从存储器2100中调用计算机指令,以执行如上述任一项实施例中的执行注入代码的方法。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序在被处理器执行时实现如上述任一项实施例中的执行注入代码的方法。
本申请可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本申请的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。
这里参照根据本申请实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本申请的范围由所附权利要求来限定。

Claims (11)

1.一种执行注入代码的方法,其特征在于,包括:
读取注入代码的当前操作对应的配置信息,所述配置信息包括表征实时控制所述注入代码的当前操作的实时控制信息;
基于所述实时控制信息,发送等待控制请求;
接收控制台程序端响应于所述等待控制请求发送的实时控制指令;
根据所述实时控制指令,执行注入代码的当前操作。
2.根据权利要求1所述的执行注入代码的方法,其特征在于,所述读取注入代码的当前操作对应的配置信息,包括:
接收注入代码的全局配置信息;
根据所述全局配置信息,读取所述注入代码的当前操作对应的配置信息。
3.根据权利要求1所述的执行注入代码的方法,其特征在于,所述读取注入代码的当前操作对应的配置信息,还包括:
在注入代码的全局配置信息被修改的情况下,接收控制台程序端下发的修改后的全局配置信息;
根据所述修改后的全局配置信息,读取所述注入代码的当前操作对应的配置信息。
4.根据权利要求1所述的执行注入代码的方法,其特征在于,在所述根据所述实时控制指令,执行注入代码的当前操作之后,所述方法还包括:
向控制台程序端发送注入代码执行的结果,以使在所述控制台程序端展示所述结果。
5.根据权利要求1所述的执行注入代码的方法,其特征在于,所述注入代码的当前操作包括多个步骤,
所述根据所述实时控制指令,执行注入代码的当前操作,包括:
在注入代码的当前操作的所述多个步骤未执行完毕的情况下,继续执行所述发送等待控制请求的步骤。
6.一种执行注入代码的系统,其特征在于,包括:控制台程序端和受控程序端,
受控程序端,用于读取注入代码的当前操作对应的配置信息,所述配置信息包括表征实时控制所述注入代码的当前操作的实时控制信息;基于所述实时控制信息,发送等待控制请求;接收控制台程序端响应于所述等待控制请求发送的实时控制指令;根据所述实时控制指令,执行注入代码当前操作;
控制台程序端,用于接收所述受控程序端发送的等待控制请求,并响应于所述等待控制请求发送实时控制指令。
7.根据权利要求6所述的执行注入代码的系统,其特征在于,
所述受控程序端还用于接收注入代码的全局配置信息,并根据所述全局配置信息,读取所述注入代码的当前操作对应的配置信息;
所述控制台程序端还用于向所述受控程序端下发全局配置信息。
8.根据权利要求6所述的执行注入代码的系统,其特征在于,
所述控制台程序端还用于向用户展示注入代码执行的如下信息中任意一项:控制请求信息、注入代码执行的结果信息。
9.根据权利要求6所述的执行注入代码的系统,其特征在于,所述控制台程序端还包括统计模块,所述统计模块用于统计所述受控程序端的启用操作和对所述注入代码执行的控制操作。
10.一种电子设备,其特征在于,包括如权利要求6-9中任一项所述的执行注入代码的系统,
或,
包括存储器和处理器,所述存储器用于存储计算机指令,所述处理器用于从所述存储器中调用所述计算机指令,以执行如权利要求1-5中任一项所述的执行注入代码的方法。
11.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序在被处理器执行时实现如权利要求1-5中任一项所述的执行注入代码的方法。
CN202311107856.4A 2023-08-30 2023-08-30 执行注入代码的方法、系统、设备及介质 Active CN116860358B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311107856.4A CN116860358B (zh) 2023-08-30 2023-08-30 执行注入代码的方法、系统、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311107856.4A CN116860358B (zh) 2023-08-30 2023-08-30 执行注入代码的方法、系统、设备及介质

Publications (2)

Publication Number Publication Date
CN116860358A CN116860358A (zh) 2023-10-10
CN116860358B true CN116860358B (zh) 2024-01-02

Family

ID=88228897

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311107856.4A Active CN116860358B (zh) 2023-08-30 2023-08-30 执行注入代码的方法、系统、设备及介质

Country Status (1)

Country Link
CN (1) CN116860358B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111273899A (zh) * 2020-01-17 2020-06-12 北京达佳互联信息技术有限公司 代码处理方法、装置、电子设备及存储介质
CN114327481A (zh) * 2021-12-30 2022-04-12 北京百度网讯科技有限公司 代码处理方法、装置、设备以及存储介质
CN114610406A (zh) * 2022-03-02 2022-06-10 维塔科技(北京)有限公司 代码注入方法、装置、存储介质及电子设备
CN115391770A (zh) * 2021-05-25 2022-11-25 北京字跳网络技术有限公司 程序监测方法、装置、电子设备及计算机可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10241765B2 (en) * 2016-10-31 2019-03-26 International Business Machines Corporation Apparatuses, methods, and computer program products for reducing software runtime

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111273899A (zh) * 2020-01-17 2020-06-12 北京达佳互联信息技术有限公司 代码处理方法、装置、电子设备及存储介质
CN115391770A (zh) * 2021-05-25 2022-11-25 北京字跳网络技术有限公司 程序监测方法、装置、电子设备及计算机可读存储介质
CN114327481A (zh) * 2021-12-30 2022-04-12 北京百度网讯科技有限公司 代码处理方法、装置、设备以及存储介质
CN114610406A (zh) * 2022-03-02 2022-06-10 维塔科技(北京)有限公司 代码注入方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN116860358A (zh) 2023-10-10

Similar Documents

Publication Publication Date Title
CN107729246B (zh) 针对目标应用的辅助测试方法、装置、设备及存储介质
CN106294770A (zh) 信息分享方法、装置及终端
US20170083495A1 (en) Method for Modifying Webpage and Apparatus for Modifying Webpage
CN109684188B (zh) 测试方法和装置
US11954536B2 (en) Data engine
CN103678704A (zh) 一种基于图片信息的识图方法、系统、设备及装置
US20150317405A1 (en) Web Page Variation
CN111984239B (zh) 一种页面配置方法、装置、服务器及存储介质
CN112487331A (zh) 页面生成方法和装置、存储介质和电子设备
CN113032083A (zh) 数据显示方法、装置、电子设备及介质
CN111767109A (zh) 基于终端应用的h5页面显示方法、设备及可读存储介质
CN112231544A (zh) 结合rpa与ai的rpa机器人的搜索方法、装置和设备
CN107885872B (zh) 用于生成信息的方法和装置
US10171443B2 (en) Displaying the accessibility of hyperlinked files
CN116860358B (zh) 执行注入代码的方法、系统、设备及介质
US8245182B2 (en) Class selectable design sharing
CN112130908B (zh) 设置用户引导的方法及装置
CN115658063A (zh) 页面信息生成方法、装置、设备及存储介质
CN113590564B (zh) 数据存储方法、装置、电子设备及存储介质
CN115129444A (zh) 一种应用程序显示方法、装置及计算机可读存储介质
CN115291759A (zh) 信息处理方法、装置及电子设备
EP3425510A1 (en) Automated testing method for application program user interface, electronic device, system, and storage medium
CN111176982B (zh) 一种测试界面生成方法和装置
US10607391B2 (en) Automated virtual artifact generation through natural language processing
CN113326079A (zh) 服务版本切换方法、切换装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant