MspEmu W.I.P

作者尝试在项目中嵌入Python解释器遇到困难,转而成功实现了Lua和Tcl的嵌入。讨论了通过创建全局对象来在不同模块间传递数据的方法,并增加了输出控制台功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我终于放弃了嵌入Python解释器的努力,反正经过Lua和Tcl两种语言的嵌入工作,看到Python的简直想吐,为什么要弄得这么复杂?先把这部分屏蔽掉吧!
另外,为了从主界面模块传递一些变量给外面的解释器模块,花了不少时间,想了好久,试了好久,最后终于找到一种看起来比较难看,但总算可以通过的方法:另外在建一个单元,在头文件中声明一个新的类,在cpp文件创建一个全局的对象,然后其它地方都可以通过extern来引用这个对象了,主界面模块和几个解释器模块都通过这个全局对象来传递数据,并且有些操作可以移到这个类中实现,比如对输出控制台和显示界面的操作。
添加了一个输出控制台,原来一直把脚本的输出信息通过调试字符串(OutputDebugString)来输出,现在改了一下,都输出到主窗体中一起显示的一个RichEdit框中,把它当成一个输出控制台,只是为了显示脚本的字符串输出。把Lua和Tcl对ListView的操作也添加上了,其实就四个操作:清空ListView,添加列,添加一条记录,添加子记录。想想暂时应该够用了,但是还没有调试。
最郁闷的,还是那个嵌入Python有问题!看看等什么时候有空了,有闲心了,再仔细研究一下,可以考虑一下用VC作中转,或者用Boost::Python也可以试试。
看到一款国产的共享软件,叫“按键精灵”,觉得有点意思,不过呢,是“共享”,意味着money,看介绍,它的用户数非常庞大,真是只有想不到,没有做不到,这么个小程序……
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值