关于 typedef proto(转)及其他

本文介绍了在调试同一动态链接库中的钩子程序及其关联子程序时的一些实用技巧。重点讨论了子程序放置的位置对程序稳定性的影响,并提供了一种有效的错误排查方法。

_ProtoGetProcAddress typedef proto :dword,:dword 
  函数原型声明,告诉编译器_ProtoGetProcAddress 是个函数(proto),有两个参数,都是dword类型 

_ApiGetProcAddress  typedef ptr _ProtoGetProcAddress 
  声明ApiGetProcAddress,它是一个函数指针类型 

这些就相当于定义结构体一样,是创建新的变量类型

 

 

 

 

晚上在调试钩子程序的时候发现一个问题 假如安装钩子和实现功能的子程序都处在同一动态链接库中 那么实现功能的这段子程序应放在安装钩子的子程序之前 要不然会出错的 找了半天 算是一个不小的发现了

 

在不知道是动态链接库asm文件还是exe文件文件出错的时候 可以先将以前生成的动态链接库文件删除 再在文件中一步一步将代码删除比较生成情况 进而了解到问题出在哪

 

 

[ 56% 5771/10132] //external/python/cpython3/Lib:py3-stdlib Precompile the python sources of py3-stdlib [linux_glibc] FAILED: out/soong/.intermediates/external/python/cpython3/Lib/py3-stdlib/linux_glibc_x86_64_PY3/py3-stdlib.srcszipprecompiled LD_LIBRARY_PATH="out/soong/.intermediates/external/sqlite/dist/libsqlite/linux_glibc_x86_64_shared" PYTHONPATH=out/soong/.intermediates/external/python/cpython3/Lib/py3-stdlib/linux_glibc_x86_64_PY3/py3-stdlib.py.srcszip/internal/stdlib out/soong/.intermediates/prebuilts/build-tools/prebuilt_py3-launcher/linux_glibc_x86_64/py3-launcher build/soong/python/scripts/precompile_python.py out/soong/.intermediates/external/python/cpython3/Lib/py3-stdlib/linux_glibc_x86_64_PY3/py3-stdlib.py.srcszip out/soong/.intermediates/external/python/cpython3/Lib/py3-stdlib/linux_glibc_x86_64_PY3/py3-stdlib.srcszipprecompiled /bin/sh: 1: out/soong/.intermediates/prebuilts/build-tools/prebuilt_py3-launcher/linux_glibc_x86_64/py3-launcher: not found [ 57% 5796/10132] //frameworks/base:platformprotos protoc 5 [linux_glibc common] frameworks/base/core/proto/android/server/usagestatsservice.proto:20:1: warning: Import frameworks/base/core/proto/android/privacy.proto is unused. frameworks/base/core/proto/android/server/windowmanagertransitiontrace.proto:21:1: warning: Import frameworks/base/core/proto/android/server/windowmanagerservice.proto is unused. [ 57% 5797/10132] //frameworks/base:platformprotos protoc 4 [linux_glibc common] frameworks/base/core/proto/android/nfc/nfc_service.proto:23:1: warning: Import frameworks/base/core/proto/android/nfc/ndef.proto is unused. frameworks/base/core/proto/android/os/batteryusagestats.proto:22:1: warning: Import frameworks/proto_logging/stats/enums/os/enums.proto is unused. frameworks/base/core/proto/android/server/accessibility.proto:19:1: warning: Import frameworks/base/core/proto/android/typedef.proto is unused. [ 57% 5799/10132] //frameworks/base:platformprotos protoc 0 [linux_glibc common] frameworks/proto_logging/stats/atoms/display/display_atoms.proto:22:1: warning: Import frameworks/proto_logging/stats/enums/display/enums.proto is unused. 15:36:45 ninja failed with: exit status 1 编译报错,请分析解决
最新发布
11-25
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值