Ejemplo n.º 1
0
 public void Disconnect()
 {
     if (jr != null)
     {
         Marshal.FinalReleaseComObject(jr);
     }
     jr = null;
 }
Ejemplo n.º 2
0
        public bool Connect()
        {
            Logger.Log("Connecting to JRiver");
            Connected = CheckConnection();
            if (Connected)
            {
                return(true);
            }

            try
            {
                // connect to existing instance
                Logger.Log("Connect: getting existing MediaCenter instance");
                jr        = (IMJAutomation)Marshal.GetActiveObject("MediaJukebox Application");
                Connected = CheckConnection();
                if (Connected)
                {
                    return(true);
                }
                else
                {
                    Logger.Log("Connect to existing instance failed!");
                }
            }
            catch { Logger.Log("JRiverAPI.Connect() - MediaCenter is probably not running"); }

            try
            {
                Logger.Log("Connect: creating new MediaCenter instance");
                jr        = new MCAutomation();
                Connected = CheckConnection();
                if (!Connected)
                {
                    Logger.Log("Connect via MCAutomation object failed!");
                }
            }
            catch (Exception ex) { Logger.Log(ex, "JRiverAPI.Connect() - failed to create new instance"); }
            return(Connected);
        }