启动 VS 2022 的开发人员命令提示符时出现访问被拒绝的问题

问题描述 投票:0回答:1

启动 VS 2022 的开发人员命令提示符时,我看到“访问被拒绝”问题

我正在尝试从“开始”菜单启动提示--> VS 2022 的开发人员命令提示符--> 以管理员身份运行

首先我收到带有以下消息的 Windows 提示: “此应用程序无法在您的电脑上运行” “找到适合您 PC 的版本,请咨询软件发行商”

单击“确定”后,我会看到带有以下消息的提示:

**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.11.5
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
Access is denied.

C:\Program Files\Microsoft Visual Studio\2022\Enterprise>

据我观察, C:\Program Files\Microsoft Visual Studio�2\Enterprise\Common7\Tools\VsDevCmd.bat 尝试在内部调用以下命令。

powershell.exe -NoProfile -Command "& {Import-Module '%~dp0\Microsoft.VisualStudio.DevShell.dll'; Send-VsDevShellTelemetry -NewInstanceType Cmd;}"

此时我们遇到了访问问题

我在启动其中一个应用程序cmd文件时也观察到类似的问题

echo set Falcon Specific Environment variables / Toggles

rem Set environment variable SET_LOCALIP, which is used by many services.
rem #Remarks: If more network adapters are available, choose the one which has the Internet or other sl artifacts can be accessed.
for /f "delims=" %%a in ('powershell -command "(Get-NetIPAddress | Where InterfaceIndex -EQ ((Get-NetConnectionProfile | Where Name -like "*.sl.net").InterfaceIndex)).IPAddress"') do (
    set SET_LOCALIP=%%a
)

if not defined SET_LOCALIP (
    for /f "delims=" %%a in ('powershell -command "(Get-NetIPAddress -PrefixOrigin Dhcp | Where-Object {$_.ValidLifetime -Lt ([TimeSpan]::MaxValue) -and $_.AddressState -Eq 'Preferred'}).IPAddress"') do (
        set SET_LOCALIP=%%a
    )
)

注意:我能够独立执行其他PowerShell脚本。

此外,当给出 PowerShell.exe 的完整路径时,独立运行该命令效果很好

D:\OCT24A\bin\x64\Debug\devShell>C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command "(Get-NetIPAddress | Where InterfaceIndex -EQ ((Get-NetConnectionProfile | Where Name -like "*.sl.net").InterfaceIndex)).IPAddress"
 
D:\OCT24A\bin\x64\Debug\devShell>powershell.exe -command "(Get-NetIPAddress | Where InterfaceIndex -EQ ((Get-NetConnectionProfile | Where Name -like "*.sl.net").InterfaceIndex)).IPAddress"
Access is denied.
powershell visual-studio ide visual-studio-2022
1个回答
0
投票

此应用程序无法在您的 PC 上运行”“查找适合您的 PC 的版本,请与软件发行商联系。

看起来你的VS默认使用的powershell.exe无效。请打开命令提示符并运行以下命令来检测 powershell.exe 的默认位置

where powershell.exe

这将显示 PowerShell 可执行文件的路径。

请导航到路径

C:/windows/system32/
并检查
powershell.exe
文件是否存在如果不存在,请导航到此路径
C:\Windows\System32\WindowsPowerShell\v1.0\
并将
powershell.exe
复制到上述文件夹。

此外,您可以运行以下命令来检查执行策略,如果设置为“受限”,请将其更改为“无限制”。然后重新打开 VS 2022 的开发人员命令提示符以查看问题是否仍然存在。

Get-ExecutionPolicy
© www.soinside.com 2019 - 2024. All rights reserved.