| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 802 人关注过本帖
标题:SID_NAME_USE在windows.inc中怎么添加
只看楼主 加入收藏
W32Asm
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-12-10
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
SID_NAME_USE在windows.inc中怎么添加
各位大大,我想问一下有谁用过LookupAccountName这个API函数,在32位汇编情况下,我想用这个函数,但是它的最后一个参数是指向一个SID_NAME_USE.我仔细查看了MSDN的介绍,好像这个不是STRUCT.所以不知道怎么添加到WINDOWS.INC中。

但是我的windows.inc没有含有这个SID_NAME_USE.所以请各位大大帮忙。
搜索更多相关主题的帖子: 函数 
2012-02-20 16:33
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:20 
BOOL WINAPI LookupAccountName(
  __in_opt   LPCTSTR lpSystemName,
  __in       LPCTSTR lpAccountName,
  __out_opt  PSID Sid,
  __inout    LPDWORD cbSid,
  __out_opt  LPTSTR ReferencedDomainName,
  __inout    LPDWORD cchReferencedDomainName,
  __out      PSID_NAME_USE peUse
);

typedef enum _SID_NAME_USE {
  SidTypeUser             = 1,
  SidTypeGroup,
  SidTypeDomain,
  SidTypeAlias,
  SidTypeWellKnownGroup,
  SidTypeDeletedAccount,
  SidTypeInvalid,
  SidTypeUnknown,
  SidTypeComputer,
  SidTypeLabel
} SID_NAME_USE, *PSID_NAME_USE;

汇编里面可以说没有类型的概念 这里返回的枚举类型的指针其实就是一个指向双字的指针(PSID_NAME_USE) 只不过这个双字的值是上面的那些 SidTypeUser 一类的

而 SidTypeUser 的本质不过是数字 也就是 1 2 3 这样的

得到值 与上面的比较就可以了

SID_NAME_USE 也可以扩充到windows.inc里 也可以直接定义在程序中

SidTypeUser = 1
SidTypeGroup = 2
……

就可以了
2012-02-20 17:10
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
你问这个说明对C里的枚举类型理解不深 通过汇编理解了这个也不枉学汇编啊 呵呵
2012-02-20 17:11
W32Asm
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-12-10
收藏
得分:0 
感谢zklhp老大,我对C语言不熟悉,可以说不懂。所以不知道C语言里面有枚举类型这个概念。

[ 本帖最后由 W32Asm 于 2012-2-21 11:09 编辑 ]
2012-02-21 10:39
快速回复:SID_NAME_USE在windows.inc中怎么添加
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016612 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved