下载uGUI源代码


uGUI源代码地址:https://bitbucket.org/Unity-Technologies/ui

下载代码工具:tortoisehg-3.6.2-x64.msi

http://pan.baidu.com/s/1jGQaAuM

使用自己编译的uGUI


1.首选下载uGUI代码,如何下载参考相关文档。

2.使用vs2012打开解决方案UISystem.sln,看到三个工程。

  • UnityEditor.UI工程:生成Edtior/UnityEditor.UI.dll,主要是包含各UGUI控件在Editor的Inspector功能。
  • UnityEngine.UI工程:生成Standalone/UnityEngine.UI.dll,主要是UGUI在发布包中使用的功能。
  • UnityEngine.UI-Editor工程:生成UnityEngine.UI.dll,主要是UGUI在编辑器中使用的功能。

3.修改DLL输出路径

UnityEditor.UI工程输出路径:d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\Editor\
UnityEngine.UI工程输出路径:d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\Standalone\
UnityEngine.UI-Editor工程输出路径:d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\
 
到这步按F7就可以把uGUI代码编译出的dll给unity使用。

uGUI单步调试


1.使用工具pdb2mdb.exe生成mdb文件
不过在Unity中还是无法调试到uGUI的源代码中,因为刚刚编译出来的调试信息文件是pdb,而mono的调试信息文件是mdb。因此我们需要用pdb2mdb工具将它进行。转工具:d:\Program Files\Unity\Editor\Data\MonoBleedingEdge\lib\mono\4.5\pdb2mdb.exe
 
把CMD工作目录转到d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem。然后开始转换。

但还是报错了:

未经处理的异常:  System.IO.FileNotFoundException: 未能加载文件或程序集“Mono.Cec
il, Version=0.9.5.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756”或它的某
一个依赖项。系统找不到指定的文件。
   在 Pdb2Mdb.Driver.Main(String[] args)

解决方法:

下一个新的pdb2mdb.exe工具
 
终于成功了:
可以看到目录d:\Program Files\Unity\Editor\Data\UnityExtensions\Unity\GUISystem\下生成了UnityEngine.UI.dll.mdb文件。
 
2.开始单步调试:
A.下好断点。
 
B.运行Unity3D测试例子。
 
C.把dll附加到unity中去
 
4.做相应操作触发断点。(我这里是点击测试例子的按钮)
 
注意点:

1.开代理工具Proxifier后。然后Attach Unity Debugger就不成功了。
 
 
 
 
leofang
2016年1月12日,星期二
 
 

附件列表

如何使用vs2012单步调试uGUI(unity3d 5.3f4)的更多相关文章

  1. Hawk 4.7 单步调试

    单步调试的意义 已经编写的工作流,可能会因为某些外界环境的变化而出错,此时需要排除错误,我们可以使用单步调试. 单步调试的本质,相当于只使用前n个模块,这样就能看到每个步骤下,流的改变. 例子 还是上 ...

  2. VS2012的调试插件Image Watch,opencv编程神器

    今天配置 opencv3.0 时无意中看到 Image Watch 这样一个VS2012的调试插件,适用了下,特别好用. 部分链接: Image Watch 的 下载链接 OpenCV关于ImageW ...

  3. 关于 MonoDevelop on Linux 单步调试问题的解决

    在 MonoDevelop 中默认是关闭对外部程序集(.dll)的调试,可通过如下步骤来解决这个问题. 通过菜单[Edit]-[Preferences]-[Debugger]进入到调试器的设置页,把“ ...

  4. jeecg单步调试

    自己没本事写开发平台,用别人的又各种担心,想学着别人弄个单步调试,老是出现这个"source not found"-- 百度各种方法都搞不定,担心是自己安装错了?这个jeecg本身 ...

  5. Android Studio中JNI程序的单步调试和日志打印

    近日有个算法(检测碰撞)需要用C++实现,目的是IOS和ANDROID中共享同一段程序. 下面说说android调用这段程序过程中遇到的一些事情.(过程中网上搜索了一些相关文章,大部分说的是eclip ...

  6. idea导入maven项目,web browser远程单步调试

    问题:之前用idea14.1.3导入maven项目后,maven的dependencies不能自动解决依赖,到处都是红色的红线,看着就受不了.虽然不影响命令行编译,但是看着实在是不爽.总结下面几小步: ...

  7. VC++6.0 Debug单步调试

    相信大家对谭浩强童鞋都不陌生,想当年,是他 引领我们步入了C的殿堂,我们从他那里学会了如何写代码,他却没有教我们如何Debug,而我们伟大的老师,也对此只字不提.相信很少有人可以一次性写出 完全正确的 ...

  8. 一种 Visual Studio 不能单步调试(函数调用)问题

    Visual Studio每次出"莫名其妙的问题"的时候都非常棘手.这次遇到这么一个问题: 新建的Windows的控制台窗口程序(C++),编译链接运行没有问题.但是想单步调试一下 ...

  9. Ecplise + Xdebug 一波三折终于能单步调试了

    http://my.oschina.net/012345678/blog/152889 Ecplise + Xdebug 一波三折终于能单步调试了 发表于2年前(2013-08-15 15:50)   ...

随机推荐

  1. Pku1149 PIGS 卖猪

    题目链接:ヾ(≧∇≦*)ゝ Description Emmy在一个养猪场工作.这个养猪场有M个锁着的猪圈,但Emmy并没有钥匙. 顾客会到养猪场来买猪,一个接着一个.每一位顾客都会有一些猪圈的钥匙,他 ...

  2. Mininet 系列实验(七)

    实验内容 本实验在基于 Mininet 脚本的不同拓扑环境下使用 OpenDaylight 控制交换机行为.任务一:一台交换机两台主机,从1端口进入的数据流转发到 2 端口,从 2 端口进入的数据流转 ...

  3. bug2 The method of type must override a superclass method解决方式(去掉@override可以)

    @Override 时出错误: 解决办法是: 一.                                                                     因为你的Co ...

  4. pytorch文档阅读(一)

    本章主要针对pytorch0.4.0英文文档的前两节,顺序可能有些不一样: torch torch.Tensor 张量 Tensors Data type CPU tensor GPU tensor ...

  5. bashttpd使用手册

    http://note.youdao.com/noteshare?id=15775dca9fcdc7326e80158082572ed5

  6. 「Vue」过滤器

    #全局过滤器要写在var vue之前<td>{{item.time | ctime }}</td>Vue.filter('ctime'(过滤器名),function(data( ...

  7. P3014 [USACO11FEB]牛线Cow Line && 康托展开

    康托展开 康托展开为全排列到一个自然数的映射, 空间压缩效率很高. 简单来说, 康托展开就是一个全排列在所有此序列全排列字典序中的第 \(k\) 大, 这个 \(k\) 即是次全排列的康托展开. 康托 ...

  8. java基础-基本的输入与输出

    java基础-基本的输入与输出 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.基本的输出 基本的输出,System.out 就是系统的标准输出设备,默认为显示器. 1>. ...

  9. eclipse插件之Findbugs、Checkstyle、PMD安装及使用

    eclipse插件之Findbugs.Checkstyle.PMD安装及使用 一.什么是Findbugs.checkstyle.PMD Findbugs.checkstyle和PMD都可以作为插件插入 ...

  10. 权限 mock location

    1.集成环信的时候,该权限报错: mock location权限是是“允许程序创建模拟位置”,主要是提供用于测试.打包的时候并不需要,所以解决办法分两步: 1.声明tools 2.添加忽略: