winbondowen 发表于 2008-6-24 16:30:52

EFI 编程交流

小弟最近在学UEFI, 用EDK尝试着写点东西。
   希望大家一起交流交流。
   这是最简单一个程序,在屏幕上显示:"Hello World"
   这是直接使用gST-Conout功能实现。
   但使用PrintXY( 3, 4, NULL, NULL, L"Hello World");却无法实现。

   PrintXY(3, 4, NULL, NULL, L"JANY lu");    //debug发现执行后的返回值为 0
   Out->OutputString (Out, L"Hello World");//实现输出

   小弟不知道如何调用EFI封装好的这些输出输入库。
   希望大侠指点一下。

bini 发表于 2008-6-24 16:38:48

PrintXY是EfiPrintLib里的东西,看看你的程序的inf文件,有没有把EfiPrintLib加进来。

winbondowen 发表于 2008-6-26 21:37:39

问题解决了。
加入这个PrintLibLite库后还是不行。
编译执行不会有错,但他就是不显示。
现在我将print.c, print.h放到同一个目前,
直接写到make.inf中。就可以显示了。
当然,print.h要改变一下,不然找不到函数的申明。

明天了如何输入,但不明白为什么用printliblite不能得到输入功能。
如果是生成PrintLibLite的inf文件部分。
用不成功,只能自己改变。---这个想法是在下班路骑自行车时想到的。

BASE_NAME         = PrintLibLite
COMPONENT_TYPE      = LIBRARY


BoxDraw.c
Print.c
Print.h
StdErr.c
Unicode\PrintWidth.h
Unicode\SPrint.c

bothsky1 发表于 2008-6-27 11:19:46

lz
你的printXY函数是不是用Grouph 这个protocol去直接画屏幕?

winbondowen 发表于 2008-6-29 15:26:36

printxy不是在grouph中的,我加载过,没有效果.看source code,这具函数是在PrintLibLite中,
可能是其他原因,显示了但没有被看到,显示到其他的page中了。
重写一个print的东西,就可以输出。

print()是在grouph,可以正常使用。

chen_20064857 发表于 2012-4-25 16:51:59

回复 2# bini 的帖子

高手,请教你一个很简单的问题,用EDK编译hello world的时候报的错误,找了很久没找出原因,希望你不吝赐教! 错误如下:
build...
:error 7000:Failed to start command
                C:\Program Files\VS 9.0\VS\bin\nmake.exe /nologo tbuild [我的路径中的PeiMemoryAllocationLib]

build...
: error F0002:Failed to build module
         我的路径\PeimemoryAllocationLib.inf

请指教啊

chen_20064857 发表于 2012-4-28 07:56:32

回复 2# bini 的帖子

南狼,你好,请教你一个问题,我用Print打印东西,但是提示报错,并且我已经将efilib这个库包含了,错误如下
libefi.lib(print.obj) : error LNK2019: unresolved external symbol ___security_co
okie referenced in function __Print
libefi.lib(print.obj) : error LNK2019: unresolved external symbol @__security_ch
eck_cookie@4 referenced in function __Print
D:\UEFI_software\original\Build\NT32\DEBUG_VS2008\IA32\ShowTime.dll : fatal erro
r LNK1120: 2 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN
\link.EXE"' : return code '0x460'
Stop.

请指教啊!!!!!!!!!!!!!多谢!
页: [1]
查看完整版本: EFI 编程交流