Beispiel #1
0
        //public void lnkFile_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        //{
        //    LinkLabel lnk = new LinkLabel();
        //    lnk = (LinkLabel)sender;
        //    lnk.Links[lnk.Links.IndexOf(e.Link)].Visited = true;

        //    ProcessStartInfo psi = new ProcessStartInfo();
        //    psi.FileName = e.Link.LinkData.ToString().Split('\\')[e.Link.LinkData.ToString().Split('\\').Count() -1].ToString();
        //    psi.WorkingDirectory = Path.GetDirectoryName(e.Link.LinkData.ToString());
        //    psi.Arguments = "p1=hardCodedv1 p2=v2";
        //    Process.Start(psi);
        //}

        private void btnEnviarArquivo_Click(object sender, EventArgs e)
        {
            //Para enviar o arquivo, é necessário selecionar um tema
            if (ddlTema.SelectedIndex == -1)
            {
                MessageBox.Show("Para enviar o arquivo de palestra, você deve informar o tema.");
                return;
            }

            int          keyAgenda = ((KeyValuePair <int, string>)ddlTema.SelectedItem).Key;
            AgendaEvento agenda    = null;

            try
            {
                OpenFileDialog dialog = new OpenFileDialog();
                dialog.Multiselect = true;
                if (dialog.ShowDialog() == DialogResult.OK) // if user clicked OK
                {
                    //string nomeArquivo = dialog.SafeFileName;
                    agenda = new AgendaEventoDAO().BuscarPorCodigo(keyAgenda, this.pathDiretorio);
                    if (agenda != null)
                    {
                        string[] arquivosSelecionados = dialog.FileNames;
                        for (int i = 0; i < arquivosSelecionados.Length; i++)
                        {
                            FileStream arquivoUsuario = File.OpenRead(arquivosSelecionados[i]);
                            FileStream arquivoSaida   = File.Create(agenda.PathPalestra(this.pathDiretorio) + @"/ " + Path.GetFileName(arquivosSelecionados[i]));
                            int        b;

                            while ((b = arquivoUsuario.ReadByte()) > -1)
                            {
                                arquivoSaida.WriteByte((byte)b);
                            }

                            arquivoSaida.Flush();
                            arquivoSaida.Close();
                            arquivoUsuario.Close();
                        }

                        ddlTema_SelectedIndexChanged(null, null);
                        MessageBox.Show("Arquivo(s) enviado(s) para o servidor com sucesso. Será realizada uma cópia dos arquivos para a sala da palestra.");
                    }
                }
            }
            catch (UnauthorizedAccessException ex)
            {
                MessageBox.Show("Ocorreu um erro: O sistema está sem permissão de escrita no diretório informado. Por favor, tente novamente após a autorização");
                return;
            }

            try
            {
                CopiarArquivosParaSala(agenda);
            }
            catch (UnauthorizedAccessException ex)
            {
                MessageBox.Show("Ocorreu um erro ao copiar o(s) arquivo(s) para a sala da palestra: O IP " + agenda.Sala.IP + " está sem permissão de escrita no diretório informado.");
                return;
            }
        }
Beispiel #2
0
        private void btnExplorar_Click(object sender, EventArgs e)
        {
            if (ddlTema.SelectedIndex == -1)
            {
                MessageBox.Show("Para enviar o arquivo de palestra, você deve informar o tema.");
                return;
            }

            int          keyAgenda = ((KeyValuePair <int, string>)ddlTema.SelectedItem).Key;
            AgendaEvento agenda    = new AgendaEventoDAO().BuscarPorCodigo(keyAgenda, this.pathDiretorio);

            if (agenda != null)
            {
                Process.Start(agenda.PathPalestra(this.pathDiretorio));
                if (MessageBox.Show("Deseja atualizar os arquivos para na sala informada?", "Atenção", MessageBoxButtons.YesNo) == DialogResult.Yes) // if user clicked OK
                {
                    CopiarArquivosParaSala(agenda);
                }
            }
        }
Beispiel #3
0
        public void ddlTema_SelectedIndexChanged(object sender, EventArgs e)
        {
            //Vou buscar o arquivo enviado para palestra e coloco no link para ele verificar o arquivo existente
            lblNomeArquivo.Text = string.Empty;
            if (ddlTema.SelectedItem != null)
            {
                int          keyAgenda         = ((KeyValuePair <int, string>)ddlTema.SelectedItem).Key;
                AgendaEvento agendaSelecionada = new AgendaEventoDAO().BuscarPorCodigo(keyAgenda, this.pathDiretorio);
                if (agendaSelecionada != null)
                {
                    string[] files = Directory.GetFiles(agendaSelecionada.PathPalestra(this.pathDiretorio));
                    if (files.Length > 0)

                    {
                        for (int i = 0; i < files.Length; i++)
                        {
                            string nome = Path.GetFileName(files[i]);
                            if (i == 0)
                            {
                                lblNomeArquivo.Text = "* " + nome;
                            }
                            else
                            {
                                lblNomeArquivo.Text += "\r\n* " + nome;
                            }
                        }
                        //lblNomeArquivo.Text = agendaSelecionada.ArquivoPalestra;
                        //lnkFile.Links.Clear();
                        //lnkFile.Links.Add(0, agendaSelecionada.ArquivoPalestra.Length, @"\" + agendaSelecionada.PathPalestra(this.pathDiretorio) + @"\" + agendaSelecionada.ArquivoPalestra + @"\");
                        //lnkFile.LinkClicked += lnkFile_LinkClicked;
                    }
                    else
                    {
                        lblNomeArquivo.Text = "Arquivo ainda não enviado";
                    }
                }
            }
        }