在NT/2000系统中,如何知道自己当前的用户权限,再简单一点,如何知道有没有Administrator权限?

deadhorse 2001-05-10 08:20:00
不要告诉我判断用户名!!!
...全文
201 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
kiddycoffee 2001-06-25
  • 打赏
  • 举报
回复
对不起,因为我没有很多时间,不能为你将实际的代码写出来,但可以提供你一些线索,你根据这个查 MSDN 里相关的主题,应该可以找到答案。

LookupPrivilegeValue
AdjustTokenPrivileges

里面也许还会用到这两个函数,是用来提供给上面函数做参数的:
GetCurrentProcess()
OpenProcessToken(...)

具体请查看 MSDN。
sw0324 2001-06-25
  • 打赏
  • 举报
回复
gz
alwayscy 2001-06-25
  • 打赏
  • 举报
回复
if( SOCKET_ERROR != WSAIoctl( m_s, SIO_RCVALL , &dwBufferInLen, sizeof(dwBufferInLen),
&dwBufferLen, sizeof(dwBufferLen),
&dwBytesReturned , NULL , NULL ) )

这个调用在NT下会出错的呀。。。
deadhorse 2001-05-16
  • 打赏
  • 举报
回复
多谢大家出主意:
to:111222 / kovaschi / duz
我希望的是用程序判断

to: gadfly
不在Administrator组中也有可能有权限。
kovaschi 2001-05-11
  • 打赏
  • 举报
回复
强烈建议重写winnt/2k登录模块,或重写其中的部分模块!就象我一样!
你要?给我5000分!我给你原程序!
duz 2001-05-11
  • 打赏
  • 举报
回复
在NT中,其实用户的权限是非常复杂的,不如所谓的Administrator权限其实不是一个权限,而是Windows事先设置的一组权限,让所有这个组的用户都拥有这个权限。一般来说,在NT中,Administrators组都会拥有非常高的权限(足够高的权限以至于可以获得任何其它系统允许的权限),所以判断是否在这个组中就可以了。但是,即使不在这个组,也可以是超级用户,比如你拥有Take ownership of files or other objects的权限,权限可以通过Local Security Settings来察看;在NT4和Windows2000中,具体的察看的工具也各自不同,不过到很有可能是可以通用的。虽然这些工具都是属于操级用户组的,但是实际上,普通用户也是可以执行的,只是会受到很多限制,如果你发现在本机上被禁止使用,可以从其它计算机上拷贝一个过来,甚至可以在其它计算机中远程访问
Gadfly 2001-05-11
  • 打赏
  • 举报
回复
我没有尝试,但是估计应该是简单的,只不过大家复杂化了。
在mmc中查看自己当前登陆的用户名是否在Administrator这个用户组中就可以了。
凡是在这个用户组中的就用Administrator的权限。
我在用Advanced Server 时好像是这样,现在用Professional,没试,估计是可以的。
如果不行,献丑了。
111222 2001-05-10
  • 打赏
  • 举报
回复
DOS命令啦!我贴我贴...
NET USER

作 用:添加或更改用户帐号或显示用户帐号信息。该命令也可以写为 net users。

命令格式:net user [username [password *] [options]] [/domain]

参数介绍:

  (1)键入不带参数的net user查看计算机上的用户帐号列表。

  (2)username添加、删除、更改或查看用户帐号名。

  (3)password为用户帐号分配或更改密码。

  (4)*提示输入密码。

  (5)/domain在计算机主域的主域控制器中执行操作。

简单事例:

  (1)net user yfang查看用户YFANG的信息
FBStudio 2001-05-10
  • 打赏
  • 举报
回复
调用一个只有Administrator才能执行的函数,判断返回值。
如NetServerGetInfo成功时返回NERR_Success,权限不够时返回ERROR_ACCESS_DENIED
deadhorse 2001-05-10
  • 打赏
  • 举报
回复
这是很难的问题吗?
我还可以加分,没有人知道吗?
NowCan 2001-05-10
  • 打赏
  • 举报
回复
先关注一下。

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧