找回密码
 加入
搜索
查看: 9115|回复: 14

[系统综合] 获取当前登录用户的SSID[已解决]

 火.. [复制链接]
发表于 2011-5-10 15:14:10 | 显示全部楼层 |阅读模式
本帖最后由 lanfengc 于 2011-5-10 17:57 编辑

开始-- 运行-- regedit  确定之后,出来注册表编辑器。  详细请见下图。



如图所示, 我现在要做一个程序,需要更改这项下的一项的数据。 但是这项的名字会根据操作系统和机器的不同而变化。 论坛里谁能告诉我下, 这项的名字,操作系统是如何算出来的? 或者各位坛友请将你们的操作系统类型和该项的名字回复下,让我总结下规律。 谢谢了。

获取操作系统类型和遍历注册表HKEY_USERS项的代码是:
Local $Result="",$HKUS="HKEY_USERS" ,$i=0 
For $i=1 To 20
        $Result = $Result&RegEnumKey($HKUS,$i)&@CRLF
        If @error<>0 Then ExitLoop
Next

ClipPut("系统版本为:"&@OSVersion&@CRLF&$Result)
MsgBox(0,"系统版本为:"&@OSVersion,$Result&@CR&"结果已复制到剪贴板!")
麻烦各位将获取到的操作系统版本和注册表项的结果回复出来。



结贴:
如下图

解决办法如下:

#Include <Security.au3>
#include <array.au3>
$array=_Security__LookupAccountName(@UserName)
_ArrayDisplay($array)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2011-5-10 15:41:38 | 显示全部楼层
最后那串长的,应该是当前登录用户的SID。前3项分别是NT AUTHORITY\System、NT AUTHORITY\Local Service、NT AUTHORITY\Network Service账户的SID。

评分

参与人数 1金钱 +20 收起 理由
lanfengc + 20 看了你的回复,才想到从注册表里遍历读取。 ...

查看全部评分

发表于 2011-5-10 15:48:18 | 显示全部楼层
学习了 感谢pb
发表于 2011-5-10 15:50:22 | 显示全部楼层
本帖最后由 xayle 于 2011-5-10 16:05 编辑

HKEY_CURRENT_USER
这个等同于
HKEY_USERS\S-1-5-21-xxxxxxxxxxxx-xxxxxxxxxxx-xxxxxxxxxxxx-1000
这个吧

HKEY_CURRENT_USER\Software\Classes
这个等同于
HKEY_USERS\S-1-5-21-xxxxxxxxxxxx-xxxxxxxxxxx-xxxxxxxxxxxx-1000_Classes

记得是这样



xp sp3 虚拟机 HKEY_USERS\S-1-5-21-789336058-1078145449-725345543-500
2003 EE sp2 虚拟机 HKEY_USERS\S-1-5-21-2283007856-2579766817-1336150658-500 内置管理员账号Administrator
2003 SE sp2  HKEY_USERS\S-1-5-21-3261339984-4218355495-1233578628-500 内置管理员账号Administrator
2003 SE sp2  HKEY_USERS\S-1-5-21-3261339984-4218355495-1233578628-1022 新建管理员帐号XXXXX
2008 r2 sp1   HKEY_USERS\S-1-5-21-3261339984-4218355495-1233578628-500  内置管理员账号Administrator
2008 r2 sp1   HKEY_USERS\S-1-5-21-3261339984-4218355495-1233578628-1022 新建管理员帐号XXXXX
win7 64位    HKEY_USERS\S-1-5-21-2287551049-1555240205-1431899115-1000

以上SID都是真实的,

评分

参与人数 1金钱 +20 收起 理由
lanfengc + 20 谢谢。辛苦了。

查看全部评分

 楼主| 发表于 2011-5-10 17:49:41 | 显示全部楼层
翻了半下午的帮助文件。 总算找到了。  
代码如下。
#Include <Security.au3>
#include <array.au3>
$array=_Security__LookupAccountName("Administrator")
_ArrayDisplay($array)

评分

参与人数 1金钱 +10 收起 理由
pusofalse + 10

查看全部评分

发表于 2011-5-10 17:59:04 | 显示全部楼层
学习了 感谢
发表于 2011-5-10 18:04:40 | 显示全部楼层
我能问问找到这个有什么用吗?
 楼主| 发表于 2011-5-10 18:38:48 | 显示全部楼层
本帖最后由 lanfengc 于 2011-5-10 18:43 编辑

回复 7# ac5474012


    有些程序需要修改这项下的键值,才能有效。 比如IE主页。

代码如下:
#Include <Security.au3>
Global $TempArray=_Security__LookupAccountName(@UserName) , $HomePageURL="http://www.baidu.com"
Global $IEHomePagePath="HKEY_USERS\"&$TempArray[0]&"\Software\Microsoft\Internet Explorer\Main"
Global $CLSIDIEKEY="HKEY_CLASSES_ROOT\CLSID\{871C5380-42A0-1069-A2EA-08002B30309D}\shell\OpenHomePage\Command"

RegWrite($IEHomePagePath,"Start Page","REG_SZ",$HomePageURL)  
RegWrite($CLSIDIEKEY,"","REG_SZ",@ProgramFilesDir&"\Internet Explorer\iexplore.exe "&$HomePageURL)
发表于 2011-5-10 23:27:31 | 显示全部楼层
来晚一步,,,...
发表于 2013-11-10 16:27:42 | 显示全部楼层
十分感谢,我的问题也在其中解决了,谢谢。
发表于 2013-11-10 16:39:12 | 显示全部楼层
呵呵,学习啦。
发表于 2013-11-10 16:51:49 | 显示全部楼层
长知识了,估计以后会用到的
发表于 2013-11-23 03:34:21 | 显示全部楼层
路过顶一顶。。。。。。。。。。。。。。。。。。。
发表于 2014-11-3 16:56:32 | 显示全部楼层
感谢分享,学习了~
发表于 2014-11-5 20:54:35 | 显示全部楼层
前来学习。。。。。。。。。。。。。。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-13 11:52 , Processed in 0.102201 second(s), 31 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表