示例#1
0
        private void buttonLogin_Click(object sender, EventArgs e)
        {
            ORealPlay _Data = new ORealPlay(); //Esto se ejecuta al darle click al boton de login. Primero de crea un nuevo objeto para la camara ip

            _Data.IP       = textBoxIP.Text;   //Se le asignan los atributos al objeto de la camara ip como la ip, el puerto, el usuario y la password
            _Data.Puerto   = ushort.Parse(textBoxPuerto.Text);
            _Data.Usuario  = textBoxUsuario.Text;
            _Data.Password = textBoxPassword.Text;
            if (comboBoxMarca.SelectedIndex == 0)        //Si se selecciona la marca Hikvision se ejecutan los métodos para Hikvision
            {
                _Respuesta = _Data.LoginHikvision();     //Se logea
                if (!_Respuesta.Exitoso)                 //Si hay un error al logearse
                {
                    MessageBox.Show(_Respuesta.Mensaje); //Muestra un error y sale del metodo
                    return;
                }
                _Data.Nombre = "Hikvision " + _Data.IP; //Se agrega el dispositivo al combobox de dispositivos conectados
                _Devices.Add(_Data);
            }
            else if (comboBoxMarca.SelectedIndex == 1)   //Si se selecciona la marca Dahua se ejecutan los métodos para Dahua
            {
                _Respuesta = _Data.LoginDahua();         //Se logea
                if (!_Respuesta.Exitoso)                 //Si hay un error al logearse
                {
                    MessageBox.Show(_Respuesta.Mensaje); //Muestra un error y sale del metodo
                    return;
                }
                _Data.Nombre = "Dahua " + _Data.IP; //Se agrega el dispositivo al combobox de dispositivos conectados
                _Devices.Add(_Data);
            }
            comboBoxDispositivos.DataSource    = null; //Se refresca la lista de dispositivos conectados
            comboBoxDispositivos.DataSource    = _Devices;
            comboBoxDispositivos.DisplayMember = "Nombre";
        }
示例#2
0
        private void buttonConectar_Click(object sender, EventArgs e)
        {
            ORealPlay _Device = _Devices[comboBoxDispositivos.SelectedIndex]; //Obtene el objeto de l acamara ip del combobox para iniciar la transmision

            _Device.Canal = (int)comboBoxCanales.SelectedItem;                //Obtiene el canal seleccionado
            if (_Device.HUserID >= 0)                                         //Si al usuario es de una camara Hikvision
            {
                var picture = new PictureBox                                  //Se agrega un uevo pictirebox para visualizar el video
                {
                    Name     = "canal" + _Camaras.ToString(),
                    Size     = new Size(300, 200), //El tamaño de la imagen, este se puede modificar
                    Location = new Point(_XLocation, _YLocation),
                };
                _XLocation += 300;     //Aumenta el valor de la poscicion horizontal de los picturebox. Si cambia el ancho de los picturebox se debe cambiar el aumento.
                if (_XLocation > 1500) //Si hay 5 picturebox horizontales cambia a la siguiente linea
                {
                    _XLocation  = 0;
                    _YLocation += 200; //Si cambia el largo de los picturebox debe cambiarse este aumento
                }
                panel1.Controls.Add(picture);
                _Device.Window = picture.Handle;                   //Se hace la referencia al picturebox creado para iniciar la transmision de video
                _Respuesta     = _Device.StartRealPlayHikvision(); //Inicia la transmision
                if (!_Respuesta.Exitoso)
                {
                    MessageBox.Show(_Respuesta.Mensaje); //Si hubo error al iniciar la transmision manda un mensaje de error y sale del metodo
                    return;
                }
            }
            else if (_Device.DUserID != IntPtr.Zero) //Si el usuario es de una camara Dahua
            {
                var picture = new PictureBox         //Se agrega un uevo pictirebox para visualizar el video
                {
                    Name     = "canal" + _Camaras.ToString(),
                    Size     = new Size(300, 200), //El tamaño de la imagen, este se puede modificar
                    Location = new Point(_XLocation, _YLocation),
                };
                _XLocation += 300;     //Aumenta el valor de la poscicion horizontal de los picturebox. Si cambia el ancho de los picturebox se debe cambiar el aumento.
                if (_XLocation > 1500) //Si hay 5 picturebox horizontales cambia a la siguiente linea
                {
                    _XLocation  = 0;
                    _YLocation += 200; //Si cambia el largo de los picturebox debe cambiarse este aumento
                }
                panel1.Controls.Add(picture);
                _Device.Window = picture.Handle; //Se hace la referencia al picturebox creado para iniciar la transmision de video
                _Device.StartRealPlayDahua();    //Inicia la transmision
                if (!_Respuesta.Exitoso)
                {
                    MessageBox.Show(_Respuesta.Mensaje); //Si hubo error al iniciar la transmision manda un mensaje de error y sale del metodo
                    return;
                }
            }
        }
示例#3
0
        public void fnInicializaCamaraHikVision()
        {
            //INICIALIZAMOS LAS VARIABLES
            _Devices   = new List <ORealPlay>();
            _Respuesta = new ORespuesta[10];
            int contador = 0;

            _Camaras   = 0;
            _XLocation = 0;
            _YLocation = 0;
            //LOGEO DE CAMARAS
            ORealPlay[] _Data      = new ORealPlay[10];
            parameters  parametros = new parameters();

            this.datos_camara = parametros.fnRecuperaDatosCamara();
            foreach (DataRow item in this.datos_camara.Rows)
            {
                if (item.Field <string>("marca").Equals("DAHUA") || item.Field <string>("marca").Equals("HIKVISION"))
                {
                    _Data[contador]          = new ORealPlay();
                    _Respuesta[contador]     = new ORespuesta();
                    _Data[contador].IP       = item.Field <string>("dir_ip");
                    _Data[contador].Puerto   = ushort.Parse(item.Field <string>("dir_port"));
                    _Data[contador].Usuario  = item.Field <string>("usuario");
                    _Data[contador].Password = item.Field <string>("contra");
                    if (item.Field <string>("marca").Equals("DAHUA"))
                    {
                        _Respuesta[contador] = _Data[contador].LoginDahua();
                        if (!_Respuesta[contador].Exitoso)
                        {
                            MessageBox.Show(_Respuesta[contador].Mensaje);
                        }
                        _Data[contador].Nombre = "Dahua " + _Data[contador].IP;
                        _Devices.Add(_Data[contador]);
                    }
                    else if (item.Field <string>("marca").Equals("HIKVISION"))
                    {
                        _Respuesta[contador] = _Data[contador].LoginHikvision();
                        if (!_Respuesta[contador].Exitoso)
                        {
                            MessageBox.Show(_Respuesta[contador].Mensaje);
                        }
                        _Data[contador].Nombre = "Hikvision " + _Data[contador].IP;
                        _Devices.Add(_Data[contador]);
                    }
                    contador++;
                }
            }
        }