加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – 如何在Windows 7中获取域名

发布时间:2020-12-15 09:19:29 所属栏目:大数据 来源:网络整理
导读:我写了一个运行Excel加载项的dll(几年前). 我使用此代码检索域名,并在Windows XP中正常工作,但在Windows 7中失败. 只有我以管理员身份运行才有效. 但是,我不想以管理员身份运行,因为此代码是Excel加载项DLL的一部分,如果以管理员身份运行,Excel无法找到用户
我写了一个运行Excel加载项的dll(几年前).

我使用此代码检索域名,并在Windows XP中正常工作,但在Windows 7中失败.
只有我以管理员身份运行才有效.
但是,我不想以管理员身份运行,因为此代码是Excel加载项DLL的一部分,如果以管理员身份运行,Excel无法找到用户的文件.

MyReg:= TRegistry.Create;

MyReg.RootKey:= HKEY_LOCAL_MACHINE;
MyReg.OpenKey(RegKeyWin7,false);
NetworkID2:= lowercase(trim(MyReg.ReadString(RegValWin7)));
MyReg.CloseKey;

FreeAndNil(MyReg);

FNetworkOK:= (NetworkID2 = OKRes4);
//Temp check to pinpoint the problem.
if FNetWorkOK = false then ShowMessage('Error wrong domain: '+NetworkID2)
else ShowMessage('all ok');

如何在正常权限下使用Delphi检索Windows 7中的域名?

解决方法

在Win32 API中使用 NetWkstaGetInfo,通过级别值= 100请求信息.

Return information about the workstation environment,including platform-specific information,the name of the domain and the local computer,and information concerning the operating system. The bufptr parameter points to a WKSTA_INFO_100 structure.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读