我问这个问题是因为,发现RegCreateKeyEx也分为RegCreateKeyExA和RegCreateKeyExW求大虾解释!

解决方案 »

  1.   

    没研究过,估计是UNICODE吧,Windows内部处理都是UNICODE的。API分A和W,是针对调用方而言的,你用RegCreateKeyExA就要传入ANSI字符,用RegCreateKeyExW就要传入UNICODE字符,而系统内部怎么存储其实你不用关心的。
      

  2.   


    绝大多数Windows API都是这样用宏定义了的,只有少数API只有w的形式,不过很少
    这样作的原因是为了兼容旧的ANSY程序代码,让程序不用修改同时支持ANSY与UNICODE编译,如果定义了_UNICODE和UNICDE就用w的版本,否则用A的版本,A版本经过简单转换最后还是调用W版本。