![解决方案](https://linux22.com/image/1417350/%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88.png)
别笑。
我所在的公司环境桌面被锁定。无法安装第三方应用程序。
记事本基本还行,但最大的问题是它无法检测文件是否已打开。我最终在两个地方编辑了文件。
所以,我想我应该编写一个小 vbs 来检查该文件是否可以打开,而不是打开两次,而是只显示可疑窗口。
Dim Arg, var1
Set Arg = WScript.Arguments
'Parameter1, begin with index0
var1 = Arg(0)
set fso = CreateObject("Scripting.FileSystemObject")
Set oShell = CreateObject("WScript.Shell")
If Not oShell.AppActivate( fso.GetFileName(var1) + " - Notepad") Then
Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Exec("notepad.exe " + var1 )
Set objShell = Nothing
End If
效果很好。但是...
我无法将 vbs 设置为“打开方式...”菜单的目标。看来我可以执行 .bat、.cmd、.exe、.pif。手动选择“.vbs”不起作用。它会说 .txt 文件“不是有效的 win32 应用程序”
如何获取使用 vbs 脚本打开文件的默认操作?
答案1
使用一行“wscript.exe %1”从批处理文件 (.cmd) 调用 vbscript。将 cmd 文件放入发送列表中。
答案2
解决方案
Windows 文件关联可以是系统范围的,也可以是每个用户的,后者优先。因此,您可以.txt
通过创建特定的注册表项来覆盖文件的默认行为:
打开命令提示符。
键入或粘贴以下命令,替换为实际路径Enter后按:
X:\Path\to\myscript.vbs
reg add "HKCU\Software\Classes\txtfile\shell\open\command" /ve /t REG_SZ /d "\"%windir%\System32\wscript.exe\" \"X:\Path\to\myscript.vbs\" \"%1\"" /f
更改将立即应用。
进一步阅读
答案3
1.cmd
在用户临时目录中创建文件)。
1.命令:
cmd
打开文件并做你想做的事)