«Открыть с помощью» Параметры через VBScript - PullRequest
3 голосов
/ 10 августа 2010

Вручную мы щелкаем правой кнопкой мыши по файлу и выбираем опцию «открыть с помощью», чтобы открыть в другом формате.

Теперь мне нужно сделать это через VBScript

Ответы [ 2 ]

7 голосов
/ 10 августа 2010

Чтобы открыть файл с помощью определенного приложения, используйте метод WshShell.Run, чтобы запустить это приложение и передать имя файла в качестве параметра.

Вот пример, который открывает тот же текстовый файл в Блокноте, 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"""
0 голосов
/ 10 августа 2010

Если вы хотите создать скрипт связи с 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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...