重新编译EDK2工具的方法(C语言部分)

EDK2 在编译过程中会用到很多工具,比如编译处理Setup菜单的 VfrConmpiler.exe。部分工具是C编写的,部分是Python编写的。本文介绍如何重新编译Windows下面,C编写的这类工具。全部的工具存放在 BaseTools 目录下。Windows编译过程中用到的工具可以在 BaseTools\Bin\Win32下面找到。(实际上我只在Windows下编译过 EDK2)

编译的方法是:

1. 运行EDK2代码根目录下的 edksetup.bat
2. 进入BaseTools目录下运行 toolsetup.bat
3. 运行NMake即可全部重新编译

运行[......]

阅读全文

改动代码提取器 1.1

在上一版的基础上进行了升级,加入和修改了如下功能

1.使用运行目录下的INI文件,保存每次搜索的 Tag String 和 文件类型,以及文件最后运行时的窗口位置和大小

2.加入文件是否为 Unicode 的判断,比如,目前使用的 *.uni 就是 unicode文件在上一版无法正常处理

3.任务完成时在

参考:

1. http://www.2cto.com/kf/201208/149623.html 判断文件的编码格式(Unicode;Utf-8;Ansi;Unicode Big Endian)[......]

阅读全文

改动代码提取器

这是一个自动提取改动代码的工作,更准确的说是设计给EDK2代码使用的。比如,你在一套代码中做出了改动,只要改动文件有相应的注释,工具找到这样的注释标记即可将改动后的文件提取到上一层目录中同样的子目录下。程序会扫描如下文件的内容来检测是否有标记信息 *.c;*.h;*.bat;*.xml;*.txt;*.asl;*.inf;*.dsc;*.fdf;*.bat;*.asm;*.uni;*.vfi。

例如:修改的代码位于 c:\working\bkc26\ 下,代码中的改动用 Tag_SC01,Tag_SC02 这样的进行标记后,选择目录,使用Go 按钮进行分析后,找到的修改后的文件[......]

阅读全文

解决 zliab1.dll 错误的办法

zlib 是一款开源的数据压缩库。很多软件都选用了这款软件来实现自己的功能。开源软件的很大特点就是版本众多,如果你遇到了如下图所示的错误

“The ordinal 55 could not be located in the dynamic link library zlib1.dll”(英文环境)

ord55

或者“无法定位序数 55 于动态链接库 zlib1.dll 上”(中文环境)

error

那么你需要找一个正确的 zlib1.dll 版本放在你运行的程序目录下。此外,还可能遇到 “无法定位序数 73 于动态链接库 zlib1.dll 上” 等等

下载这个 zlib1[......]

阅读全文

VirtualBox WinXP 蓝屏问题

在 VirtualBox 中安装了一个 Windows XP,结果遇到每次进入桌面就重启动的问题。能够进入“安全模式”。于是用 WinDBG 分析Dump File,结果如下

virbsod

是 "IntelPPM.sys" 导致的。

在网上搜索 VirtualBox IntelPPM.sys 发现很多人遇到这样的问题。有人建议直接删除这个SYS文件,我试验过并不好用,最后是从安全模式进入,启动注册表

在下面的键值中,将 Start 修改为 4

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Intelppm

再次[......]

阅读全文