其他用户的启动快捷方式
我正在某些客户端计算机上使用 PsExecute 进行强制远程安装。我遇到的问题是我以本地管理员身份执行安装程序,但我想为特定用户添加启动快捷方式。在 nsis 中,我只能在用户(本地管理员)或所有环境之间进行选择。如何添加 User1 的启动文件夹的快捷方式?
I'm doing a forced remote installation with PsExecute on some client machines. The problem I have is that I execute the installers as a local admin but I would like to add a startup shoortcut for a specific user. In nsis I can only choose between the users (the local admin) or All environment. How can I add a shortcut to User1's startup folder?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您知道用户密码,则可以调用 LogonUser + SHGetFolderPath,但我假设您不知道密码。
如果您不知道密码并且用户未登录,则使用一些未记录的注册表位置是唯一的选择:
您需要 EnumUsersReg 和 GetUserShellFolderFromRegistry来自 NSIS wiki 的头文件和这个辅助宏:
然后像这样使用它:
如果您知道用户 SID,您可以直接调用 EnumUsersRegX_LoadRegFromSID 宏,而无需先调用 LookupAccountName。
注释:
该代码使用了未记录的内容,因此可能会在下一版本的 Windows 中崩溃!您还需要是管理员并且>= Win2000。
If you know the users password you can call LogonUser + SHGetFolderPath, but I assume that you don't know the password.
Using some undocumented registry locations is the only alternative if you don't know the password and the user is not logged on:
You need parts of the EnumUsersReg and GetUserShellFolderFromRegistry header files from the NSIS wiki and this helper macro:
Then use it like this:
If you know the users SID, you can call the EnumUsersRegX_LoadRegFromSID macro directly without calling LookupAccountName first.
Notes:
This code uses undocumented things and could therefore break in the next version of windows! You also need to be administrator and >= Win2000.