一种基于Windows消息机制的外部应用系统与MSC.Patran的交互方法技术方案

技术编号:8532540 阅读:212 留言:0更新日期:2013-04-04 15:22
本发明专利技术公开了一种基于Windows消息机制的外部应用系统与MSC.Patran的交互方法,基于Windows消息机制生成的集成控制系统将外部应用系统与MSC.Patran建立连接,所述集成控制系统中包括集成接口初始化模块、命令调用及运行结果监听模块和命令伺服模块,通过建立集成控制系统将外部应用系统和Patran形式上融为一体,克服了现有技术不能通过外部应用系统直接调用Patran的缺陷;动态加载用户自定义开发的自定义函数库,对Patran本身的配置文件不作任何修改,对用户环境的影响最小化;同时,方便用户调用相应函数,提高处理速度;在外部应用系统的流程步骤中对Patran发送命令消息,通过监控Patran执行进度及结果,控制整个业务运行流程,保证业务合理正确地运行通畅。

【技术实现步骤摘要】

本专利技术涉及软件集成方法,具体涉及一种基于Windows消息机制的MSC. Patran集成方法。
技术介绍
MSC. Patran是工业领域内著名的并行框架式有限元前后处理及分析仿真软件,用户可利用其PCL编程语言(Patran Command Language)将自行开发的功能直接嵌入MSC.Patran的框架系统进行使用。在企业产品设计及制造周期中,需要将MSC. Patran的设计、分析数据进行统一管理,但由于MSC. Patran软件本身的封闭性和PCL语言的局限性,很难将分析过程中的数据结果与PDM等数据管理系统进行实时交互,导致了事实上的“信息孤 ”UjJ o在周明刚的“VC++实现MSC. Patran 二次开发的方法研究” [I]中描述了常见的三种基于Patran的功能扩展应用的处理方法第一种是利用VC++生成会话文件控制Patran。首先通过在Patran中录制和利用VC++控制编写相结合的方式生成会话文件,然后在Patran中播放生成的会话文件执行批处理操作。这种方式不能调用Patran的图形界面显示的函数,无法进行用户交互。第二种是利用Patran提供的开发接口,在Patran主菜单中挂载自定义菜单,点击相应的菜单项实现预期的功能。这种方式是将全部业务功能的使用在Patran中操作,无法应对复杂的业务系统需求。第三种是部分业务功能在Patran之外用其他语言实现,部分功能在Patran中二次开发实现,通过修改Patran的“Patran. EventMaps”配置文件,将相应的功能定义成快捷键,然后通过Patran之外模块向Patran发送模拟键盘消息来调用Patran中二次开发的功能。此方式将Patran的优势与其他语言的优势结合,更好的实现业务需求;但会对用户的patran环境做更改,另外这种集成方式实质上还是单向的让Patran执行相应的指令,无法获取指令运行进度及结果,在与外部应用系统的交互性上有欠缺。总之,当前的Patran集成开发方法均不能很好的实现外部应用系统与Patran的交互操作,从而无法实现Patran与外部数据系统的数据流共享。
技术实现思路
有鉴于此,本专利技术提供了一种基于Windows消息机制的MSC. Patran集成方法,能够将外部应用系统与Patran形式上集成为一体,供用户方便地通过外部系统调用Patran环境。本专利技术的一种基于Windows消息机制的外部应用系统与MSC. Patran的交互方法,基于Windows消息机制生成的集成控制系统将外部应用系统与MSC. Patran建立连接,所述集成控制系统中包括集成接口初始化模块、命令调用及运行结果监听模块和命令伺服模块,具体交互方法如下步骤1、根据用户的具体需要,在MSC. Patran环境中编写PCL函数,将生成的多个PCL函数编译后存储在集成控制系统中的自定义函数库中;针对每个PCL函数,将其可能的运行结果存储到集成控制系统中的运行结果分析库中;步骤2、集成接口初始化模块调用Windows相应命令启动MSC. Patran,获得当前运行的MSC. Patran进程,然后将所述的自定义函数库加载到MSC. Patran中;步骤3、命令调用及运行结果监听模块调用Windows底层函数依次获取MSC.Patran命令行窗口、命令行历史记录窗口、图形显示区窗口的句柄,将包含命令行窗口、命令行历史记录窗口和图形显示区窗口的MSC. Patran主窗口嵌入外部应用系统的界面中;步骤4、当用户需要完成某项功能时,在外部应用系统中点击相应的菜单或按钮,该菜单项或按钮对应一个或者多个即将发送给MSC. Patran主窗口的PCL函数;步骤5、命令调用及运行结果监听模块利用Windows消息机制,向MSC. Patran的命令行窗口发送WM_SETTEXT消息,该WM_SETTEXT消息包含用户选择的一个或者多个PCL函数的调用命令,然后再向MSC. Patran的命令行窗口发送以VK_RETURN作为参数的WM_KEYDOffN消息,由此模拟用户在MSC. Patran命令行窗口输入命令的操作;MSC. Patran接收到包含用户选择的一个或者多个PCL函数的调用命令后,按顺序运行所述PCL函数,并将命令执行结果输出到命令行历史记录窗口 ;步骤6、命令调用及运行结果监听模块对MSC. Patran是否完成命令执行进行校验,具体步骤为S601、设置最大校验次数,校验次数清零;S602、判断校验次数是否超出S601中设置的最大校验次数,如果是,执行步骤S604 ;如果否,执行步骤S603 ;S603、在Windows消息机制下,向MSC. Patran命令行窗口发送WM_GETTEXT消息,获得MSC. Patran命令行窗口字符;判断命令行窗口字符是否为空,确认是否将命令行窗口中的命令执行完毕,如果是,执行步骤7 ;如果否,校验次数累计一次,然后执行S602 ;S604、将错误信息发送给外部应用系统;步骤7、命令调用及运行结果监听模块对历史记录进行监听S701、调用Windows底层函数,获取MSC. Patran中命令行历史记录中的一个或多个命令的执行进度和执行结果;S702、将S701获得的执行结果与所述的运行结果分析库中相应的可能运行结果对比,获得命令运行结果,然后将命令运行结果和执行进度发送到外部应用系统;当MSC. Patran中的自定义函数库中的PCL函数无法完成用户需要的功能时,MSC.Patran通过spawn函数调用集成控制系统命令伺服模块中的接口程序,完成对外部应用系统功能的调用。本专利技术具有如下有益效果1、通过建立集成控制系统将外部应用系统和Patran形式上融为一体,克服了现有技术不能通过外部应用系统直接调用Patran的缺陷;2、动态加载用户自定义开发的自定义函数库,对Patran本身的配置文件不作任何修改,对用户环境的影响最小化;同时,方便用户调用相应函数,提高处理速度;3、在外部应用系统的流程步骤中对Patran发送命令消息,通过监控Patran执行进度及结果,控制整个业务运行流程,保证业务合理正确地运行通畅;4、通过Patran中spawn函数调用外部应用系统相关进程,进一步实现与外部应用系统的双向交互;5、由于本专利技术直接调用Windows API底层接口函数,因此本方法适用于Windows平台下的多种开发语言,例如VC++、C#、VB、Delphi等,适用范围广。综上,用本专利技术的集成方法,可以使Patran与其他业务系统实现数据融合共享,达到Patran与外部应用系统的深度集成,易于利用其他平台或语言的优势,开发集成度高的应用系统。附图说明图1为本专利技术的原理框图。具体实施例方式下面结合附图并举实施例,对本专利技术进行详细描述。本专利技术的重点在于充分利用Windows操作系统的消息运行机制以及Patran软件自身特点,对Patran进行自动化控制,实现了 Patran与外部业务系统之间的数据双向传递。本实施方法采用Visual StudiolO. 0平台下C#语言实现,其他编程语言实现方法类似,基于Windows消息机制生成的集成控制系统将外部应用系统与MSC. Patran本文档来自技高网
...

【技术保护点】
一种基于Windows消息机制的外部应用系统与MSC.Patran的交互方法,其特征在于,基于Windows消息机制生成的集成控制系统将外部应用系统与MSC.Patran建立连接,所述集成控制系统中包括集成接口初始化模块、命令调用及运行结果监听模块和命令伺服模块,具体交互方法如下:?步骤1、根据用户的具体需要,在MSC.Patran环境中编写PCL函数,将生成的多个PCL函数编译后存储在集成控制系统中的自定义函数库中;针对每个PCL函数,将其可能的运行结果存储到集成控制系统中的运行结果分析库中;?步骤2、集成接口初始化模块调用Windows相应命令启动MSC.Patran,获得当前运行的MSC.Patran进程,然后将所述的自定义函数库加载到MSC.Patran中;?步骤3、命令调用及运行结果监听模块调用Windows底层函数依次获取MSC.Patran命令行窗口、命令行历史记录窗口、图形显示区窗口的句柄,将包含命令行窗口、命令行历史记录窗口和图形显示区窗口的MSC.Patran主窗口嵌入外部应用系统的界面中;?步骤4、当用户需要完成某项功能时,在外部应用系统中点击相应的菜单或按钮,该菜单项或按钮对应一个或者多个即将发送给MSC.Patran主窗口的PCL函数;?步骤5、命令调用及运行结果监听模块利用Windows消息机制,向MSC.Patran的命令行窗口发送WM_SETTEXT消息,该WM_SETTEXT消息包含用户选择的一个或者多个PCL函数的调用命令,然后再向MSC.Patran的命令行窗口发送以VK_RETURN作为参数的WM_KEYDOWN消息,由此模拟用户在MSC.Patran命令行窗口输入命令的操作;MSC.Patran接收到包含用户选择的一个或者多个PCL函数的调用命令后,按顺序运行所述PCL函数,并将命令执行结果输出到命令行历史记录窗口;?步骤6、命令调用及运行结果监听模块对MSC.Patran是否完成命令执行进行校验,具体步骤为:?S601、设置最大校验次数,校验次数清零;?S602、判断校验次数是否超出S601中设置的最大校验次数,如果是,执行步骤S604;如果否,执行步骤S603;?S603、在Windows消息机制下,向MSC.Patran命令行窗口发送WM_GETTEXT消息,获得MSC.Patran命令行窗口字符;判断命令行窗口字符是否为空,确认是否将命令行窗口中的命令执行完毕,如果是,执行步骤7;如果否,校验次数累计一次,然后执行S602;?S604、将错误信息发送给外部应用系统;?步骤7、命令调用及运行结果监听模块对历史记录进行监听:?S701、调用Windows底层函数,获取MSC.Patran中命令行历史记录中的一个或多个命令的执行进度和执行结果;?S702、将S701获得的执行结果与所述的运行结果分析库中相应的可能运行结果对比,获得命令运行结果,然后将命令运行结果和执行进度发送到外部应用系统。...

【技术特征摘要】
1.一种基于Windows消息机制的外部应用系统与MSC. Patran的交互方法,其特征在于,基于Windows消息机制生成的集成控制系统将外部应用系统与MSC. Patran建立连接,所述集成控制系统中包括集成接口初始化模块、命令调用及运行结果监听模块和命令伺服模块,具体交互方法如下 步骤1、根据用户的具体需要,在MSC. Patran环境中编写PCL函数,将生成的多个PCL函数编译后存储在集成控制系统中的自定义函数库中;针对每个PCL函数,将其可能的运行结果存储到集成控制系统中的运行结果分析库中; 步骤2、集成接口初始化模块调用Windows相应命令启动MSC. Patran,获得当前运行的MSC. Patran进程,然后将所述的自定义函数库加载到MSC. Patran中; 步骤3、命令调用及运行结果监听模块调用Windows底层函数依次获取MSC. Patran命令行窗口、命令行历史记录窗口、图形显示区窗口的句柄,将包含命令行窗口、命令行历史记录窗口和图形显示区窗口的MSC. Patran主窗口嵌入外部应用系统的界面中; 步骤4、当用户需要完成某项功能时,在外部应用系统中点击相应的菜单或按钮,该菜单项或按钮对应一个或者多个即将发送给MSC. Patran主窗口的PCL函数; 步骤5、命令调用及运行结果监听模块利用Windows消息机制,向MSC. Patran的命令行窗口发送WM_SETTEXT消息,该WM_SETTEXT消息包含用户选择的一个或者多个PCL函数的调用命令,然后再向MSC. Patran的命令行窗口发送以VK_RETURN作为参数的WM_KEYDOWN消息,由此模拟...

【专利技术属性】
技术研发人员:宋文龙魏平谢政王嘉春刘霞赵寒袁义徐晨光张立强张亮
申请(专利权)人:北京空间飞行器总体设计部
类型:发明
国别省市:

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

1