none
SaveFileDialog Kafam karıştı yardım

    Genel Tartışma

  • VideoDownloader downloader = new VideoDownloader(video, Path.Combine(Application.StartupPath + "\\", video.Title + video.VideoExtension));
                    downloader.DownloadProgressChanged += downloader_DownloadProgressChanged;
                    Thread threa = new Thread(() => { downloader.Execute(); }) { IsBackground = true };
                    threa.Start();

    Altı çizili dosya yoluna kayıt yapailirken, saveFileDialog ile nasıl yaparım.

    Kodu tekrar düzenliyorum...

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using MetroFramework;
    using YoutubeExtractor;
    using System.IO;
    using System.Threading;

    namespace Projem
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();

            }

            private void Form1_Load(object sender, EventArgs e)
            {
                cmbxBoyut.SelectedIndex = 0;
            }

            private void bunifuFlatButton1_Click(object sender, EventArgs e)
            {
                IEnumerable<VideoInfo> videos = DownloadUrlResolver.GetDownloadUrls(txtUrl.Text);
                VideoInfo video = videos.First(p => p.VideoType == VideoType.Mp4 && p.Resolution == Convert.ToInt32(cmbxBoyut.Text));
                if (video.RequiresDecryption)
                    DownloadUrlResolver.DecryptDownloadUrl(video);
                saveFileDialog1.Title = video.Title;
                saveFileDialog1.DefaultExt = video.VideoExtension.ToString();

                VideoDownloader downloader = new VideoDownloader(video, Path.Combine(Application.StartupPath + "\\", video.Title + video.VideoExtension));
                
                downloader.DownloadProgressChanged += downloader_DownloadProgressChanged;
                    Thread threa = new Thread(() => { downloader.Execute(); }) { IsBackground = true };
                    threa.Start();
                                       
            }

            void downloader_DownloadProgressChanged(object sender, ProgressEventArgs e)
            {
                Invoke(new MethodInvoker(delegate()
                {
                    progressBar1.Value = (int)e.ProgressPercentage;
                    lblYuzde.Text = string.Format("{0:0.##}", e.ProgressPercentage);
                    progressBar1.Update();
                }));
            }

        }
    }


    18 Haziran 2017 Pazar 14:04

Tüm Yanıtlar

  • Path.Combine kullanılırken + operatörü kullanılmaz.

    Path.Combine(video.Title, video.VideoExtensions); şeklinde kullanıldığında konum oluşur.


    try { OldugunGibiGorun(); } catch (BeceremedimException) { GorundugunGibiOl(); }

    18 Haziran 2017 Pazar 15:20
  • Bu şekilde exe'nin yanına video kaydeebiliyorum benim amacım savefromfile ile kaydetmek. Yani kullanıcı istediği yere kaydetsin. 
    18 Haziran 2017 Pazar 16:35
  • SaveFileDialog.FileName özelliği ile kullanıcının seçtiği konumu alabilirsin.

    try { OldugunGibiGorun(); } catch (BeceremedimException) { GorundugunGibiOl(); }

    18 Haziran 2017 Pazar 16:50
  • SaveFileDialog.FileName özelliği ile kullanıcının seçtiği konumu alabilirsin.

    try { OldugunGibiGorun(); } catch (BeceremedimException) { GorundugunGibiOl(); }

    Kodu komple yazdım sonuç boş gelmekte. Kodlar yukarıda. Dediğini denedim ama o şekilde çözemedim
    18 Haziran 2017 Pazar 17:02
  • Böyle kullandın mı?

    SaveFileDialog sfd = new SaveFileDialog();
                 
    if (sfd.ShowDialog() == DialogResult.OK)
    {
    
      //Atıyorum mesela
      fileout.Save(sfd.FileName);
    }


    sssa

    18 Haziran 2017 Pazar 20:04
  • VideoDownloader downloader = new VideoDownloader(video,Application.StartupPath+"\\"+Video.name, video.Title + video.VideoExtension);

    Bazen Dosya yolu gösterirken Dosya yol uzantısına Dosyanın adıda eklenmelidir

    19 Haziran 2017 Pazartesi 12:27