node build fixed
This commit is contained in:
57
seanime-2.9.10/internal/mediaplayers/mpchc/start.go
Normal file
57
seanime-2.9.10/internal/mediaplayers/mpchc/start.go
Normal file
@@ -0,0 +1,57 @@
|
||||
package mpchc
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"seanime/internal/util"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
func (api *MpcHc) getExecutableName() string {
|
||||
if len(api.Path) > 0 {
|
||||
if strings.Contains(api.Path, "64") {
|
||||
return "mpc-hc64.exe"
|
||||
} else {
|
||||
return strings.Replace(api.Path, "C:\\Program Files\\MPC-HC\\", "", 1)
|
||||
}
|
||||
}
|
||||
return "mpc-hc64.exe"
|
||||
}
|
||||
|
||||
func (api *MpcHc) GetExecutablePath() string {
|
||||
|
||||
if len(api.Path) > 0 {
|
||||
return api.Path
|
||||
}
|
||||
|
||||
return "C:\\Program Files\\MPC-HC\\mpc-hc64.exe"
|
||||
}
|
||||
|
||||
func (api *MpcHc) isRunning(executable string) bool {
|
||||
cmd := util.NewCmd("tasklist")
|
||||
output, err := cmd.Output()
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
|
||||
return strings.Contains(string(output), executable)
|
||||
}
|
||||
|
||||
func (api *MpcHc) Start() error {
|
||||
name := api.getExecutableName()
|
||||
exe := api.GetExecutablePath()
|
||||
if api.isRunning(name) {
|
||||
return nil
|
||||
}
|
||||
|
||||
cmd := util.NewCmd(exe)
|
||||
err := cmd.Start()
|
||||
if err != nil {
|
||||
api.Logger.Error().Err(err).Msg("mpc-hc: Error starting MPC-HC")
|
||||
return fmt.Errorf("error starting MPC-HC: %w", err)
|
||||
}
|
||||
|
||||
time.Sleep(1 * time.Second)
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user