Sie müssen die MKV-Erweiterung mit einer Batchdatei oder einem PowerShell / VB-Skript verknüpfen, das wiederum die Dateigrößenprüfung durchführt und die entsprechende Anwendung aufruft.
So machen Sie es mit einer Batch-Datei:
Öffnen Sie regedit, navigieren Sie zu
HKEY_CLASSES_ROOT\.mkv
dem Wert (Standard), und notieren Sie ihn . Dies ist die ProgID . Nehmen wir an, es ist mkvfile .Navigieren Sie zu
HKEY_CLASSES_ROOT\mkvfile\shell\open\command
dem Wert (Standard) und ändern Sie ihn in etwas"D:\MKVSizeCheck.bat" "%1"
.Erstellen Sie nun die
D:\MKVSizeCheck.bat
Batchdatei mit folgendem Inhalt:if %~z1 leq 524288000 ( start "" /max "C:\Program Files\VLC\VLC.exe" "%~1" ) else ( start "" /max "C:\Program Files\PowerDVD\PowerDVD.exe" "%~1" )
So machen Sie es mit VBScript:
Das gleiche wie oben.
Navigieren Sie zu
HKEY_CLASSES_ROOT\mkvfile\shell\open\command
dem Wert (Standard) und ändern Sie ihn in etwaswscript //B "D:\MKVSizeCheck.vbs" "%1"
.Erstellen Sie nun die
D:\MKVSizeCheck.vbs
Datei mit folgendem Inhalt:set objArgs = WScript.Arguments set objShell = WScript.CreateObject("WScript.Shell") set objFSO = WScript.CreateObject("Scripting.FileSystemObject") if objFSO.GetFile(objArgs.Item(0)).Size <= 524288000 then objShell.Run """C:\Program Files\VLC\VLC.exe"" """ & objArgs.Item(0) & """", 3, false else objShell.Run """C:\Program Files\PowerDVD\PowerDVD.exe"" """ & objArgs.Item(0) & """", 3, false end if
Hinweis 1: Ändern Sie die Pfade selbstverständlich nach Bedarf. Der obige Code legt auch 500 MB (= 524288000 Byte) als Schwellenwert fest. Ändern Sie dies ebenfalls nach Ihren Bedürfnissen (sehr große Werte sind möglicherweise nur in VBScript möglich).
Hinweis 2: Sie können immer ein Dienstprogramm wie FileTypesMan verwenden, um die Schritte 1-2 auszuführen, wenn Sie nicht sicher sind, ob Sie die Registrierung manuell bearbeiten möchten .
Hinweis 3: Wenn Sie eine Batch-Datei verwenden, blinkt ein Konsolenfenster, was irritierend wirken kann. Jetzt kann dies mit etwas wie Hidden Start oder VBScript ausgeblendet werden. Warum aber lieber VBScript verwenden?