ABC typedef proto :DWORD,:DWORD       ;这是什么意思啊???
CDE typedef ptr ABC         ;这又是什么意思啊???

这两句其实意思是完全一样的,可以直接改成:
ABC proto :DWORD,:DWORD
CDE proto :DWORD,:DWORD

那为什么要这么做呢?这是一种结构化编程思想,比如,如果有很多函数,都是针对某一个模块的,参数个数永远都一样,那么就可以定义一个通用类型:
XXX typedef PROTO :DWORD,:DWORD

然后,别的函数声明,就不需要每一个都这样定义,只要简单地:
* typedef ptr XXX

这样,当XXX有变化时,就不需要一个一个去修改别的定义。。