系列4—BabeLua常见问题
BabeLua常见问题
怎样升级BabeLua?
https://babelua.codeplex.com/releases 主站下载(国外站点,速度较慢,可下载最新源码)
http://pan.baidu.com/s/1sjmC169 国内镜像(国内较快)
下载BabeLua最新版本进行覆盖安装
如何查看当前安装的BabeLua版本号?
通过VS菜单【工具】【扩展和更新】打开扩展和更新界面,找到并选中BabeLua插件,在右侧显示了当前安装的BabeLua版本号。
启动VS未能正确加载BabeLua
如果启动VS出现这样的提示,则需要到【扩展和更新】功能下卸载BabeLua,然后再重新安装BabeLua即可解决问题。
BabeLua暂未实现功能有哪些?
●代码块自动完成(如输入if后自动完成 then else end代码块)
●附加到进程调试
BabeLua不支持的功能有哪些?
●不支持远程和真机调试
不能连接到IOS,Android,WP8真机进行调试。
BabeLua采用注入宿主程序方式进行调试,可以不用修改宿主程序代码或Lua代码就能调试。不同于使用socket通信进行调试的工具(如ZeroBrane),这些工具可以实现远程和真机调试。
●不支持调试64位程序
您可以在编译exe文件时将目标平台设置为X86(即32位),使用编译出来的32位程序用来调试。
●不支持内存中的Lua代码添加断点
启动调试后“输出”窗口会显示加载的Lua文件信息,如下图:
其中tp,url,socket,@Untitled12文件均是内存中的Lua代码,目前是不能添加断点的。
main.lua,game.lua,config.lua是Lua文件,可以添加断点。
自动补全功能与VC++/C#不太一致?
自动补全功能有两种模式:“完成模式”和“建议模式”(VC++采用“建议模式”,C#默认采用“完成模式”)。
BabeLua采用的的是“完成模式”,自动补全规则如下:
●开始键入对象的名称。在可滚动的列表中显示所有的有效成员。键入时,相应的符号将突出显示。您可以通过滚动或使用箭头键浏览该列表,或者,如果知道成员名称的前几个字母,可以开始键入这些字母,直接跳至列表中的该成员。
●若要在代码中插入突出显示的成员,请按Tab或Enter。
●按Esc键,可以消除自动补全窗口。
怎样使用“Lua for Windows”执行Lua代码?
从Lua官网下载“Lua for Windows”并安装,下载地址如下:
http://luaforge.net/projects/luaforwindows
安装"Lua for Windows"可能需要预先安装VC2005运行时库,下载地址如下:
http://www.microsoft.com/en-us/download/details.aspx?id=3387
Lua scripts folder:Lua代码的路径,该目录下的所有Lua文件将在“Folder Explorer”中列出。
Lua exe path:调试时启动的exe文件路径,设置为“Lua for Windows”安装目录下lua.exe文件的路径。
Working path:工作目录,与“Lua scripts folder”一致。
Commond line:运行的Lua文件名,下图示例中运行的Lua文件名是func.lua。
启动后如果“Lua.exe”窗口一闪而过,可以在Lua文件的最后面加上一行Lua代码os.execute("PAUSE")
启动调试后无法命中断点是什么原因?
一、首先检查一下您的“解决方案管理器”中是否包含多个项目,如果有多个项目,您需要右键点击Lua项目,将其设置为启动项目。
二、调试时无法命中断点的问题,多数是因为BabeLua无法正确加载Lua文件所致,此时,BabeLua会在输出窗口中输出这个信息,如下图:
到目前为止,BabeLua是从您设置的“Lua scripts folder”目录下搜索Lua文件,然后加载Lua文件到VS调试器中。这不同于Lua虚拟机(LuaState),是有自己的Lua文件搜索规则(例如package.path)。
为了确保能正常的进行断点调试,您目前需要遵循如下过程:
(1)将需要调试的Lua代码,放到“Lua scripts folder”下,并确保目录层级正确;
(2)在“Folder Explorer”中打开Lua文件并添加断点;
三、启动调试后,查看VS“输出”窗口的输出信息,如果出现以下提示信息:
Warning 1000: Lua functions were not found during debugging session
则需要将exe文件对应的pdb文件(和exe文件同时编译出来的pdb文件)拷贝到exe文件所在目录下,然后再启动调试。
调试时观察不到所有变量的值是什么原因?
如下图,如果“监视”窗口中只显示了变量的类型,而不显示变量的值。请在“监视”窗口中点击右键,去掉“十六进制显示”的勾选项。
去掉“十六进制显示”勾选项后,结果如下图:
调试时观察table类型的变量有时候看不见其成员?
极少数情况下会出现观察table类型的变量看不见其成员。
出现的原因可能有该table下的成员有包含中文字符串或者是userdata(如cocos2d-x创建的对象)。
如果出现该现象,您又想查看table下的成员值,可以直接将table的成员拖到“监视”窗口中查看,或是鼠标移动到table的成员名称上进行查看。
同时您可以提供相关的测试数据给我们,帮助我们改进。
调试时观察cocos2d-x创建对象的值只能看到地址?
如下图,调试查看visibleSize的值为0x08FF1CD0
需要查看该cocos2d-x对象的值你可以将该对象的成员拖到“监视”窗口中查看,或是鼠标移动到该对象的成员名称上查看,如下图:
或者通过调用cocos2d-x对象的函数,返回基础类型的值(整形,字符串等)赋给变量来查看其内容,如下图:
调试过程中宿主程序异常退出原因有哪些?
(1)宿主程序本身存在异常退出的现象
先检查一下直接运行宿主程序,能否正常运行。
(2)使用了非Lua官网下载的Lua库
使用非Lua官网下载的Lua库,有可能会导致调试过程中宿主程序异常退出,向下兼容Lua5.1的库可以正常调试。
(3)其他异常退出的现象
遇到其他异常退出的情况您可以加入BabeLua QQ群,寻求帮助。
BabeLua稳定性怎样?
使用调试30-50次可能会出现1-2次crash的情况。
如果使用非Lua官网下载的Lua库,向下兼容Lua5.1的库可以正常调试。
更多经验交流,欢迎加入BabeLua QQ群:95814965
系列4—BabeLua常见问题相关推荐
- 信创办公--基于WPS的Word最佳实践系列(表格常见问题的处理)
信创办公–基于WPS的Word最佳实践系列(表格常见问题的处理) 1. 巨大表格的粘贴,超过word边界怎么办 项目背景 在我们的日常办公中,我们时常需要在excel复制表格到word文档中,但是有时 ...
- Dynatrace系列之- 标记常见问题
Dynatrace系列之- 标记常见问题 在大型环境中,系统的某些方面可能会持续触发不必要的警报.这些告警可能来自非关键组件或者是非关键情况下的资源不足的问题.通常这些问题不需要人员响应. 为了减少此 ...
- dmol3给定关键字不在字典中_Materials Studio自学系列——软件安装常见问题及解决方法...
Hello! Hello!小伙伴们!,我是新人UP Rianter.疫情期间,Rianter在学习MS的过程中发现非常有用的视频"BV1d741127UF"和"BV1h7 ...
- MATLAB从入门到精通系列之MATLAB常见问题集锦-(二)
1.在MATLABParallel Computing Toolbox中,我能使用的最大worker数是多少? 在 R2013b 之后的版本(不含)中,MATLAB Parallel Computin ...
- MATLAB从入门到精通系列之matlab常见问题集锦-(一)
1.如何修改 MATLAB 启动时的工作路径? 至少有以下三种方法: 1.MATLAB 主页->预设->常规,右侧可以设置启动时的工作路径. 2.建立 startup.m 文件,在文件中写 ...
- 信创办公--基于WPS的Word最佳实践系列(汇总目录)
信创办公–基于WPS的Word最佳实践系列(汇总目录) 本系列基于WPS的Word进行最佳实践讲解,欢迎大家学习查看哦~ 信创办公–基于WPS的Word最佳实践系列(目录的插入及更新) 信创办公–基于 ...
- 使用BabeLua3.x在cocos2d-x中编辑和调试Lua
BabeLua是一款基于VS2012/2013的Lua集成开发环境,具有Lua语法高亮,语法检查,自动补全,快速搜索,注入宿主程序内对Lua脚本进行调试,设置断点观察变量值,查看堆栈信息等功能. 如何 ...
- 六月份阶段性大总结之Doris/Clickhouse/Hudi一网打尽
点击上方蓝色字体,选择"设为星标" 回复"面试"获取更多惊喜 全网最全大数据面试提升手册! 这是个阶段性小总结,后面会持续更新. ClickHouse 「Cli ...
- Realtek RTL8762C/Realtek RTL8762D学习记录
本人基于日常工作整理编写的8762C FAQ文档,记录RTL8762C/8762D系列软件开发常见问题以及解决方案.希望它能发挥更多作用.帮到有需要的朋友. 关键字:8762CMF,8762CK,87 ...
- Linux下磁盘常见错误分析与检测工具使用
硬盘缺陷探秘 硬 盘是目前PC 系统中最主要的存储设备,同时硬盘是 PC 系统中出故障率最高的部件.用户在使用硬盘过程中,硬盘出现故障怎么办呢?如果还在质保期内,当然是 尽量找到销售商要求保修.但现 ...
最新文章
- com+ 三层布署[未成功验证]
- Android开发常用开源框架3
- hdu 1505(矩阵dp)
- 五个工业风满满的 Look-alike 算法
- 搭建一台本地json服务器
- 在Linux上将视频转换成动态gif图片 (附:ffmpeg和ImageMagick安装方法)
- 使用javamail 发送邮件
- Windows下Node.js安装及环境配置
- iOS输入框禁止输入emoji表情
- 【2020牛客寒假基础算法训练营】第三场总结
- NovelAI-WebUI安装教程
- 数据库关闭的四种方式
- 电脑能正常上网上网,某些软件不能上网
- 5个拍出可爱宝宝的方法
- 【Pytorch】rgb转lab颜色空间转换
- 《从点子到产品:产品经理的价值观与方法论》读后感
- Titan 的设计与实现
- 淘宝宝贝描述模板DIV无法使用BACKGROUND属性的终极解决方案
- 【技术备忘录】广和通ADP-L610-Arduino模块实现基于内网穿透的TCP通信
- 【Codeforces 891 E】 Lust(生成函数)