CN111506357A - 一种动态库自动加载方法、系统及应用 - Google Patents

一种动态库自动加载方法、系统及应用 Download PDF

Info

Publication number
CN111506357A
CN111506357A CN202010124148.1A CN202010124148A CN111506357A CN 111506357 A CN111506357 A CN 111506357A CN 202010124148 A CN202010124148 A CN 202010124148A CN 111506357 A CN111506357 A CN 111506357A
Authority
CN
China
Prior art keywords
function
type
dynamic library
library
name
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.)
Pending
Application number
CN202010124148.1A
Other languages
English (en)
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.)
Hunan University
Original Assignee
Hunan University
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 Hunan University filed Critical Hunan University
Priority to CN202010124148.1A priority Critical patent/CN111506357A/zh
Publication of CN111506357A publication Critical patent/CN111506357A/zh
Pending legal-status Critical Current

Links

Images

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/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种动态库自动加载方法及系统,属于计算机技术领域,用于解决目前动态库人工服务化封装开发成本及维护成本高、标准混乱的技术问题,采用的技术方案为:对动态库的名称、路径以及动态库中函数的属性进行描述,形成函数描述文件;读取函数描述文件并进行解析,获得动态库内各函数的属性,建立函数名称/类型映射表;同时获得待加载动态库的名称和路径,对动态库进行预加载。本发明的方法及系统均具有灵活性高、操作简便、开发成本及维护成本低等优点。

Description

一种动态库自动加载方法、系统及应用
技术领域
本发明主要涉及计算机技术领域,特指一种动态库自动加载方法、系统及应用。
背景技术
随着工业自动化进程不断发展,工业现场中使用机器人的场景越多越多。不同型号的机器人控制方法均有所差异。目前通行的做法是,厂商提供机器人控制的SDK(软件开发工具包)一般是动态链接库形式,供上位机用户调用,动态库中厂商通过套接字形式与机器人本地交互实现对机器人的控制。这种方式将会导致:如果多个用户需要与某台机器人进行信息交互时,均需要配置安装相应动态库环境。
随着面向服务架构(Service Oriented Architecture,SOA)的应用逐渐成熟,为机器人功能灵活拓展提供一个新的思路。利用SOA架构的粗粒度、开放式、松耦合的服务结构特点,提升分布式机器人系统的灵活性,实现工业机器人软件的敏捷开发。
动态库的服务化封装,目的是将本地封装的函数功能库映射互联网上,以服务形式供更多用户使用,降低分布式系统中各节点的耦合性。目前基于动态库的服务化封装还是依靠人工,该过程可以分解成两个部分:服务发布、动态库加载。服务的发布有很多框架工具,例如c++下的gsoap、java ee中Axis等等。动态库的加载则有两种方式,静态调用与动态调用。对于一个已知动态库的服务化封装流程如下:
步骤1:查看动态库的接口文档,根据文档设计服务接口;
步骤2:设计服务框架,生成服务发布代码;
步骤3:库中函数的加载映射;
步骤4:将动态库中各函数嵌入服务框架中。
由于每个库中函数的名称型式都有一定的差异,现行的动态库服务化封装主要还是依靠人工,首先需要人工设计库中每个函数的接口,然后映射到库中具体的函数。
上述步骤都需要技术人员参与深度参与,从而导致现有的动态库人工服务化封装存在以下不足:
1、从技术要求来说,服务化封装对要求开发人员对网络开发有较深入的了解,需要针对库中的接口设计相应服务接口,增加系统开发成本,同时手动服务化封装复杂且工作量较大,存在技术风险;
2、由于涉及代码编写,后期还需要专人维护升级,增加后期维护成本;
3、不同团队实现的服务封装标准难免存在差异,各种自定义标准导致更加混乱(不同厂商定义各自标准)。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种灵活性高、操作简便、成本低的动态库自动加载方法、系统及应用。
为解决上述技术问题,本发明提出的技术方案为:
一种动态库自动加载方法,包括步骤:
1)对动态库的名称、路径以及动态库中函数的属性进行描述,形成函数描述文件;
2)读取函数描述文件并进行解析,获得动态库内各函数的属性,建立函数名称/类型映射表;同时获得待加载动态库的名称和路径,对动态库进行预加载。
作为上述技术方案的进一步改进:
在步骤1)中,所述函数的属性包括函数名称、函数类型、函数参数或函数功能中的一种或多种。
在步骤1)中,所述函数类型的定义方法如下:
1.1)对函数类型进行简化,其中函数类型是基于函数的函数与返回值;
1.2)基于简化的函数类型,对函数类型进行定义:返回值类型_参数1类型|参数2类型|参数3类型|…,其中下划线前是函数返回值类型,下划线后面为第1,2,3…参数的类型。
在步骤1.1)中,char缩写为C;short缩写为S;int缩写为I;float缩写为F;double缩写为D;char*缩写为[C;short*缩写为[S;int*缩写为[I;float*缩写为[F;double*缩写为[D;unsigned缩写为U。
在步骤1)中,所述函数描述文件通过json语法将库提供商、库名称、库路径、库中函数名、函数类型、函数参数以及函数功能进行组织而得到。
在步骤2)之后,还包括步骤3),根据调用函数从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数类型以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。
本发明还公开了一种动态库自动加载系统,包括
文件解析模块,用于对预先形成的函数描述文件进行解析,获得动态库内各函数的属性,建立函数名称/类型映射表;
动态库预加载模块,用于从函数描述文件中获得待加载动态库的名称和路径,对动态库进行预加载。
作为上述技术方案的进一步改进:
还包括函数解析调用模块,用于根据调用函数从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数名称以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。
还包括函数类型库,用于加载各种预设函数类型指针以及该类函数参数解析方法。
本发明进一步公开了一种动态库自动加载系统的应用,具体为:
获取函数列表信息请求后,读取函数描述文件并进行解析;
接收需要调用的函数名称以及对应参数;
从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数类型以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。
与现有技术相比,本发明的优点在于:
本发明的动态库自动加载方法及系统,通过对动态库的描述,实现对任意指定动态库中函数的加载,并且基于服务化技术将本地库函数接口发布在总线上,自动地实现各种已有功能库函数的服务化;此外,由于可以让用户无需开发编译工作,只需对已有的库中函数进行描述,即可自动将本地函数库映射到网络上供其他设备用户使用,在提高灵活性的同时降低工作复杂度,大大提高生产效率,降低综合成本;另外通过标准化组件工具实现,服务接口标准也随之规范。
附图说明
图1为本发明的方法在实施例的方法流程图。
图2为本发明的系统在实施例的方框结构图。
图3为本发明的动态库信息描述示例图。
图4为本发明的参数描述格式示例图。
具体实施方式
以下结合说明书附图和具体实施例对本发明作进一步描述。
如图1和图2所示,本实施例的动态库自动服务化封装方法,包括步骤:
1)对动态库的名称、路径以及动态库中函数的属性进行描述,形成函数描述文件;
2)读取函数描述文件并进行解析,获得动态库内各函数的属性,建立函数名称/类型映射表;同时获得待加载动态库的名称和路径,对动态库进行预加载。
本实施例中,在步骤1)中,所述函数的属性包括函数名称、函数类型、函数参数和函数功能。其中函数类型的定义方法如下:
1.1)对函数类型进行简化,其中函数类型是基于函数的函数与返回值;
1.2)基于简化的函数类型,对函数类型进行定义:返回值类型_参数1类型|参数2类型|参数3类型|…,其中下划线前是函数返回值类型,下划线后面为第1,2,3…参数的类型。
在步骤1)中,所述函数描述文件通过json语法将库提供商、库名称、库路径、库中函数名、函数类型、函数参数以及函数功能进行组织而得到。当然,对于动态库函数的描述,不限定json格式描述,可以是任意约定格式,该描述主要目标是建立函数名称与函数类型的映射。另外参数列表的描述,不限定json格式,可以使任意约定的格式,该字段主要是描述清楚各参数的类型与值字符串型式。
本实施例中,在步骤2)之后,还包括步骤3),根据调用函数从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数类型以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。其中动态库在步骤2)中进行了预加载,能够减少后续动态库调用时间,提高调用效率。
本发明还公开了一种动态库自动加载系统,包括
文件解析模块,用于对预先形成的函数描述文件进行解析,获得动态库内各函数的属性,建立函数名称/类型映射表;
动态库预加载模块,用于从函数描述文件中获得待加载动态库的名称和路径,对动态库进行预加载。
本实施例中,还包括函数解析调用模块,用于根据调用函数从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数名称以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。
本发明的动态库自动加载方法及系统,通过对动态库的描述,实现对任意指定动态库中函数的加载,并且基于服务化技术将本地库函数接口发布在总线上,自动地实现各种已有功能库函数的服务化;此外,由于可以让用户无需开发编译工作,只需对已有的库中函数进行描述,即可自动将本地函数库映射到网络上供其他设备用户使用,在提高灵活性的同时降低工作复杂度,大大提高生成效率,降低综合成本。
本发明的动态库自动加载系统的应用,具体为:
获取函数列表信息请求后,读取函数描述文件并进行解析;
接收需要调用的函数名称以及对应参数;
从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数类型以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。
本发明进一步公开了一种动态库自动服务化封装系统,包括如上所述的动态库自动加载系统,以及
服务发布交互模块,用于接收函数列表查询请求,读取本地函数列表,获取函数名称;接收函数调用请求,调用函数解析调用模块;
函数解析调用模块,用于根据服务发布交互模块获取的函数名称,从函数名称/类型映射表中查找到对应的函数类型指针,获得该函数在预加载的动态库中对应的地址,完成本地函数的调用。
总体结构设计如图1所示,首先定义一种函数类型描述方法和一种参数描述方法,使用json语法对动态库的路径、库函数的函数名称、类型、参数等属性进行标识;
在此基础上,利用Rapid Json工具对描述文本进行解析,获得厂商动态库路径和库内各函数的类型,建立函数名称/类型映射表,并对库进行预加载;
同时,服务发布交互模块对外提供函数列表查询与函数调用两个服务接口。
客户端通过函数列表查询接口获得当前服务节点的各功能及使用方法,然后通过函数调用接口实现对服务节点功能的调用。
当组件接收到客户端发送的函数名与参数信息时,服务发布交互模块将接收到数据传递给函数解析调用模块,调用函数解析调用模块,根据函数名称从函数名称/类型映射表中查找与函数名称相对应的函数类型指针,利用动态库动态调用技术获得该函数对应的地址,其中函数的参数通过解析和函数名一并传入的参数字符串得到;函数的返回值,转换成json格式字符串返回给客户端。
具体地,动态库描述与函数类型定义为:厂家对需要服务化封装的库函数进行描述,该描述文件中包含机器人一些属性,动态库路径等信息。其中一个重要属性是对动态库中各函数的描述。函数的描述是基于函数类型,函数类型的定义方法如下:
其中函数类型是基于函数的函数与返回值,首先对常见的类型进行简化如表1:
表1数据类型缩写:
数据类型 缩写
char C
short S
int I
float F
double D
char* [C
short* [S
int* [I
float* [F
double* [D
unsigned U
基于上述缩写的数据类型,使用如下方式对函数类型进行定义,对于一个函数类型,下划线前是函数返回值类型,下划线后面以此为第1,2…参数的类型。
(返回值类型_参数1类型|参数2类型|参数3类型|…)
例如:
表2函数类型示例
函数 类型
void set_speed(int num); V_I
float xxxx(void) F_V
char*get_name(void) [C_V
double set_xx(double a) D_D
最终将库提供商、库路径、库中函数名、函数类型,以及函数功能介绍用json语法按照图2中的形式进行组织。该描述文档基于json语法,描述库路径,库中各个函数的名字以及对应的函数类型。
图2中展示为一个名为agv.dll的动态库,其有4个函数,分别是agv_move2类型为V_III、agv_set_name类型为V_[C、agv_set_speed类型为I_I、agv_get_direct类型为[C_V。brief为函数功能简述,由厂商自行确定。
2)定义函数参数描述。函数参数描述也是基于json描述,其格式如图3所示。图例所示为含有5个参数的描述内容。第一个参数为int型,值为1024;第二个参数为字符串,值为”hello world”,第三个参数为double,值为10.24;第四个参数为int数组,值为[10 12 910],最后一个为double类型数组,值为[10.1 12.2 9.3 10.4]。
本实施例中,各模块的描述以及接口如下所示:
1)文件解析模块
描述:该模块负责对json文档进行描述,该模块利用现有成熟的json解析库RapidJson具体实现参考官方文档。
2)函数名称/类型映射
描述:该模块从函数描述文档中提取functions节点中的各个函数名称-函数类型对,并以std::map型式保存。
接口:根据配置文件路径,获得函数名-类型map。
3)动态函数库预加载
描述:该模块从函数描述文档中获得待加载动态库的路径名称,调用系统接口对库进行预加载。
接口1:从配置文件中获得动态库路径
接口2:根据函数名加载动态库
4)本地函数列表描述
描述:该模块提取描述文档中functions节点中信息。
接口:给定缓存区获得本地库函数列表描述信息
5)服务发布交互
描述:该模块发布组件提供的服务接口,与客户端进行数据交互。
接口1:wsdl发布函数
接口2:WebService获取函数列表查询接口函数
接口3:WebService调用函数接口函数
接口4:利用gsoap实现服务发布
6)调用函数解析
描述:该模块根据服务发布交互模块传递过来的客户端调用函数及其参数,结合函数名称/类型映射模块与函数动态函数库加载模块,实现对本地函数的调用,并将返回值以json字符串形式返回服务交互模块。
接口:调用函数解析
7)函数类型库
描述:该模块中加载各种预设函数类型指针以及该类型函数参数解析方法。
定义:定义处理各类型函数通用函数指针
接口:注册某类型函数以及处理函数
8)日志模块
描述:基础模块程序日志分级打印,供其他模块调用,方便程序运行跟踪以及错误排查。
接口:各种等级打印接口。
下面结合上述的动态库自动服务化封装系统及封装方法,提供一种具体应用实例:
如图1和图2所示,程序运行后按以下过程运行,首先主线程启动:①初始化日志系统;②随后利用文件解析模块解析构建函数名称-类型键值对;③通过库函数描述文件,获得加载动态库的名称,并进行预加载;④发布web service服务后等待客户端连接;
当客户端进程发送获取函数列表信息请求后,服务端将创建新线程,在该线程中,读取配置描述文件内容并返回给客户端;
客户端获得服务节点的函数列表信息,通过函数调用服务接口,传递需要调用的函数名以及对应参数给服务端;
针对客户端发来的函数调用请求,服务端中创建新的线程,在线程中对函数参数进行解析,根据函数名获得库中的地址、函数类型,以及该类型函数的处理函数;
将参数map传递给处理函数,在处理函数中完成对本地函数的调用,函数的返回值将转换成json格式字符串送回客户端。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (10)

1.一种动态库自动加载方法,其特征在于,包括步骤:
1)对动态库的名称、路径以及动态库中函数的属性进行描述,形成函数描述文件;
2)读取函数描述文件并进行解析,获得动态库内各函数的属性,建立函数名称/类型映射表;同时获得待加载动态库的名称和路径,对动态库进行预加载。
2.根据权利要求1所述的动态库自动加载方法,其特征在于,在步骤1)中,所述函数的属性包括函数名称、函数类型、函数参数或函数功能中的一种或多种。
3.根据权利要求2所述的动态库自动加载方法,其特征在于,在步骤1)中,所述函数类型的定义方法如下:
1.1)对函数类型进行简化,其中函数类型是基于函数的函数与返回值;
1.2)基于简化的函数类型,对函数类型进行定义:返回值类型_参数1类型|参数2类型|参数3类型|…,其中下划线前是函数返回值类型,下划线后面为第1,2,3…参数的类型。
4.根据权利要求3所述的动态库自动加载方法,其特征在于,在步骤1.1)中,char缩写为C;short缩写为S;int缩写为I;float缩写为F;double缩写为D;char*缩写为[C;short*缩写为[S;int*缩写为[I;float*缩写为[F;double*缩写为[D;unsigned缩写为U。
5.根据权利要求1至4中任意一项所述的动态库自动加载方法,其特征在于,在步骤1)中,所述函数描述文件通过json语法将库提供商、库名称、库路径、库中函数名、函数类型、函数参数以及函数功能进行组织而得到。
6.根据权利要求1至4中任意一项所述的动态库自动加载方法,其特征在于,在步骤2)之后,还包括步骤3),根据调用函数从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数类型以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。
7.一种动态库自动加载系统,其特征在于,包括
文件解析模块,用于对预先形成的函数描述文件进行解析,获得动态库内各函数的属性,建立函数名称/类型映射表;
动态库预加载模块,用于从函数描述文件中获得待加载动态库的名称和路径,对动态库进行预加载。
8.根据权利要求7所述的动态库自动加载系统,其特征在于,还包括函数解析调用模块,用于根据调用函数从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数名称以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。
9.根据权利要求7所述的动态库自动加载系统,其特征在于,还包括函数类型库,用于加载各种预设函数类型指针以及该类函数参数解析方法。
10.一种动态库自动加载系统的应用,其特征在于,
获取函数列表信息请求后,读取函数描述文件并进行解析;
接收需要调用的函数名称以及对应参数;
从函数名称/类型映射表中获知函数在预加载的动态库中的地址、函数类型以及该类型函数的处理函数,在处理函数中完成对本地函数的调用。
CN202010124148.1A 2020-02-27 2020-02-27 一种动态库自动加载方法、系统及应用 Pending CN111506357A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010124148.1A CN111506357A (zh) 2020-02-27 2020-02-27 一种动态库自动加载方法、系统及应用

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010124148.1A CN111506357A (zh) 2020-02-27 2020-02-27 一种动态库自动加载方法、系统及应用

Publications (1)

Publication Number Publication Date
CN111506357A true CN111506357A (zh) 2020-08-07

Family

ID=71868951

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010124148.1A Pending CN111506357A (zh) 2020-02-27 2020-02-27 一种动态库自动加载方法、系统及应用

Country Status (1)

Country Link
CN (1) CN111506357A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113867720A (zh) * 2021-09-29 2021-12-31 上海同星智能科技有限公司 软件平台用第三方程序库函数互调方法及互调系统
CN113867719A (zh) * 2021-09-29 2021-12-31 上海同星智能科技有限公司 软件平台用第三方程序库函数拆解调用方法及调用系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101021804A (zh) * 2007-03-13 2007-08-22 华为技术有限公司 调用动态库的方法、装置及动态库服务器
CN101840334A (zh) * 2010-04-16 2010-09-22 中国电子科技集团公司第二十八研究所 一种软件构件服务化封装方法
CN103455337A (zh) * 2013-09-12 2013-12-18 四川长虹电器股份有限公司 在安卓开发环境下使用动态库的方法
CN104020992A (zh) * 2014-05-28 2014-09-03 北京航空航天大学 由C/C++生成Java Web服务的方法及装置
US20160232380A1 (en) * 2014-01-31 2016-08-11 Bromium, Inc. Automatic initiation of execution analysis
CN106354612A (zh) * 2016-08-25 2017-01-25 中国人民解放军济南军区72465部队 云诊断资源的服务化封装方法及系统
CN107273745A (zh) * 2017-04-21 2017-10-20 中国科学院软件研究所 一种动态链接库形式的恶意代码的动态分析方法
CN106502737B (zh) * 2016-10-20 2019-07-30 广州酷狗计算机科技有限公司 一种提高应用程序启动速度的方法和终端

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101021804A (zh) * 2007-03-13 2007-08-22 华为技术有限公司 调用动态库的方法、装置及动态库服务器
CN101840334A (zh) * 2010-04-16 2010-09-22 中国电子科技集团公司第二十八研究所 一种软件构件服务化封装方法
CN103455337A (zh) * 2013-09-12 2013-12-18 四川长虹电器股份有限公司 在安卓开发环境下使用动态库的方法
US20160232380A1 (en) * 2014-01-31 2016-08-11 Bromium, Inc. Automatic initiation of execution analysis
CN104020992A (zh) * 2014-05-28 2014-09-03 北京航空航天大学 由C/C++生成Java Web服务的方法及装置
CN106354612A (zh) * 2016-08-25 2017-01-25 中国人民解放军济南军区72465部队 云诊断资源的服务化封装方法及系统
CN106502737B (zh) * 2016-10-20 2019-07-30 广州酷狗计算机科技有限公司 一种提高应用程序启动速度的方法和终端
CN107273745A (zh) * 2017-04-21 2017-10-20 中国科学院软件研究所 一种动态链接库形式的恶意代码的动态分析方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王汉斌: "基于Web Services技术的中小企业虚拟运营模式构建", 《中北大学学报》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113867720A (zh) * 2021-09-29 2021-12-31 上海同星智能科技有限公司 软件平台用第三方程序库函数互调方法及互调系统
CN113867719A (zh) * 2021-09-29 2021-12-31 上海同星智能科技有限公司 软件平台用第三方程序库函数拆解调用方法及调用系统
WO2023051127A1 (zh) * 2021-09-29 2023-04-06 上海同星智能科技有限公司 软件平台用第三方程序库函数拆解调用方法及调用系统

Similar Documents

Publication Publication Date Title
CN111459489A (zh) 一种动态库自动服务化封装方法、系统及应用
CN105426394B (zh) 基于跨平台的移动报表生成方法和系统
AU738882B2 (en) Distributed-object development system and computer-readable recording medium recorded with program for making computer execute distributed-object development
CN111381983B (zh) 虚拟试验靶场验证系统的轻量级消息中间件系统及方法
US20120110028A1 (en) Translating an object-oriented data model to a yang data model
CN104156313A (zh) 一种Web服务测试用例自动生成方法
CN111506357A (zh) 一种动态库自动加载方法、系统及应用
CN113419969B (zh) 基于浏览器插件的界面自动化成功率保障方法
CN111324526A (zh) 接口测试系统、方法和服务器
CN114428728A (zh) 信息物理测试协议处理系统及方法
CN115469941A (zh) 基于FlinkSQL的风控指标计算开发的自动配置处理方法及系统
CN113778449A (zh) 航空电子接口数据适配转换系统
CN112464620A (zh) 一种财务规则引擎的实现方法及实现系统
CN109445384B (zh) 一种多设备控制系统
CN114968192A (zh) 一种项目创建方法、装置、计算机设备及存储介质
CN111046021B (zh) 一种物联网型配变终端应用开发平台
CN104992379A (zh) 一种电力行业大数据动态文本交换格式管理方法
CN113364886A (zh) 一种航空电子接口数据管理系统
Zhao Slicing software architectures
CN112543190A (zh) 一种基于脚本技术实现云边互功采集控制的系统及方法
CN116470968B (zh) 一种面向航天科学系统通讯功能的地面测试方法及装置
CN110866614A (zh) 基于gsp的智能变电站自动化设备透明运维方法及系统
Dai et al. Cloud-based test modeling and automatic generation of test cases
CN117591104B (zh) 模型的生成方法、装置、电子设备及存储介质
CN117435177B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200807