EDA365电子工程师网

标题: allegro 16.6 ipcBeginProcess调不出程序。 [打印本页]

作者: ifuture    时间: 2013-7-1 18:07
标题: allegro 16.6 ipcBeginProcess调不出程序。
在win7 64位的环境下。打开allegro 16.6。键入skill。然后输入 id =  ipcBeginProcess("notepad")  打不开记事本程序,但在进程中(按ctrl+alt+delete打开windows任务管理器,可以看到notepad.exe *32进程。

在同样的环境下。打开打开allegro 15.51或allegro16.3。键入skill。然后输入 id =  ipcBeginProcess("notepad") 就可以打开记事本程序。

不知是否有高手知道原因所在?
作者: betamelody    时间: 2013-7-2 09:08
ipcBeginProcess是进程活动和通信,如果是调用外部程序的话,试试:
axlHttp("notepad")
作者: ifuture    时间: 2013-7-2 10:36
是的。我需要进程活动和通信。我目前编的程序。出现了和notepad一样的问题。为方便查问题,所以举了notepad的例子。这个问题在allegro 16.6上才发现,其他版本目前没有发现有这个问题。
作者: betamelody    时间: 2013-7-2 11:26
既然在进程里已经出现了notepad,那么这个进程应该是调用成功了,只是没有出现界面

程序有没有编译为64位
作者: ifuture    时间: 2013-7-2 12:38
本帖最后由 ifuture 于 2013-7-2 12:41 编辑

win 7 系统下自带有 32位的notepad 和 64位的notepad。试过了。一样的问题,都是进程有。界面出不来。
就不清楚。16.6做了哪些方面的限制,连notepad程序都界面出不来。
作者: betamelody    时间: 2013-7-2 13:20
为什么一定要有界面
作者: ifuture    时间: 2013-7-2 13:37
本帖最后由 ifuture 于 2013-7-2 13:39 编辑

嗯!程序规模很大。用skill做面板就太麻烦了。而用微软的软件工具VC VB等语言做界面就简单多了。
作者: betamelody    时间: 2013-7-2 13:43
ipcBeginProcess的方式不能做成block模式,在操作窗口的同时前台数据可能发生变化,进程间交互的速度和响应时间也比较慢,我建议LZ做成plugin的外挂形式,调用DLL
作者: ifuture    时间: 2013-7-2 13:47

plugin的外挂形式,调用DLL。这个如何理解,能否说的稍微详细些?
作者: betamelody    时间: 2013-7-2 14:21
%CDSROOT%\share\pcb\examples\skill\plugin
这里面有官方的例子,可以看一下
作者: ifuture    时间: 2013-7-2 14:46
多谢了!有空学习下,是否也可以实现和外部界面程序的交互。

刚才试了在xp系统下的allegro 16.6也是存在类似问题。
作者: betamelody    时间: 2013-7-2 14:49
ifuture 发表于 2013-7-2 14:46
多谢了!有空学习下,是否也可以实现和外部界面程序的交互。

刚才试了在xp系统下的allegro 16.6也是存在 ...

可以实现
作者: ifuture    时间: 2013-7-3 16:31
详细看了plugin部分的相关文档。plugin只针对C或C++的程序,编译成dll后外挂加入。但我的界面程序都是用C#编写。根本就不能编译成dll文件啊。
------ 这可如何是好。还是我理解有误?
作者: betamelody    时间: 2013-7-3 16:50
我没有试过用C#编写DLL调用(因为这个还要各种.NET framework支持),不过LZ可以用cadence提供的标准试一下,想来应该是可以的
作者: hoo    时间: 2014-2-19 15:29
貌似用VC写的exe可以正常执行,但是用C#写的就不能显示界面,楼主解决这个问题了么?
作者: ifuture    时间: 2014-2-19 15:55
到目前为止,此问题还是没有解决。
作者: hoo    时间: 2014-2-19 16:24
本帖最后由 hoo 于 2014-2-21 09:36 编辑

看来16.6版本是不能用了。。




欢迎光临 EDA365电子工程师网 (http://bbs.elecnest.cn/) Powered by Discuz! X3.2