“通过vbscript打开”选项

时间:2010-08-10 09:40:15

标签: vbscript

手动我们右键单击文件并选择“打开方式”选项以其他格式打开。

现在我需要通过vbscript

来做到这一点

2 个答案:

答案 0 :(得分:7)

要使用特定应用程序打开文件,请使用WshShell.Run methood运行该应用程序并将文件名作为参数传递。

以下是在记事本,Internet Explorer和Microsoft Word中打开相同文本文件的示例:

strFileName = "c:\myfile.txt"
Set oShell = CreateObject("WScript.Shell")

oShell.Run "notepad "  & strFileName
oShell.Run "iexplore " & strFileName
oShell.Run "winword "  & strFileName

请注意,如果文件名包含空格,则需要用引号括起来,如下所示:

oShell.Run "winword ""c:\my file.txt"""

答案 1 :(得分:0)

如果要使用VBScript创建关联脚本,例如,当您单击某个文件并使用某个程序打开它时,您可以使用我创建的这个脚本:

'Run Script
InsertContextMenu

Sub InsertContextMenu ()
Dim sText
Dim sExePath

'For executable-only context menu, the key should be created here
'HKEY_CLASSES_ROOT\exefile\shell

sText = InputBox ("Enter the Text for the context menu." & vbNewLine & vbNewLine & "Example" & vbNewLine & "Open with Notepad")

If Len(Trim(sText)) > 0 Then
    sExePath = InputBox ("Enter the path of the executable file for the context menu." & vbNewLine & vbNewLine & "Example" & vbNewLine & "C:\Windows\Notepad.exe")
    If Len(Trim(sExePath)) > 0 Then
        Set SHL = CreateObject ("WScript.Shell")
        SHL.RegWrite "HKCR\*\Shell\" & sText & "\",sText
        SHL.RegWrite "HKCR\*\Shell\" & sText & "\Command\", sExePath & " %1"

        If Len(SHL.RegRead ("HKCR\*\Shell\" & sText & "\Command\")) > 0 Then
            MsgBox "The Context Menu successfully created !.",vbInformation
        Else
            MsgBox "An unknown error has occured !!",vbCritical
        End If
    End If
End If

Set SHL = Nothing
End Sub

只需复制上面的代码,然后粘贴到文件中,并将该文件.vbs扩展名。