gpt4 book ai didi

powershell - 如何使Powershell在控制台中运行VBS文件而不影响双击行为?

转载 作者:行者123 更新时间:2023-12-03 00:04:56 24 4
gpt4 key购买 nike

在我的PC上,VBS文件被设置(通过注册表中的文件关联条目)以使用WScript运行。这就是我想要的,这样我可以双击VBS文件而不打开控制台窗口。但是,当我使用Powershell命令行时,我希望VBS脚本使用CScript(即,使用“cscript / nologo myfile.vbs”)运行。有没有一种方法可以使Powershell做到这一点而又不影响双击行为?

对于单个脚本,我可以为每个脚本编写一个函数(函数foo {cscript / nologo foo.vbs $ args}),但这根本无法扩展。我正在考虑类似Take Command的“可执行扩展名”功能,该功能使您可以为文件扩展名设置特定操作(设置.vbs = cscript / nologo)。

对于Python脚本,我也有同样的问题,在该问题中,默认操作仍然无法实现我想要的功能(由于某种原因,它会打开第二个控制台窗口,而不是在Powershell控制台中显示输出),因此特定于VBS的答案只会给我我想要的东西的一部分:-(

谢谢,
保罗

最佳答案

我最容易想到的是,每当启动Power Shell时都要设置一个环境变量(它具有自动执行功能吗?)让我们将其称为“InPowerShell”,并为其赋予值“YES”。

然后创建一个.bat文件,如下所示:

if %InPowerShell%==YES (
cscript /nologo #*
) else (
wscript #*
)

设置所有vbs文件以使用该bat文件打开。这样,每当您双击它时,它将使用wscript打开,而powershell内部将使用cscript打开。

(注意:我没有对此进行测试)

关于powershell - 如何使Powershell在控制台中运行VBS文件而不影响双击行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5435901/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com