【问题标题】:Visual Studio doesn't see all files in System32Visual Studio 看不到 System32 中的所有文件
【发布时间】:2018-09-10 08:15:04
【问题描述】:

我在 Visual Studio 2017 中设置了一些构建后命令,这些命令应该允许我运行我目前在 System32 (wsl.exe) 中拥有的程序。但是,Visual Studio 看不到该程序。

我尝试将命令设置为 dir C:\Windows\System32\ 以查看它可以列出的所有文件,实际上它没有列出我那里大约 4'600 个文件中的 1'000 个以上的文件,包括wsl.exe 我正在尝试运行的文件。在命令提示符下运行同一命令时,文件数会正确显示。

我尝试将whoami 作为构建后命令运行,它返回的用户与我在命令提示符下运行相同的命令一样。

我错过了什么吗?

【问题讨论】:

  • 这与 Visual Studio 有什么关系? wslLinux 的 Windows 子系统。它不仅仅是任何可执行文件。您可以从任何文件夹运行它,因为它在路径中。只需输入wsl
  • 这与 Visual Studio 有关,因为它在执行dir 命令时根本看不到wsl 文件。我知道我可以从任何文件夹运行它,因为它抛出了错误"wsl is not recognized as an internal or external command, operable program or batch file.",我尝试了更多步骤并得出结论,在构建后命令中运行dir,它没有显示所有目录中的文件。所有这一切,而我可以使用 Windows 命令提示符正确查看文件
  • 1) 没有复制。我可以看到它并称之为很好 2)它与VS无关。 dir 是一个命令行命令。您在问为什么在 System32 中看不到某些文件,而没有指定这些文件是什么。 3) 什么wsl?它甚至存在吗?安装了吗?您是否尝试从构建后步骤启动 Unix shell?
  • 关于你的数字2):那么在VS中运行dircommand为什么不显示wsl.exe文件,而在WSL中运行ls -al /mnt/c/Windows/System32会显示它,并且在命令提示符下运行` dir C:\Windows\System32` 也显示了它。对于您的 3 号):我已经在帖子中澄清说确实 我目前在 System32 (wsl.exe) 中拥有,所以是的,它确实存在。

标签: windows visual-studio batch-file post-build-event post-build


【解决方案1】:

Visual Studio 本身是 32 位应用程序。因此,操作系统将应用程序行为填充到 Windows 和 System32 文件夹的不同视图。即应用程序中的 c:\Windows\System32 实际上是 32 位应用程序的 c:\Windows\SysWow64 文件夹。这就解释了为什么它看不到 wsl.exe 二进制文件...不确定解决方法是什么...正在调查这个...

【讨论】:

  • wsl 是适用于 Linux 的 Windows 子系统。它也没有丢失,在 System32 中运行dir wsl.exe 可以工作,假设当然安装了该功能。在任何情况下,OP 都不应该在 System32 中放任何东西。
  • 不是“在 System32 中放入任何东西”。 WSL 是使用控制面板中的程序和功能自动安装在那里的。不过,会尝试,@selbie
  • @PeterAS17 你还没有解释你想要做什么。或者你指的是WSL。我可以通过在 any 控制台中键入 wsl 来启动 WSL,即适用于 Linux 的 Windows 子系统。在将当前目录更改为C:\Windows\System32 后,我可以使用dir 看到它。我也可以通过dir c:\Windows\system32\wsl.exe 看到它。
  • @PeterAS17 您的真正问题是如何运行 Linux 构建步骤。这已经回答了in this duplicate question
  • File System Redirector: "32 位应用程序可以通过将 %windir%\Sysnative 替换为 %windir%\System32 来访问本机系统目录。WOW64 将 Sysnative 识别为用于指示文件的特殊别名系统不应重定向访问。”
猜你喜欢
  • 1970-01-01
  • 2017-08-18
  • 1970-01-01
  • 1970-01-01
  • 2016-12-18
  • 1970-01-01
  • 2015-09-06
  • 2019-11-14
  • 2010-12-12
相关资源
最近更新 更多