问题标签 [subst]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 您如何检索已安装路径的原始位置?
在 C++ 中,如何检索已安装驱动器的位置?例如,如果我已将驱动器 s: 安装到 c:\temp(在命令行中使用 subst)“subst c:\temp s:”,我如何通过传递“s:”来获取“c:\temp”
我还想知道如何为网络驱动器完成它。(如果 s: 挂载到“\MyComputer\Hello”,那么我想检索“\MyComputer\Hello”,然后从中检索“c:\Hello”)
这可能是一个非常简单的问题,但我找不到有关它的信息。
谢谢,
亚当
winapi - 将 Windows 驱动器号解析为路径(subst 和 network)
我想知道是否有一种通用方法可以使用驱动器号(例如X:\foo\bar.txt
)将路径解析为其等效的 UNC 路径,这可能是以下之一:
X:\foo\bar.txt
如果X:
是真正的驱动器(即硬盘、U 盘等)\\server\share\foo\bar.txt
是否X:
安装了网络驱动器\\server\share
C:\xyz\foo\bar.txt
ifX:
是SUBST
命令映射X:
到的结果C:\xyz
我知道有部分解决方案可以:
解析网络驱动器(参见例如问题 556649,它依赖于
WNetGetUniversalName
)解析
SUBST
驱动器号(查看QueryDosDevice
哪个按预期工作,但不返回本地驱动器或网络驱动器等事物的 UNC 路径)。
我是否错过了在 Win32 中实现此驱动器号解析的一些直接方法?还是我真的必须把两者都搞砸WNetGetUniversalName
才能QueryDosDevice
得到我需要的东西?
visual-studio - TFS、subst、Visual Studio 2010、相对路径
我的 TFS 工作区位于C:\Users\...\MyProject
,我已X:\
使用 Windows subst 命令映射到该工作区。在我的 Visual Studio 2010 解决方案中,这适用于大多数项目。C:\Users\...
无论我做什么,其中只有 2 个总是与路径相连(绝对!) 。
我试过了:
- 显然,删除并重新添加它们。
- 在我的工作区设置中删除这两个项目的显式绝对映射。一旦我添加项目,它就会重新创建。
- 使用记事本在解决方案文件中手动调整。使源代码控制绑定无效,并且 2. 的显式绑定在我重新绑定它们时重新创建。
一些帮助会很酷。我被困了几个小时只处理源代码控制......
干杯马蒂亚斯
PS 有些人可能会奇怪我为什么要这样做subst
:由于项目目录名称很长,经常超过 260 个字符,这使得 VS/.NET 环境中的许多功能停止工作。
windows - Windows 服务无法启动,出现一般错误
我使用 VS2010 编写了一个简单的 NT 服务,它使用 InstallUtil 可以很好地安装在我的 XPSP3 开发盒上。但是,当我运行时,net start TestService
出现一般错误:The TestService service failed to start due to the following error:
The system cannot find the path specified.
同样的错误也会写入事件系统日志,遗憾的是没有更多关于哪个指定路径net start
不喜欢的详细信息。所以我运行了 Filemon,但没有运气,没有任何输出可以说明我失败的服务。
该服务在本地服务帐户下运行。
调试此问题的任何提示?
编辑:感谢所有人的提示。DLL 很好,catch 块没有启动,我有 try/catch 块InitializeComponent
和OnStart
方法。下面提到的检查路径的语句是提示。我犯了一个明显的错误,我InstallUtil
从一个 SUBST 驱动器上运行了我的二进制文件,由于某种原因它报告了成功。InstallUtil
从本地路径运行解决了我的问题,服务现在可以正确启动。
windows - 在 VBScript 中获取命令行输出(不写入文件)
我正在使用 VBScript,我的目标是能够用驱动器号替换我选择的路径。我需要 D 盘,如果它不可用,我需要检查它是否已经映射到正确的位置;如果不是,则通知用户。我发现了这个:http ://technet.microsoft.com/en-us/library/ee156605.aspx我正在尝试调整他们的第二个例子:
(我的改编):
然后我可能会搜索告诉 D 驱动器映射位置的字符串。我也试过了objShell.Exec("subst")
,但我仍然没有得到任何输出。有人对我可能做错的事情有任何想法吗?还是有更好的方法来讲述驱动器映射?谢谢,
213897
windows - cmd - 是否可以临时将可用驱动器号分配给本地路径?
在 Windows 上使用 cmd,很容易通过 pushd 将驱动器号分配给 UNC 路径:
但是,我希望能够对本地路径执行相同的操作,因为它会缩短文件路径,并且我必须使用不支持具有很长路径的文件的命令。
这个想法如下G:
,脚本中没有硬编码,因为它可以在另一台机器上使用。
我试过pushd \\?\%CD%
了,可惜没用……</p>
有没有人有这个魔术?
谢谢
python - 如何在 Python 中复制 Window 的 subst 命令?
我正在尝试在我的 Windows 设置上映射一个虚拟驱动器,我正在使用的工具之一不喜欢文件名中的空格。
在命令行上,我会执行以下操作
我试图在 Python 中复制该功能,但没有成功。我开始使用直接os.execl()
执行subst
命令,但是报了无效参数错误。
SO上的一些其他解决方案建议直接使用Win32API。
顺便说一句,我在 Windows 上使用 Python 2.7.3。
batch-file - 这个“subst”调用有什么作用?
我想知道这个命令在批处理脚本中的作用:
php - 如何静默取消映射映射的网络驱动器
我有一个本地运行的 PHP 脚本,我在其中执行此操作
但如果 T: 已经映射或替换到某个其他位置,我想先取消映射它。所以我这样做
但是当 T: 未映射时, exec net use 将向控制台打印错误,而当它已映射但未映射时, exec subst 将向控制台打印错误。我想在控制台窗口中有干净的输出,所以当我尝试取消映射未映射的驱动器时不会出错。问题是我完全不知道该怎么做。我可以禁止打印错误消息吗?如果没有,仅当驱动器已映射时如何运行命令?那么,巧合的是,我怎么知道我应该使用 net use /d 还是 subst /d?
windows - 使用Rundll32复制SUBST的功能
我一直在尝试使用 rundll32 复制函数 subst.exe(用于映射驱动器的 Windows 应用程序)。
我知道它DefineDOSDevice
被使用了,我知道要传递什么参数,但我就是无法让它工作。
可以说我希望 C:\Program Files 映射为 Z:
我尝试以我认为正确的形式传递所有参数,但没有成功。
如果有人可以为我提供将程序文件映射到 Z 的工作语法:使用 rundll32 我会非常高兴。
提前致谢。