Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dns 如何在运行时获取服务器域名?_Dns_Wix_Windows Installer - Fatal编程技术网

Dns 如何在运行时获取服务器域名?

Dns 如何在运行时获取服务器域名?,dns,wix,windows-installer,Dns,Wix,Windows Installer,我有一个WIX文件(*.wxs),其中我们正在使用%USERDOMAIN环境变量检索登录用户的域。例如,它为以DOMAINA\user1身份登录的用户提供DOMAINA。 然后,使用此提取的域名作为用于ACL web资源的其他安全组的前缀 到目前为止,它一直运转良好。但是现在,由于安全限制,登录的用户与服务器和应用程序运行的域不同。用户从管理域(如DOMAINM)登录。现在,%USERDOMAIN没有任何帮助,因为资源被不正确的sg所包围,比如DOMAINM\SG1等,而这些sg并不存在 我可以

我有一个WIX文件(*.wxs),其中我们正在使用%USERDOMAIN环境变量检索登录用户的域。例如,它为以DOMAINA\user1身份登录的用户提供DOMAINA。 然后,使用此提取的域名作为用于ACL web资源的其他安全组的前缀

到目前为止,它一直运转良好。但是现在,由于安全限制,登录的用户与服务器和应用程序运行的域不同。用户从管理域(如DOMAINM)登录。现在,%USERDOMAIN没有任何帮助,因为资源被不正确的sg所包围,比如DOMAINM\SG1等,而这些sg并不存在

我可以选择哪些选项来检索服务器的域,以便在WIX文件中使用它来生成用于部署的MSI


谢谢你的帮助

有一个注册表值提供以下功能:

<Property Id="TCPIPDOMAIN" Secure="yes">
  <RegistrySearch Id="tcpipDomain" Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" Name="Domain" Win64="no" Type="raw"/>
</Property>


还有另一个非常重要的场景,%USERDOMAIN和%USERDNSDOMAIN不起作用。通过作为系统运行的工具(如SCCM)将MSI推出。系统配置文件不会初始化这些环境变量。这就是我使用注册表搜索技术的原因。

谢谢您……感谢您的回复。现在,我只需要从这个字符串中提取短域名。我希望我能理解你在用这个做什么。我可能会提供更好的帮助。我们正在使用WIX工具来构建MSI。在用于构建MSI的.wxs文件中,它检查%USERDOMAIN,然后使用它构建完整的安全组以ACL资源。类似于生产\SG1用于生产和集成\SG1用于集成环境。%USERDOMAIN是基于环境/域在运行时获取的。如果正在部署的用户的帐户与服务组位于同一域中,则可以正常工作。但在我们的例子中,用户帐户更改为MGMT域,但应用程序安全组仍在生产和集成域中。因此不能依赖于%USERDOMAIN。