CN101639777A - 一种构件的即插即用方法、应用及其系统 - Google Patents

一种构件的即插即用方法、应用及其系统 Download PDF

Info

Publication number
CN101639777A
CN101639777A CN200910092209A CN200910092209A CN101639777A CN 101639777 A CN101639777 A CN 101639777A CN 200910092209 A CN200910092209 A CN 200910092209A CN 200910092209 A CN200910092209 A CN 200910092209A CN 101639777 A CN101639777 A CN 101639777A
Authority
CN
China
Prior art keywords
resource
function
platform
component
module
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
CN200910092209A
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN200910092209A priority Critical patent/CN101639777A/zh
Publication of CN101639777A publication Critical patent/CN101639777A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种构件的即插即用方法,该方法以基于模板方法设计模式的IBP互联底板为基础,包括步骤:文件配置,准备配置文件来记录需要加载构件的构件名及构件导出函数;构件加载,平台读取配置文件,调用构件加载函数,动态地将构件加载到平台地址空间中;构件功能映射,将构件用于交互的构件资源动态加载到平台的地址空间中,完成构件功能在平台上的动态映射;构件功能调用,对构件功能进行动态感知和动态调用;构件卸载,平台调用构件卸载函数将构件动态卸载。基于构件的即插即用方法系统包括:文件配置模块;构件加载模块;构件功能映射模块;构件功能调用模块;构件卸载模块。本发明能够实现构件功能的动态调用和自动消解Windows资源冲突。

Description

一种构件的即插即用方法、应用及其系统
技术领域
本发明涉及软件系统的开发技术领域,特别涉及一种构件的即插即用方法及利用该方法自动消解Windows资源冲突的方法。
背景技术
在“平台+构件”的系统架构中,一个应用系统是由一个平台和若干个构件组成,平台负责加载构件并完成相应的调度和管理任务(包括构件之间的协调和构件与平台之间的协调),而构件完成某方面的特定功能。
在这种系统架构中,构件提供已编译好的程序接口或属性。其特点是较难对其进行修改,通常只能了解构件的接口和属性等信息,它是在运行级上实现,不需要重新编译即可立即运行,容易实现即插即用的重用和分布环境中的重用。它只需按一定标准设计接口,程序之间藕合较松散,各部件需要修改时,只需单独编译并替换原来的文件即可。但是传统的构件功能调用时,平台需要构件的相关信息,如构件名、构件导出函数等;而且当构件功能变化时,如构件导出函数增加或减少,平台需在源文件中增加或减少相应的导出函数的导入,且要重新编译链接,即无法在运行时动态感知,因此这种方法无法实现构件功能的动态调用。
在这种系统架构中,构件中需要Windows资源不可避免,如需要构件来完成一定的人机交互功能,而Windows程序的人机交互功能是基于资源的,如菜单、对话框等。如果平台和构件都利用VisualStudio开发工具完成,那么Visual Studio为平台和每个构件生成的同类资源序列相同,这就存在资源ID重复的现象,如平台中自定义菜单的ID值会从32771开始,那么第一个自定义菜单的ID值一定是32771,同样构件(而且是所有构件)中的第一个自定义菜单(如果构件需要自定义菜单)的ID值也一定是32771,其他类型的资源同理。这种构件与平台之间以及构件之间资源ID值重复的现象会导致资源冲突问题。所谓的Windows资源冲突,是由于构件与调用该构件的平台之间以及构件之间由于使用具有相同资源ID值的资源,且搜索资源空间的顺序相对固定所产生的资源定位、消息路由等错误,以及由此带来的资源查找失败、资源无法加载或无法创建以及Windows消息由于无法准确路由而被错误的执行或无法执行的现象。
资源冲突是任何使用VC++开发的“平台+构件”架构模式的应用系统所必须解决的问题,尤其是构件具有大量的交互界面时更是如此。可以通过某种强制机制(如人工手动编辑)使所有构件和平台的资源ID不重复,但很多情况下很难实现,如人工编辑ID值的方法很繁琐且很容易失误难以保证正确性,且该方法对于即插即用构件不适用。即插即用构件后于平台产生,这意味着平台的资源ID不可能再编辑,而只能编辑构件的ID,而且还得为每个构件规定每类资源的ID值范围。为每个构件规定其资源ID值的范围几乎是不可能的,因为在项目的实际开发中,构件开发者往往分散在不同领域、不同的地域、不同的开发团队中,这种通过人工协调的方式来规避资源ID冲突的方法其工作量和难度难以想象,也极不符合软件工程开发思想,因此是一种不可取的方法。
发明内容
(一)发明目的
本发明的目的是提供一种构件的即插即用方法,能够实现构件功能的动态加载且能够自动消解Windows资源冲突。
(二)技术方案
一种构件的即插即用方法,该方法以基于模板方法的IBP互联底板为基础而实现,IBP互联底板包括:平台框架,即插父类及其构件子类、即用父类及其构件资源命令路由子类,所述即插父类和即用父类位于平台中,所述构件子类和构件资源命令路由子类位于构件中,平台框架继承即用父类,且调用即插父类和即用父类,该方法包括以下步骤:文件配置,准备配置文件来记录需要加载构件的构件名及构件导出函数;构件加载,平台读取配置文件,调用构件加载函数,动态地将构件加载到平台的地址空间中;构件功能映射,将构件用于交互的构件资源动态加载到平台的地址空间中,完成构件功能在平台上的动态映射;构件功能调用,对构件功能进行动态感知和动态调用,以实现构件功能;构件卸载,平台调用构件卸载函数将构件动态卸载。
其中,所述构件功能映射包括以下步骤:平台框架调用构件的导出函数实例化构件子类对象;利用XTP来建立构件资源ID和构件名的映射关系;平台框架调用即插父类中的模板函数来实现构件资源的加载,并获取构件资源命令路由子类对象;建立构件名和构件资源路由子类对象的映射关系,从而形成“构件资源ID→构件名→构件资源命令路由子类对象”的映射关系。
其中,所述构件包括:规则DLL(Dynamic Link Library)、扩展DLL和COM(Conponent Object Model)组件。
一种所述的构件的即插即用方法来自动消解Windows资源冲突的方法,所述自动消解Windows资源冲突的方法还包括如下步骤:确定资源所属的控件对象,从而得到资源所属的构件的构件名;根据构件名找到构件资源命令路由子类对象,从而得到构件资源命令路由的入口点;通过构件资源命令路由子类对象将构件资源命令准确的路由到相应的处理函数进行处理。
其中,所述的构件资源包括:菜单(CMenu)、工具条(CToolBar)和快捷键。
一种利用所述的构件的即插即用方法来自动消解Windows资源冲突的方法,所述自动消解Windows资源冲突的方法还包括如下步骤:获取当前构件的实例句柄;保存平台框架当前搜索的资源空间实例句柄;将构件的资源空间置为框架当前搜索的资源空间;创建构件资源;将资源空间通过保存的实例句柄恢复至先前的资源空间。
其中,所述的构件资源包括:对话框(CDialog)、视口(CView)和窗体(CWnd)。
一种基于所述的构件的即插即用方法的系统,包括:文件配置模块,用于准备配置文件来记录需要加载构件的构件名及构件导出函数;构件加载模块,用于平台读取配置文件,调用构件加载函数,动态地将构件加载到平台的地址空间中;构件功能映射模块,用于将构件用于交互的构件资源动态加载到平台的地址空间中,完成构件功能在平台上的动态映射;构件功能调用模块,用于对构件功能进行动态感知和动态调用,以实现构件功能;构件卸载模块,用于平台调用构件卸载函数将构件动态卸载。
其中,构件功能映射模块包括:用于平台框架调用构件的导出函数实例化构件子类对象的模块;用于利用XTP来建立构件资源ID和构件名的映射关系的模块;用于平台框架调用即插父类中的模板函数来实现构件资源的加载,并获取构件资源命令路由子类对象的模块;用于建立构件名和构件资源路由子类对象的映射关系,从而形成“构件资源ID→构件名→构件资源命令路由子类对象”的映射关系的模块。
一种包含构件的即插即用系统的自动消解Windows资源的系统,包括:用于确定资源所属的控件对象,从而得到资源所属的构件的构件名的模块;用于根据构件名找到构件资源命令路由子类对象,从而得到构件资源命令路由的入口点的模块;用于通过构件资源命令路由子类对象将构件资源命令准确的路由到相应的处理函数进行处理的模块。
一种包含构件的即插即用系统的自动消解Windows资源的系统,还包括:用于获取当前构件的实例句柄的模块;用于保存平台框架当前搜索的资源空间实例句柄的模块;用于将构件的资源空间置为框架当前搜索的资源空间的模块;用于创建构件资源的模块;用于将资源空间通过保存的实例句柄恢复至先前的资源空间模块。
(三)有益效果
本发明的有益效果在于,平台在编译时不需要构件的任何信息,包括构件名称、功能函数名称及其参数类型,所有这些构件信息都是在运行时动态获取,即可实现在平台运行时构件的动态加载、卸载和功能调用;还允许平台无需修改、重新编译和链接即可动态感知构件功能的变化,无论是构件功能的增加或减少;在平台和构件的多个资源ID值相同的情况下,解决了资源命令路由问题和创建时的ID冲突问题,从根本上消解了即插即用构件与平台以及构件与构件之间的Windows资源冲突,从而为“平台+构件”架构模式的大规模软件系统的开发解决了一个关键的技术难题。
附图说明
图1是本发明中构件的即插即用方法流程图;
图2是基于IBP的即插即用结构图;
图3是IBP互联底板类图;
图4是构件菜单命令路由中WINDOWS资源冲突的自动消解示例图。
具体实施方式
本发明提出的构件的即插即用方法,结合附图和实施例说明如下。
该方法是以基于模板方法的IBP互联底板为基础而实现的,IBP包括:平台框架,即插父类和构件子类、即用父类和构件资源命令路由子类,即插父类和即用父类位于平台中,构件子类和构件资源命令路由子类位于构件中,且分别继承于即插父类和即用父类,平台框架调用即插父类和即用父类;该方法包括以下步骤:文件配置,准备配置文件来记录需要加载构件的构件名及构件导出函数;构件加载,平台读取配置文件,调用构件加载函数,动态地将构件加载到平台的地址空间中;构件功能映射,将构件用于交互的构件资源动态加载到平台的地址空间中,完成构件功能在平台上的动态映射;构件功能调用,对构件功能进行动态感知和动态调用,以实现构件功能;构件卸载,平台调用构件卸载函数将构件动态卸载。
实施例1
本实施例中平台为Windows应用程序(EXE),构件为规则DLL或扩展DLL,构件资源分别为菜单和对话框。XTP(XTREMETOOLKIT PRO v12.1.1版)是一个界面管理套件,基本思想是将每一个菜单和工具条按钮都视为一个控件(Control),其所有属性和操作封装为CXTPControl类,CXTPControl为每个菜单定义一个属性集,这些属性记录了菜单的ID值,在此基础上增加了“构件名称”属性。利用本发明提供的自动消解Windows资源冲突的即插即用方法来实现规则DLL的完全动态加载;菜单资源的动态载入和菜单命令路由方法;对话框资源的冲突自动消解方法。本实施例详细过程为:
如图3所示IBP的类结构图,平台框架为CMainFrame,即插父类为CPlugBase,规则DLL子类为CPlugComponent,即用父类为CWnd,规则DLL资源命令路由子类为CDllMessageEntry。
文件配置:
准备一个配置文件记录需要加载的规则DLL名dllName及其导出函数Plug_CreateObject。
构件加载,动态地加载规则DLL:
CMainFrame读取配置文件获取规则DLL名dllName和导出函数Plug_CreateObject,并调用规则DLL加载函数将其加载到平台的地址空间中。
构件功能映射,规则DLL菜单资源的动态载入:
在规则DLL导出函数中实例化规则DLL子类CPlugComponent对象并将其返回给CMainFrame;利用XTP来建立规则DLL菜单ID和dllName的映射关系;CMainFrame使用规则DLL子类CPlugComponent对象调用即插父类CPlugBase的模板函数LoadComponent来完成菜单的加载,在这个过程中,模板函数调用获取菜单资源的原语操作函数GetMenuHandle和GetMenuName分别获得规则DLL菜单句柄和菜单名(若资源为工具条,则用GetToolBarID等原语操作函数获取工具条相关信息),由于获取菜单资源的原语操作函数为纯虚函数,所以实际调用的是规则DLL子类中相应的获取菜单资源的原语操作函数,从而获取菜单资源并加载,同时LoadComponent还调用GetMenuMessageEntry函数获得规则DLL菜单命令路由子类CDllMessageEntry的对象;建立dllName和CDllMessageEntry的映射关系,从而形成“DLL菜单ID→dllName→CDllMessageEntry对象”的映射关系,用于菜单命令消息的路由方法。
构件功能调用,平台动态地感知并调用规则DLL功能:
在规则DLL功能发生变化时,如其导出函数增加或减少,需要使平台动态感知其变化以便正确地调用,采用通过规则DLL菜单的“桥”模式来适应规则DLL功能的变化,即一个菜单项对应规则DLL的一项功能,每增加(减少)一项功能就增加(减少)一个菜单,而规则DLL的菜单在平台运行时动态加载,通过规则DLL菜单的命令消息来响应并调用规则DLL对应的功能。
自动消解Windows资源冲突的方法,菜单命令消息路由方法,参照图4实现:
通过鼠标点击确定菜单所属的控件对象,从而得到菜单所属的DLL的dllName,XTP将菜单当作Button来处理,XTP的CXTPCommandBar通过捕获鼠标的WM_LBUTTONUP消息来判断鼠标触发的菜单控件对象,该对象控件包含菜单ID和其所属的规则DLL的dllName;根据上述“DLL菜单ID→dllName→CDllMessageEntry对象”得到规则DLL菜单命令路由子类CDllMessageEntry的对象pMessageEntry;WM_LBUTTONUP消息响应函数最终将菜单被触发的命令消息WM_COMMAND发送到CMainFrame,在其响应函数OnCommand中调用pMessageEntry的消息的路由函数OnCmdMsg对规则DLL的菜单命令消息准确的路由到规则DLL处理函数中。整个过程为CXTPCommandBar::OnLButtonUp→CXTPControlButton::OnLButtonUP→CXTPControl::OnExecute→NotifyExecute→CMainFrame::OnCommand→pMessageEntry->OnCmdMsg。在这个过程中,即使存在平台菜单ID和规则DLL菜单ID冲突,或是规则DLL之间菜单ID冲突,也能完成正确的路由。
自动消解Windows资源冲突的方法,对话框资源的冲突自动消解方法:
先获取当前规则DLL的实例句柄hDll;保存框架当前搜索的资源空间实例句柄,一般用函数AfxGetResourceHandle;将规则DLL的资源空间置为框架当前搜索的资源空间,用AfxSetResourceHandle(hDll);创建对话框,CDialog::Create(IDD,pParent);将资源空间恢复至先前的资源空间(通过保存的实例句柄)。
构件卸载,动态地卸载规则DLL:
在不需要用到规则DLL所提供的功能时,平台调规则DLL卸载函数将其卸载,其过程是先析构规则DLL子类CPlugComponent对象,再卸载规则DLL。
实施例2
本实施例中平台为Windows应用程序(EXE),构件为COM组件。本实施例与实施例1所使用的方法、过程基本相同,在下面两个具体步骤中有所区别,其他步骤与实施例1相同或类似。
文件配置:
准备一个配置文件记录需要加载的COM组件名以及COM对象接口及其GUID(如接口名为IJoint,其GUID为25AB3BA1-58D0-40b9-ADD1-C604DA47FD27)。不同的COM组件虽然其接口名称相同(比如为IJoint),但接口的实现对象类GUID不同,因此,平台能够准确将这些接口区别开。
构件加载,动态地加载COM组件:
CMainFrame读取配置文件获取COM组件名,通过COM组件实例化函数CoCreateInstance获取接口Ijoint的智能指针(由于Ijoint接口的实现类对象GUID值不同,因此不同COM组件的Ijoint指针值不同),通过该智能指针方法的调用来实例化COM组件中子类CPlugComponent对象并将其返回给CMainFrame。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (11)

1、一种构件的即插即用方法,其特征在于,该方法以基于模板方法设计模式的IBP互联底板为基础而实现,IBP互联底板包括:平台框架,即插父类及其构件子类、即用父类及其构件资源命令路由子类,所述即插父类和即用父类位于平台中,所述构件子类和构件资源命令路由子类位于构件中,平台框架继承即用父类,且调用即插父类和即用父类,该方法包括以下步骤:
文件配置,准备配置文件来记录需要加载构件的构件名及构件导出函数;
构件加载,平台读取配置文件,调用构件加载函数,动态地将构件加载到平台的地址空间中;
构件功能映射,将构件用于交互的构件资源动态加载到平台的地址空间中,完成构件功能在平台上的动态映射;
构件功能调用,对构件功能进行动态感知和动态调用,以实现构件功能;
构件卸载,平台调用构件卸载函数将构件动态卸载。
2、如权利要求1所述的构件的即插即用方法,其特征在于,所述构件功能映射包括以下步骤:
平台框架调用构件的导出函数实例化构件子类对象;
利用XTP来建立构件资源ID和构件名的映射关系;
平台框架调用即插父类中的模板函数来实现构件资源的加载,并获取构件资源命令路由子类对象;
建立构件名和构件资源路由子类对象的映射关系,从而形成“构件资源ID→构件名→构件资源命令路由子类对象”的映射关系。
3、如权利要求1或2所述的构件的即插即用方法,其特征在于,所述构件包括:规则DLL、扩展DLL和COM组件。
4、一种利用权利要求1或2所述的构件的即插即用方法来自动消解Windows资源冲突的方法,其特征在于,所述自动消解Windows资源冲突的方法还包括如下步骤:
确定资源所属的控件对象,从而得到资源所属的构件的构件名;
根据构件名找到构件资源命令路由子类对象,从而得到构件资源命令路由的入口点;
通过构件资源命令路由子类对象将构件资源命令准确的路由到相应的处理函数进行处理。
5、如权利要求4所述的构件的自动消解Windows资源冲突的方法,其特征在于,所述的构件资源包括:菜单、工具条和快捷键。
6、一种利用权利要求1或2所述的构件的即插即用方法来自动消解Windows资源冲突的方法,其特征在于,所述自动消解Windows资源冲突的方法还包括如下步骤:
获取当前构件的实例句柄;
保存平台框架当前搜索的资源空间实例句柄;
将构件的资源空间置为框架当前搜索的资源空间;
创建构件资源;
将资源空间通过保存的实例句柄恢复至先前的资源空间。
7、如权利要求6所述的自动消解Windows资源冲突的方法,其特征在于,所述的构件资源包括:对话框、视口和窗体。
8、一种构件的即插即用系统,其特征在于,包括:
文件配置模块,用于准备配置文件来记录需要加载构件的构件名及构件导出函数;
构件加载模块,用于平台读取配置文件,调用构件加载函数,动态地将构件加载到平台的地址空间中;
构件功能映射模块,用于将构件用于交互的构件资源动态加载到平台的地址空间中,完成构件功能在平台上的动态映射;
构件功能调用模块,用于对构件功能进行动态感知和动态调用,以实现构件功能;
构件卸载模块,用于平台调用构件卸载函数将构件动态卸载。
9、如权利要求8所述的构件即插即用系统,其特征在于,所述构件映射功能模块包括:
用于平台框架调用构件的导出函数实例化构件子类对象的模块;
用于利用XTP来建立构件资源ID和构件名的映射关系的模块;
用于平台框架调用即插父类中的模板函数来实现构件资源的加载,并获取构件资源命令路由子类对象的模块;
用于建立构件名和构件资源路由子类对象的映射关系,从而形成“构件资源ID→构件名→构件资源命令路由子类对象”的映射关系的模块。
10、一种包含权利要求8的构件的即插即用系统的自动消解Windows资源的系统,其特征在于,包括:
用于确定资源所属的控件对象,从而得到资源所属的构件的构件名的模块;
用于根据构件名找到构件资源命令路由子类对象,从而得到构件资源命令路由的入口点的模块;
用于通过构件资源命令路由子类对象将构件资源命令准确的路由到相应的处理函数进行处理的模块。
11、一种包含权利要求8的构件的即插即用系统的自动消解Windows资源的系统,其特征在于,还包括:
用于获取当前构件的实例句柄的模块;
用于保存平台框架当前搜索的资源空间实例句柄的模块;
用于将构件的资源空间置为框架当前搜索的资源空间的模块;
用于创建构件资源的模块;
用于将资源空间通过保存的实例句柄恢复至先前的资源空间模块。
CN200910092209A 2009-09-07 2009-09-07 一种构件的即插即用方法、应用及其系统 Pending CN101639777A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910092209A CN101639777A (zh) 2009-09-07 2009-09-07 一种构件的即插即用方法、应用及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910092209A CN101639777A (zh) 2009-09-07 2009-09-07 一种构件的即插即用方法、应用及其系统

Publications (1)

Publication Number Publication Date
CN101639777A true CN101639777A (zh) 2010-02-03

Family

ID=41614772

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910092209A Pending CN101639777A (zh) 2009-09-07 2009-09-07 一种构件的即插即用方法、应用及其系统

Country Status (1)

Country Link
CN (1) CN101639777A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262541A (zh) * 2011-08-12 2011-11-30 北京思创银联科技股份有限公司 动态配置插件启动的方法
CN102436373A (zh) * 2011-09-13 2012-05-02 上海普元信息技术股份有限公司 企业分布式应用系统中实现资源加载及资源热更新的方法
CN102819438A (zh) * 2011-06-08 2012-12-12 金蝶软件(中国)有限公司 一种热加载的方法、装置及信息系统
CN103902383A (zh) * 2014-03-26 2014-07-02 浪潮电子信息产业股份有限公司 一种基于继承机制的资源管理器设计方法
CN104935561A (zh) * 2014-03-19 2015-09-23 国家电网公司 一种组件数据处理方法和装置
CN102819438B (zh) * 2011-06-08 2016-12-14 金蝶软件(中国)有限公司 一种热加载的方法、装置及信息系统
CN107066180A (zh) * 2017-03-13 2017-08-18 深圳国泰安教育技术股份有限公司 一种基于vr操作的任务生成方法及其系统
CN108984160A (zh) * 2018-06-21 2018-12-11 中国石油集团安全环保技术研究院有限公司 基于组件化的信息化快速开发框架及方法
CN113434210A (zh) * 2021-06-23 2021-09-24 深圳市酷开网络科技股份有限公司 一种插件加载控制方法、系统、终端设备及存储介质
CN114510334A (zh) * 2022-02-16 2022-05-17 阿波罗智能技术(北京)有限公司 类实例的调用方法、装置、电子设备及自动驾驶车辆

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102819438B (zh) * 2011-06-08 2016-12-14 金蝶软件(中国)有限公司 一种热加载的方法、装置及信息系统
CN102819438A (zh) * 2011-06-08 2012-12-12 金蝶软件(中国)有限公司 一种热加载的方法、装置及信息系统
CN102262541A (zh) * 2011-08-12 2011-11-30 北京思创银联科技股份有限公司 动态配置插件启动的方法
CN102436373B (zh) * 2011-09-13 2014-05-14 普元信息技术股份有限公司 企业分布式应用系统中实现资源加载及资源热更新的方法
CN102436373A (zh) * 2011-09-13 2012-05-02 上海普元信息技术股份有限公司 企业分布式应用系统中实现资源加载及资源热更新的方法
CN104935561A (zh) * 2014-03-19 2015-09-23 国家电网公司 一种组件数据处理方法和装置
CN104935561B (zh) * 2014-03-19 2018-06-01 国家电网公司 一种组件数据处理方法和装置
CN103902383A (zh) * 2014-03-26 2014-07-02 浪潮电子信息产业股份有限公司 一种基于继承机制的资源管理器设计方法
CN107066180A (zh) * 2017-03-13 2017-08-18 深圳国泰安教育技术股份有限公司 一种基于vr操作的任务生成方法及其系统
CN107066180B (zh) * 2017-03-13 2020-05-12 深圳国泰安教育技术有限公司 一种基于vr操作的任务生成方法及其系统
CN108984160A (zh) * 2018-06-21 2018-12-11 中国石油集团安全环保技术研究院有限公司 基于组件化的信息化快速开发框架及方法
CN108984160B (zh) * 2018-06-21 2022-04-22 中国石油集团安全环保技术研究院有限公司 基于组件化的信息化快速开发框架系统
CN113434210A (zh) * 2021-06-23 2021-09-24 深圳市酷开网络科技股份有限公司 一种插件加载控制方法、系统、终端设备及存储介质
CN114510334A (zh) * 2022-02-16 2022-05-17 阿波罗智能技术(北京)有限公司 类实例的调用方法、装置、电子设备及自动驾驶车辆

Similar Documents

Publication Publication Date Title
US7685604B2 (en) Business process execution language (BPEL) application generator for legacy interfaces
US6810522B2 (en) Method and system for associating parameters of containers and contained objects
US20040039468A1 (en) Method, system and apparatus for an industrial framework based on integrated applications via adapters
CN101639777A (zh) 一种构件的即插即用方法、应用及其系统
US7765485B2 (en) Extensible user interface framework for a componentized application environment
JP4855656B2 (ja) 複数のオブジェクトをシリアライズする方法
US8869100B1 (en) Data objects for model-based design
CN107526578B (zh) 使用面向对象语言的资源编排方法和设备
US20020004934A1 (en) Dynamic mapping of component interfaces
US20090100405A1 (en) Synchronizing an abstract model and source code
US20080209390A1 (en) Pluggable model elements
CN108089861B (zh) 一种从SysML模型转换到AltaRica模型的转换方法
KR20020097147A (ko) 새로운 컴포넌트를 생성 또는 구입하며 이들을 목록에추가할 수 있는 기능을 구비한 객체 지향 소프트웨어 개발툴
CN108845940A (zh) 一种企业级信息系统自动化功能测试方法和系统
JP2009238229A (ja) コンポーネント基盤環境下で拡張されたメタデータを利用したソフトウェア開発方法及びその開発システム
Handley et al. Maintaining the consistency of sysml model exports to XML metadata interchange (XMI)
US20070245296A1 (en) Code management in a distributed software development environment
CN103593188A (zh) 一种用于仪器所见即所得菜单的管理系统及管理方法
CN112947896A (zh) 一种基于有向图的组件依赖分析方法
CN102779036B (zh) 用于自动化技术的软件工具
US20120150526A1 (en) Modelizing resources and external data of a program for procedural language coding
CN114356430A (zh) 一种基于airflow调度系统的DAG依赖配置工具
Egyed et al. Automatically detecting mismatches during component-based and model-based development
CN113296853B (zh) 一种基于模型驱动的独立端口建模方法及终端
CN116431142B (zh) 一种可快速构建且不易出错的高效率编程方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Li Yuan

Inventor after: Ma Yaping

Inventor after: Ye Dong

Inventor after: Wang Yonggang

Inventor after: Ma Fengwen

Inventor after: Chen Xiaoqing

Inventor before: Li Yuan

Inventor before: Ma Yaping

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: LI YUAN MA YAPING TO: LI YUAN MA YAPING YE DONG WANG YONGGANG MA FENGWEN CHEN XIAOQING

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20100203