尝试安装 Microsoft 签名的 ClickOnce 应用程序时,会出现一条错误消息,指出“您的管理员已阻止此应用程序,因为它可能对您的计算机构成安全风险”和“您的安全设置不允许在您的计算机上安装此应用程序” .
作为设置上述策略的管理员,我终生无法弄清楚为什么只有一个用户而不是 PC 基于相同图像的其他用户被阻止,以及为什么它适用于其他应该被阻止的用户与接收以下消息的用户享有相同的权限。请注意,完全相同的域组策略应用于遇到错误的此用户和未收到错误的用户。
即使尝试“以管理员身份”运行应用程序也无法解决问题。事件日志没有显示任何错误,否则我无法找到任何日志来帮助诊断问题。
哪些本地策略或设置会允许或拒绝此应用程序?
我有一个脚本需要运行 AS Powershell 7,因为只有 Powershell 7 有我需要的命令。
当我$PSVersionTable
从 VSCode运行.PS1 脚本时,我得到:
Name Value
---- -----
PSVersion 7.0.1
PSEdition Core
Run Code Online (Sandbox Code Playgroud)
当我使用从命令提示符运行相同的 .PS1 脚本时powershell testscript_writefile.ps1
,我得到:
Name Value
---- -----
PSVersion 5.1.14393.3471
PSEdition Desktop
Run Code Online (Sandbox Code Playgroud)
如何执行 Powershell 脚本AS Powershell 7 而不是 Powershell 5?
操作系统:Windows 7、Windows 8、Windows 8.1
使用 Windows 命令行,我可以使用该quser
命令查看当前用户的登录时间。这会导致比我想要的更多的输出,所以我希望使用for
skip
并tokens
仅获取登录时间和日期。
举个例子
c:\quser.exe
--------------------------
USERNAME SESSIONNAME ID STATE IDLE TIME LOGON TIME
GenericUser console 1 Active 1:22 03/11/2015 1:45 PM
Run Code Online (Sandbox Code Playgroud)
使用for
,我可以减少它,但它以日期和时间之间的空格作为分隔符,因此只给我日期:
c:\for /f "skip=1 tokens=6" %a in ('quser') do echo %a
--------------------------
03/11/2015
Run Code Online (Sandbox Code Playgroud)
请注意,输出缺少“1:45 PM”。值得注意的是,我无法指定多个标记,因为只有 6 个标头,因此我无法从第二行获取第 7 个标记。如何修改它以收集时间和日期?
*不要担心计算日期差异,因为一旦我可以正确收集它,我将在 VBScript 中处理它。
提前致谢,比姆斯
batch ×1
clickonce ×1
cmd.exe ×1
command-line ×1
powershell ×1
vbscript ×1
windows-10 ×1
windows-7 ×1