如何检查用户是否属于 Install Shield 2009 Basic MSI 项目中的管理员组
安装 Shield 2009、Premier、Basic MSI Projcet:[我想只允许管理员用户运行安装程序] 在里面 Releases->MyProductConfiguration->MyRelease->Setup.exe 选项卡我选择了“Required Execution Level”=“Invoker”并在 一般信息->产品属性 我将安装条件设置为 Condition =“AdminUser”Message =“需要管理员用户运行此...”
问题是只有主管理员可以安装它。 任何其他用户使用管理权限说“测试”都无法安装并收到错误消息“需要管理员用户才能运行此...”
那么如何仅允许管理员组中的用户安装并限制其他用户。
Install Shield 2009, Premier, Basic MSI Projcet:[I want to allow only administrator users to run setup]
In the
Releases->MyProductConfiguration->MyRelease->Setup.exe tab i chose "Required Execution Level" = "Invoker" and in
General Information->Product Properties I put a Install condition as Condition = "AdminUser" Message = "Require Admin user to run this..."
The problem is only the main Administrator can install it. Any other user say "Test" with Administrative privilege can't install and get the error message "Require Admin user to run this..."
So how to allow only those user who are in Admin group to install and restrict others.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这可以在基本 MSI 项目中通过进入安装设计器 -> 来完成。 一般信息 -> 摘要信息流-> 需要管理权限 = 是
This can be done in Basic MSI Project by going into the Installation Designer -> General Information -> Summary Information Stream -> Require Administrative Privileges = Yes
上述问题你可以通过Installscript来实现
例如:
如果(SYSINFO.WINNT.bWinNT) 那么
if ( !SYSINFO.WINNT.bAdmin_Logged_On) 那么
MessageBox(您必须以管理员身份登录,严重);
中止;
万一;
万一;
首先,这将检查哪个操作系统然后登录的用户为 TRUE,最终用户以管理员权限在 NT 下登录。 或退出应用程序。
希望这对您有帮助...
the above problem you can achieve through Installscript
For example :
if(SYSINFO.WINNT.bWinNT) then
if ( !SYSINFO.WINNT.bAdmin_Logged_On) then
MessageBox(You must be logged in as admin, SEVERE);
abort;
endif;
endif;
First this will check for which O.S. then logged-in user is TRUE, the end user is logged on under NT with administator rights. or quit the application.
Hope this helps you...
(至少)有两种方法:
SYSINFO.WINNT.bAdmin_Logged_On
是否为TRUE
。 如果是这样,则该用户具有管理员权限。Is(USER_ADMINISTRATOR,"")
是否返回TRUE
。 如果是这样,则该用户具有管理员权限。您可以使用任何一个。
There are (at least) two ways:
SYSINFO.WINNT.bAdmin_Logged_On
isTRUE
. If so, the user has Administrator privileges.Is(USER_ADMINISTRATOR,"")
returnsTRUE
. If so, the user has Administrator privileges.You can use any one.