コード例 #1
0
        /// <summary>
        /// Questo metodo viene usato per identificare e registrare il dispositivo nel database
        /// </summary>
        /// <param name="id">Identificativo del dispositivo</param>
        /// <returns></returns>
        public bool Setup(string id, bool owner = false)
        {
            Id = id;
            var table = Database.LiteDatabase.singleton.GetTable("devices");

            if (table != null)
            {
                Database.Tables.Devices devices = table as Database.Tables.Devices;
                var result = devices.Insert("Insert into devices (id, name, owner) VALUES ( NULL, '" +
                                            id + "', '" + ((owner)?"1":"0") + "')");
                if (result)
                {
                    if (owner)
                    {
                        StreamWriter wr = new StreamWriter(Filename);
                        wr.WriteLine("DeviceId:" + id);
                        wr.Close();
                        wr.Dispose();

                        File.SetAttributes(Filename, FileAttributes.Hidden);
                    }

                    return(true);
                }
            }

            return(false);
        }
コード例 #2
0
        /// <summary>
        /// Inizializza i riferimenti alle tabelle del database
        /// </summary>
        void InitDatabase()
        {
            // Per il l'identificazione dei dispositivi
            Devices = Database.LiteDatabase.singleton.GetTable("devices") as Database.Tables.Devices;

            if (Devices == null)
            {
                MessageBox.Show(
                    "Internal Error! Devices table not found!",
                    "Fatal Error",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                    );
                Close();
            }

            // Sono il proprietario di questo dispositivo USB?
            // A seconda della risposta, questo form cambia leggermente comportamento
            OwnerMode = Devices.ImOwner(DeviceId);

            if (OwnerMode == false)
            {
                return;
            }
            // Per la gestione dei gruppi associati ai dispositivi, utile solo in OwnerMode
            Keys = Database.LiteDatabase.singleton.GetTable("keys") as Database.Tables.Keys;

            if (Keys == null)
            {
                MessageBox.Show(
                    "Internal Error! Keys table not found!",
                    "Fatal Error",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                    );
                Close();
            }
        }
コード例 #3
0
        /// <summary>
        /// Inizializza i riferimenti alle tabelle del database
        /// </summary>
        void InitDatabase()
        {
            // Per il l'identificazione dei dispositivi
            Devices = Database.LiteDatabase.singleton.GetTable("devices") as Database.Tables.Devices;

            if (Devices == null)
            {
                MessageBox.Show(
                    "Internal Error! Devices table not found!",
                    "Fatal Error",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                    );
                Close();
            }

            // Sono il proprietario di questo dispositivo USB?
            // A seconda della risposta, questo form cambia leggermente comportamento
            OwnerMode = Devices.ImOwner(DeviceId);

            if (OwnerMode == false) return;
            // Per la gestione dei gruppi associati ai dispositivi, utile solo in OwnerMode
            Keys = Database.LiteDatabase.singleton.GetTable("keys") as Database.Tables.Keys;

            if (Keys == null)
            {
                MessageBox.Show(
                    "Internal Error! Keys table not found!",
                    "Fatal Error",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                    );
                Close();
            }
        }