HLK测试中安装Application verifier 后遇到的问题

在进行HLK测试过程中遇到无法通过Fingerprintreaderlogotest-runsequencetests的问题,经过排查发现是由于特定环境配置导致。通过调整captureData->WinBioHresult的状态值并理解其背后原因,最终解决了测试难题。

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

最近在做HLK测试,之前同事搭建的测试环境,自己只是调代码,后来自己接手测,重建了一个环境,在测试Fingerprint reader logo test->run sequence tests时怎么也通不过,通过打印日志,就是停在第一次capturedata完成之后的complete函数时,同时用以前测试能通过的驱动进行测试,也有同样的问题,当时考虑的时搭建的环境有问题,问之前的同事如何搭建的,他说自己也忘了,当时是微软的人指导搭建的,没有仔细看明白,所以自己摸索一下搭建环境,测试端从服务端选择setupamd64,安装完后测试端多了四个程序,我优先把application verifier x64 external package卸载掉,再做测试就通过了,当时心里不知有多高兴,等把所有的测试项测试通过,告诉微软的人说,我把那个卸载了测试就通过了,可微软的不干了,他说还没有通过hlk的客户这么做,我这样相当于绕过了他设置的测试障碍,到时送到美国去review还是通不过,到时打回来,还是要重做,即浪费了钱也浪费了时间,他这样一说,全身不高兴了,但没有办法,只能重来,通过各种工具,反复查看log和各种尝试,折腾了几天,最后总算是把问题找到,还是要找log查看问题停在哪个地方,因为在complete之后报错,所有把之前的两句

captureData->PayloadSize = RequiredBufferSize;
captureData->WinBioHresult = WINBIO_E_NO_CAPTURE_DATA;

屏蔽掉,果然不再报错,但captureData->PayloadSize = RequiredBufferSize;屏蔽会导致框架不知道分配内存的大小,显然是不行的,当时以为是分配的内存过大,导致框架分配不了这么多内存而当掉,但设置成0x04的倍数值不管多少或多大都不行,但是在此尝试的过程中却发现,同时屏蔽captureData->WinBioHresult = WINBIO_E_NO_CAPTURE_DATA;时,RequiredBufferSize怎么改都没问题,但一打开,就有问题,最后直接只屏蔽captureData->WinBioHresult = WINBIO_E_NO_CAPTURE_DATA;,不修改RequiredBufferSize,问题得到解决。

captureData->WinBioHresult = WINBIO_E_NO_CAPTURE_DATA;这个还回的就是一个状态,为什么这个状态在平时没有报错,添加了application verifer时就报错昵,网上查application verifer的功能就是起堆栈,内存,寄存器等监控作用,这个问题现在还不明白,有兴趣的朋友一起沟通。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值