A new method - One for all
Only one player name in context menu (for each player), one path, and one prepend rules in playercorefactory.xml for BDMV, ISO, IFO and other file.
You can add any number of players and leave.
Launcher.cmd
________________________________________________________________________________________________________________
________________________________________________________________________________________________________________
@
echo off
if %2==
TotalMedia goto
TotalMedia
if %2==
KMPlayer goto
KMPlayer
if %2==
CyberLink goto
CyberLink
if %2==
System goto
System
goto end
rem #########################################################################
:
TotalMedia
set ext=%1
set ext=%ext:"=%
set ext=%ext:~-4%
if %ext%==.iso goto iso
if %ext%==.ISO goto iso
if %ext%==.ifo goto dvd
if %ext%==.IFO goto dvd
set pth=%1
set pth=%pth:BDMV\index.bdmv=%
"C:\Program Files\ArcSoft\TotalMedia Theatre 5\uTotalMediaTheatre5.exe" %pth%
goto end
:iso
"C:\Program Files\DAEMON Tools Lite\DTLite.exe" -mount scsi, 0, %1
ping -n 2 -w 1100 127.0.0.1 > nul
"C:\Program Files\ArcSoft\TotalMedia Theatre 5\uTotalMediaTheatre5.exe" v:\
Set ProcessName=
uTotalMediaTheatre5.exe
earch
TaskList /FI "ImageName EQ %ProcessName%" | Find /I "%ProcessName%"
If %ErrorLevel%==0 ping localhost&&goto
earch
"C:\Program Files\DAEMON Tools Lite\DTLite.exe" -unmount scsi, 0
goto end
:dvd
set pth=%1
set pth=%pth:VIDEO_TS.IFO=%
"C:\Program Files\ArcSoft\TotalMedia Theatre 5\uTotalMediaTheatre5.exe" %pth%
goto end
rem #########################################################################
:
KMPlayer
set ext=%1
set ext=%ext:"=%
set ext=%ext:~-4%
if %ext%==.iso goto iso
if %ext%==.ISO goto iso
"C:\Program Files\KMPlayer\kmplayer.exe" %1
goto end
:iso
"C:\Program Files\DAEMON Tools Lite\DTLite.exe" -mount scsi, 0, %1
ping -n 2 -w 1100 127.0.0.1 > nul
"C:\Program Files\KMPlayer\kmplayer.exe" V:\BDMV\index.bdmv
Set ProcessName=
kmplayer.exe
earch
TaskList /FI "ImageName EQ %ProcessName%" | Find /I "%ProcessName%"
If %ErrorLevel%==0 ping localhost&&goto
earch
"C:\Program Files\DAEMON Tools Lite\DTLite.exe" -unmount scsi, 0
goto end
rem #########################################################################
:
CyberLink
set ext=%1
set ext=%ext:"=%
set ext=%ext:~-4%
if %ext%==.iso goto iso
if %ext%==.ISO goto iso
if %ext%==bdmv goto disk
if %ext%==BDMV goto disk
if %ext%==.ifo goto disk
if %ext%==.IFO goto disk
"C:\Program Files\CyberLink\PowerDVD12\PDVDLaunchPolicy.exe" %1
goto end
:iso
"C:\Program Files\DAEMON Tools Lite\DTLite.exe" -mount scsi, 0, %1
ping -n 2 -w 1100 127.0.0.1 > nul
"C:\Program Files\CyberLink\PowerDVD12\PDVDLaunchPolicy.exe" AUTOPLAY BD V:
Set ProcessName=
PowerDVD.exe
earch
TaskList /FI "ImageName EQ %ProcessName%" | Find /I "%ProcessName%"
If %ErrorLevel%==0 ping localhost&&goto
earch
"C:\Program Files\DAEMON Tools Lite\DTLite.exe" -unmount scsi, 0
goto end
:disk
"C:\Program Files\CyberLink\PowerDVD12\PDVDLaunchPolicy.exe" AUTOPLAY BD %1
goto end
rem #########################################################################
:
System
%1
goto end
rem #########################################################################
:end
exit
________________________________________________________________________________________________________________
________________________________________________________________________________________________________________
ISO programm DAEMON Tools Lite. Drive letter "V", and Drive type "SCSI"
You can also add from advanced launcher" if compile, or create shortcut for Launcher.cmd .
example - "%rom%" Dendy (do not forget space before 2 parametr)
________________________________________________________________________________________________________________
________________________________________________________________________________________________________________
Example playercorefactory
________________________________________________________________________________________________________________
________________________________________________________________________________________________________________
<player name="TotalMedia Theatre 5" type="ExternalPlayer" audio="false" video="true">
<filename>
D:\AutoIt\players\XBMC\Launcher.cmd</filename>
<args>"{1}"
TotalMedia</args>
<hideconsole>true</hideconsole>
<playcountminimumtime>3600</playcountminimumtime>
</player>
<player name="PowerDVD12" type="ExternalPlayer" audio="false" video="true">
<filename>
D:\AutoIt\players\XBMC\Launcher.cmd</filename>
<args>"{1}"
CyberLink</args>
<hideconsole>true</hideconsole>
<playcountminimumtime>3600</playcountminimumtime>
</player>
<player name="KMPlayer" type="ExternalPlayer" audio="false" video="true">
<filename>
D:\AutoIt\players\XBMC\Launcher.cmd</filename>
<args>"{1}"
KMPlayer</args>
<hideconsole>true</hideconsole>
<playcountminimumtime>3600</playcountminimumtime>
</player>
<player name="System" type="ExternalPlayer" audio="false" video="true">
<filename>
D:\AutoIt\players\XBMC\Launcher.cmd</filename>
<args>"{1}"
System</args>
<hideconsole>true</hideconsole>
</player>
________________________________________________________________________________________________________________
________________________________________________________________________________________________________________
do not forget space before 2 parametr <args>"{1}"
KMPlayer</args>
2 is a parameter starts with the right player coincide with the blue from above in a Launcher.cmd,
and then he determines the extension, and acts
example rules <rule filetypes="bdmv|iso" player="TotalMedia Theatre 5"/>
or prescribe key in Keyboard.xml example <key>PlayWith(TotalMedia Theatre 5)</key> better in section <MyVideoLibrary>,
to where the button does not have to take other actions
examples on
AutoHotkey in
my original theme