System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于插件技术的系统启动时应用程序切换方法技术方案_技高网

一种基于插件技术的系统启动时应用程序切换方法技术方案

技术编号:41143673 阅读:5 留言:0更新日期:2024-04-30 18:12
本发明专利技术涉及一种基于插件技术的系统启动时应用程序切换方法,通过初始化插件框架;在初始化插件框架上编写对话框插件;在初始化插件框架上编写需要启动的应用程序插件;启动编写的插件;用户选择需要启动的插件,实现了应用程序切换。本发明专利技术采用一种插件式的软件实现方法,具有较高的灵活性,以达到最大化满足用户需求的目的。

【技术实现步骤摘要】

本专利技术属于软件切换,尤其是一种基于插件技术的系统启动时应用程序切换方法


技术介绍

1、在多主机和多屏幕的工作台中(一个主机对应一个屏幕),往往部署了多个运用程序,在现实应用中,在系统启动时用户常常需要在同一屏幕选择启动不同的应用程序,常用的实现方法是采用硬件kvm进行切换,此种方法成本较高,此外,若硬件设计时未加kvm模块,此时用户再提出上述应用程序切换的需求,重新设计硬件的方法并不可取。


技术实现思路

1、本专利技术的目的在于克服现有技术的不足,提出一种基于插件技术的系统启动时应用程序切换方法,具有较高的灵活性,以达到最大化满足用户需求的目的。

2、本专利技术解决其技术问题是采取以下技术方案实现的:

3、一种基于插件技术的系统启动时应用程序切换方法,包括以下步骤:

4、步骤1、初始化插件框架;

5、步骤2、在初始化插件框架上编写对话框插件;

6、步骤3、在初始化插件框架上编写需要启动的应用程序插件;

7、步骤4、启动步骤2和步骤3编写的插件;

8、步骤5、用户选择需要启动的插件。

9、而且,所述步骤1包括以下步骤:

10、步骤1.1、定义ctkplugincontext的指针context;

11、步骤1.2、获取到插件的目录plugins;

12、步骤1.3、将plugins加入到插件框架搜索列表;

13、步骤1.4、设置和启动ctk插件系统;

14、步骤1.5、获得插件的上下文。

15、而且,所述步骤2包括以下步骤:

16、步骤2.1、编写接口类cdcstartupoptiondlg,继承自qdialog,用标识符与类名接口关联起来;

17、步骤2.2、编写对话框startupoptiondlgaccess,继承自cdcstartupoptiondlg,设置对话框的属性,对界面进行布局,设置按钮的id值;

18、步骤2.3、实现ctkpluginactivator接口;

19、步骤2.4、描述插件元数据;

20、步骤2.5、重写插件启动的start函数,实现startupoptiondlgaccess的指针,注册插件服务;

21、步骤2.6、重写插件停止的stop函数,析构创建的指针并结束。

22、而且,所述步骤3包括以下步骤:

23、步骤3.1、编写接口类cdcmainwindow,继承自qframe用标识符与类名接口关联起来;

24、步骤3.2、编写界面类mainwindowaccess,继承自cdcmainwindow,对界面进行布局,对软件功能初始化;

25、步骤3.3、实现mainwindowactivator接口;

26、步骤3.4、描述插件元数据;

27、步骤3.5、重写插件启动的start函数,创建mainwindowaccess的指针,注册插件服务

28、步骤3.6、重写插件停止的stop函数,析构创建的指针并结束。

29、而且,所述步骤4包括以下步骤:

30、步骤4.1、定位到插件的目录;

31、步骤4.2、将对话框插件、需要启动的应用程序插件构造一个qdirlterator的对象itplugin;

32、步骤4.3、判断是否还有下一个插件,若有则进行步骤4.4,否则结束;

33、步骤4.4、获取一个插件;

34、步骤4.5、调用installplugin函数安装插件;

35、步骤4.6、调用start函数立即启动插件;

36、步骤4.7、判断是否异常,若异常则打印出错信息,否则返回步骤4.3。

37、而且,所述步骤5包括以下步骤:

38、步骤5.1、调用context的getservicereference函数获得对话框插件的服务loginref;

39、步骤5.2、定义cdcstartupoptiondig的指针loginservice;

40、步骤5.3、判断loginref是否为空,若loginref不为空,则进行步骤5.4,若loginref为空,则结束;

41、步骤5.4、调用context的getservice函数获取得到cdcstartupoptiondlg的指针,赋值给loginservice;

42、步骤5.5、判断loginservice是否为空,若不为空,则进行步骤5.6,若为空则结束;

43、步骤5.6、若loginservice不为空,弹出cdcstartupoptiondlg的对话框;

44、步骤5.7、根据用户在对话框上的点击按钮选择,获取点击按钮id的val值;

45、步骤5.8、根据val值,调用context的getservicereference函数得到相应插件的服务;

46、步骤5.9、调用context的getservice得到插件cdcmainwindow或其他插件界面基类的指针;

47、步骤5.10、调用show函数,显示该插件并结束。

48、本专利技术的优点和积极效果是:

49、本专利技术通过初始化插件框架;在初始化插件框架上编写对话框插件;在初始化插件框架上编写需要启动的应用程序插件;启动编写的插件;用户选择需要启动的插件,实现了应用程序切换。本专利技术采用一种插件式的软件实现方法,具有较高的灵活性,以达到最大化满足用户需求的目的。

本文档来自技高网...

【技术保护点】

1.一种基于插件技术的系统启动时应用程序切换方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的一种基于插件技术的系统启动时应用程序切换方法,其特征在于:所述步骤1包括以下步骤:

3.根据权利要求2所述的一种基于插件技术的系统启动时应用程序切换方法,其特征在于:所述步骤2包括以下步骤:

4.根据权利要求3所述的一种基于插件技术的系统启动时应用程序切换方法,其特征在于:所述步骤3包括以下步骤:

5.根据权利要求4所述的一种基于插件技术的系统启动时应用程序切换方法,其特征在于:所述步骤4包括以下步骤:

6.根据权利要求1所述的一种基于插件技术的系统启动时应用程序切换方法,其特征在于:所述步骤5包括以下步骤:

【技术特征摘要】

1.一种基于插件技术的系统启动时应用程序切换方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的一种基于插件技术的系统启动时应用程序切换方法,其特征在于:所述步骤1包括以下步骤:

3.根据权利要求2所述的一种基于插件技术的系统启动时应用程序切换方法,其特征在于:所述步骤2包括以下步骤:

4.根据...

【专利技术属性】
技术研发人员:包汉瑜刘山单晓晨
申请(专利权)人:中国船舶集团有限公司第七〇七研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1