我正在使用WiX 3.9。有没有办法在Wix中获取当前登录的用户名。我一直在阅读很多在线帮助和文章,但到目前为止没有任何帮助...也许我犯了一些愚蠢的错误。 我添加了以下代码:
<PropertyRef Id="LogonUser" />
<Control Type="Edit" Id="UserNameEdit" Width="139" Height="15" X="191" Y="128" Property="USER_NAME" Text="[LogonUser]" />
但这给了我以下错误:错误LGHT0094:未解析的符号引用属性:LogonUser 我不知道如何解决这个问题。
所以我刚刚删除了PropertyRef代码,但是[LogonUser]正在打印,因为它在编辑框中是 [LogonUser] ,并且它不会打印实际的用户名。
当我检查安装日志文件时,我可以很好地使用LogonUser属性,如下所示:
Property(C): LogonUser = JS.K
我已经将PropertyRef用于WIX_ACCOUNT_USERS等,但它工作正常,但对于LogonUser却没有。我错过了任何要引用的dll吗?
答案 0 :(得分:1)
这对我有用:
<Control Type="Edit" Id="UserNameEdit" Width="139" Height="15" X="191" Y="128" Property="USER_NAME" >
<Text>{\DlgTitleFont}USER_NAME</Text>
<Publish Property="USER_NAME" Value="[LogonUser]" Order="1">1</Publish>
</Control>
&#13;
因为您需要显式设置编辑控件的属性。
答案 1 :(得分:0)
没有LogonUser
afaik。您应该创建一个新属性,并将其初始化为:
<SetProperty Id="INSTALL_USERNAME" Value="[%USERDOMAIN]\[%USERNAME]" />
在显示用户界面之前安排:
<InstallUISequence>
<SetProperty Id="INSTALL_USERNAME" Before="Show" Value="[%USERDOMAIN]\[%USERNAME]" />
</InstallUISequence>