Ejemplo n.º 1
0
        // here are some useful properties and methods that can be used as required
        // to help with driver development

        #region ASCOM Registration

        // Register or unregister driver for ASCOM. This is harmless if already
        // registered or unregistered.
        //
        /// <summary>
        /// Register or unregister the driver with the ASCOM Platform.
        /// This is harmless if the driver is already registered/unregistered.
        /// </summary>
        /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
        private static void RegUnregASCOM(bool bRegister)
        {
            using (var P = new ASCOM.Utilities.Profile())
            {
                P.DeviceType = "Dome";
                if (bRegister)
                {
                    P.Register(driverID, driverDescription);
                }
                else
                {
                    P.Unregister(driverID);
                }
            }
        }
Ejemplo n.º 2
0
 private static void RegUnregASCOM(bool bRegister)
 {
     using (var P = new ASCOM.Utilities.Profile())
     {
         P.DeviceType = "Camera";
         if (bRegister)
         {
             P.Register(DRIVER_ID, DRIVER_NAME);
         }
         else
         {
             P.Unregister(DRIVER_ID);
         }
     }
 }
Ejemplo n.º 3
0
 // Register or unregister driver for ASCOM. This is harmless if already
 // registered or unregistered.
 //
 /// <summary>
 /// Register or unregister the driver with the ASCOM Platform.
 /// This is harmless if the driver is already registered/unregistered.
 /// </summary>
 /// <param name="register">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
 private static void RegUnregASCOM(bool register)
 {
     using (var profile = new ASCOM.Utilities.Profile())
     {
         profile.DeviceType = "Telescope";
         if (register)
         {
             profile.Register(driverID, driverDescription);
         }
         else
         {
             profile.Unregister(driverID);
         }
     }
 }
Ejemplo n.º 4
0
 //
 // Register or unregister driver for ASCOM. This is harmless if already
 // registered or unregistered.
 //
 /// <summary>
 /// Register or unregister the driver with the ASCOM Platform.
 /// This is harmless if the driver is already registered/unregistered.
 /// </summary>
 /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
 private static void RegUnregASCOM(bool bRegister)
 {
     using (var P = new ASCOM.Utilities.Profile())
     {
         P.DeviceType = "Telescope";
         if (bRegister)
         {
             P.Register(Common.DriverId, Common.DriverDescription);
         }
         else
         {
             P.Unregister(Common.DriverId);
         }
     }
 }
Ejemplo n.º 5
0
        // here are some useful properties and methods that can be used as required
        // to help with driver development

        #region ASCOM Registration

        // Register or unregister driver for ASCOM. This is harmless if already
        // registered or unregistered.
        //
        /// <summary>
        /// Register or unregister the driver with the ASCOM Platform.
        /// This is harmless if the driver is already registered/unregistered.
        /// </summary>
        /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
        private static void RegUnregASCOM(bool bRegister)
        {
            using (var P = new ASCOM.Utilities.Profile())
            {
                P.DeviceType = "ObservingConditions";
                if (bRegister)
                {
                    P.Register(VantagePro.DriverId, VantagePro.DriverDescription);
                }
                else
                {
                    P.Unregister(VantagePro.DriverId);
                }
            }
        }
Ejemplo n.º 6
0
        // here are some useful properties and methods that can be used as required
        // to help with driver development

        #region ASCOM Registration

        // Register or unregister driver for ASCOM. This is harmless if already
        // registered or unregistered.
        //
        /// <summary>
        /// Register or unregister the driver with the ASCOM Platform.
        /// This is harmless if the driver is already registered/unregistered.
        /// </summary>
        /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
        private static void RegUnregASCOM(bool bRegister)
        {
            using (var P = new ASCOM.Utilities.Profile())
            {
                P.DeviceType = "Telescope";
                if (bRegister)
                {
                    P.Register(Const.wiseTelescopeDriverID, WiseTele.driverDescription);
                }
                else
                {
                    P.Unregister(Const.wiseTelescopeDriverID);
                }
            }
        }
Ejemplo n.º 7
0
        // here are some useful properties and methods that can be used as required
        // to help with driver development

        #region ASCOM Registration

        // Register or unregister driver for ASCOM. This is harmless if already
        // registered or unregistered.
        //
        /// <summary>
        /// Register or unregister the driver with the ASCOM Platform.
        /// This is harmless if the driver is already registered/unregistered.
        /// </summary>
        /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
        private static void RegUnregASCOM(bool bRegister)
        {
            string desc = string.Format("ASCOM Wise40.SafeToOpen v0.2");

            using (var P = new ASCOM.Utilities.Profile())
            {
                P.DeviceType = "SafetyMonitor";
                if (bRegister)
                {
                    P.Register(driverID, desc);
                }
                else
                {
                    P.Unregister(driverID);
                }
            }
        }
Ejemplo n.º 8
0
        // here are some useful properties and methods that can be used as required
        // to help with driver development

        #region ASCOM Registration

        // Register or unregister driver for ASCOM. This is harmless if already
        // registered or unregistered.
        //
        /// <summary>
        /// Register or unregister the driver with the ASCOM Platform.
        /// This is harmless if the driver is already registered/unregistered.
        /// </summary>
        /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
        private static void RegUnregASCOM(bool bRegister)
        {
            using (var P = new ASCOM.Utilities.Profile())
            {
                P.DeviceType = "Focuser";
                if (bRegister)
                {
                    Version version     = new Version("0.2");
                    string  description = string.Format("ASCOM Wise40.Focuser v{0}", version);
                    P.Register(WiseFocuser.DriverId, description);
                }
                else
                {
                    P.Unregister(WiseFocuser.DriverId);
                }
            }
        }
Ejemplo n.º 9
0
        // here are some useful properties and methods that can be used as required
        // to help with driver development

        #region ASCOM Registration

        // Register or unregister driver for ASCOM. This is harmless if already
        // registered or unregistered.
        //
        /// <summary>
        /// Register or unregister the driver with the ASCOM Platform.
        /// This is harmless if the driver is already registered/unregistered.
        /// </summary>
        /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
        private static void RegUnregASCOM(bool bRegister)
        {
            using (var P = new ASCOM.Utilities.Profile())
            {
                P.DeviceType = "Telescope";
                if (bRegister)
                {
                    P.Register(driverID, driverDescription);
                }
                else
                {
                    try
                    {
                        P.Unregister(driverID);
                    }
                    catch (DriverNotRegisteredException) { }
                }
            }
        }
Ejemplo n.º 10
0
 //
 // Register or unregister driver for ASCOM. This is harmless if already
 // registered or unregistered. 
 //
 /// <summary>
 /// Register or unregister the driver with the ASCOM Platform.
 /// This is harmless if the driver is already registered/unregistered.
 /// </summary>
 /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
 private static void RegUnregASCOM(bool bRegister)
 {
     using (var P = new ASCOM.Utilities.Profile())
     {
         P.DeviceType = "Camera";
         if (bRegister)
         {
             P.Register(driverID, driverDescription);
         }
         else
         {
             P.Unregister(driverID);
         }
     }
 }
Ejemplo n.º 11
0
        //
        // Remove all traces of this from the registry.
        //
        // **TODO** If the above does AppID/DCOM stuff, this would have
        // to remove that stuff too.
        //
        private static void UnregisterObjects()
        {
            if (!IsAdministrator)
            {
                ElevateSelf("/unregister");
                return;
            }

            //
            // Local server's DCOM/AppID information
            //
            Registry.ClassesRoot.DeleteSubKey(string.Format("APPID\\{0}", s_appId), false);
            Registry.ClassesRoot.DeleteSubKey(string.Format("APPID\\{0}",
                    Application.ExecutablePath.Substring(Application.ExecutablePath.LastIndexOf('\\') + 1)), false);

            //
            // For each of the driver assemblies
            //
            foreach (Type type in s_ComObjectTypes)
            {
                string clsid = Marshal.GenerateGuidForType(type).ToString("B");
                string progid = Marshal.GenerateProgIdForType(type);
                string deviceType = type.Name;
                //
                // Best efforts
                //
                //
                // HKCR\progid
                //
                Registry.ClassesRoot.DeleteSubKey(String.Format("{0}\\CLSID", progid), false);
                Registry.ClassesRoot.DeleteSubKey(progid, false);
                //
                // HKCR\CLSID\clsid
                //
                Registry.ClassesRoot.DeleteSubKey(String.Format("CLSID\\{0}\\Implemented Categories\\{{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}}", clsid), false);
                Registry.ClassesRoot.DeleteSubKey(String.Format("CLSID\\{0}\\Implemented Categories", clsid), false);
                Registry.ClassesRoot.DeleteSubKey(String.Format("CLSID\\{0}\\ProgId", clsid), false);
                Registry.ClassesRoot.DeleteSubKey(String.Format("CLSID\\{0}\\LocalServer32", clsid), false);
                Registry.ClassesRoot.DeleteSubKey(String.Format("CLSID\\{0}\\Programmable", clsid), false);
                Registry.ClassesRoot.DeleteSubKey(String.Format("CLSID\\{0}", clsid), false);
                try
                {
                    //
                    // ASCOM
                    //
                    using (var P = new ASCOM.Utilities.Profile())
                    {
                        P.DeviceType = deviceType;
                        P.Unregister(progid);
                    }
                }
                catch (Exception) { }
            }
        }
Ejemplo n.º 12
0
 // Register or unregister driver for ASCOM. This is harmless if already
 // registered or unregistered.
 //
 /// <summary>
 /// Register or unregister the driver with the ASCOM Platform.
 /// This is harmless if the driver is already registered/unregistered.
 /// </summary>
 /// <param name="register">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
 private static void RegUnregASCOM(bool register)
 {
     using (var profile = new ASCOM.Utilities.Profile())
     {
         profile.DeviceType = "Telescope";
         if (register)
         {
             profile.Register(driverID, driverDescription);
         }
         else
         {
             profile.Unregister(driverID);
         }
     }
 }
Ejemplo n.º 13
0
        // here are some useful properties and methods that can be used as required
        // to help with driver development

        #region ASCOM Registration

        // Register or unregister driver for ASCOM. This is harmless if already
        // registered or unregistered. 
        //
        /// <summary>
        /// Register or unregister the driver with the ASCOM Platform.
        /// This is harmless if the driver is already registered/unregistered.
        /// </summary>
        /// <param name="bRegister">If <c>true</c>, registers the driver, otherwise unregisters it.</param>
        private static void RegUnregASCOM(bool bRegister)
        {
            using (var P = new ASCOM.Utilities.Profile())
            {
                P.DeviceType = "Dome";
                if (bRegister)
                {
                    P.Register(driverID, driverDescription);
                }
                else
                {
                    P.Unregister(driverID);
                }
                try
                {
                    Marshal.ReleaseComObject(P);
                    //P = null;
                }
                catch { }
            }
            
        }