.NET 4.x На время выполнения метода виснет программа - C#
Формулировка задачи:
В чем дело люди подскажите...
Написан метод загрузки файла через FTP но во время выполнения метода он виснет.
Объясняю популярным способом, пока метод выполняет программа весит как только закончил выполнятся программа развисает...
То есть пока качается файл прога весит как только скачался она развисает.... В чем беда? Сижу уже 6 часов тут и думаю((((
P.S. Coder TPAKTOP
using System; using System.IO; using System.Text; using System.Windows.Media; using System.Net; private static string FTP_SERVER = "IP адрес сервера"; private static int FTP_PORT = Порт; private static string FTP_PASSWORD = "Пароль"; private static string FTP_USER = "Пользователь"; private static string FileServer = "Имя файла"; public static void Updaid() { try { FtpWebRequest requestFileDownload = (FtpWebRequest)WebRequest.Create("ftp://" + FTP_SERVER + ":" + FTP_PORT + "/" + FileServer); requestFileDownload.Credentials = new NetworkCredential(FTP_USER, FTP_PASSWORD); requestFileDownload.Method = WebRequestMethods.Ftp.DownloadFile; FtpWebResponse responseFileDownload = (FtpWebResponse)requestFileDownload.GetResponse(); Stream responseStream = responseFileDownload.GetResponseStream(); FileStream writeStream = new FileStream(FileServer, FileMode.Create); int Length = 2048; Byte[] buffer = new Byte[Length]; int bytesRead = responseStream.Read(buffer, 0, Length); while (bytesRead > 0) { writeStream.Write(buffer, 0, bytesRead); bytesRead = responseStream.Read(buffer, 0, Length); } responseStream.Close(); writeStream.Close(); requestFileDownload = null; } catch (Exception ex) { throw ex; } }
Решение задачи: «.NET 4.x На время выполнения метода виснет программа»
textual
Листинг программы
using System; using System.IO; using System.Text; using System.Threading; using System.Windows.Media; using System.Net; private static string FTP_SERVER = "IP адрес сервера"; private static int FTP_PORT = Порт; private static string FTP_PASSWORD = "Пароль"; private static string FTP_USER = "Пользователь"; private static string FileServer = "Имя файла"; public static void Updaid() { Thread myThread = new Thread(UpDate); myThread.Start(); } private static void UpDate() { try { FtpWebRequest requestFileDownload = (FtpWebRequest)WebRequest.Create("ftp://" + FTP_SERVER + ":" + FTP_PORT + "/" + FileServer); requestFileDownload.Credentials = new NetworkCredential(FTP_USER, FTP_PASSWORD); requestFileDownload.Method = WebRequestMethods.Ftp.DownloadFile; FtpWebResponse responseFileDownload = (FtpWebResponse)requestFileDownload.GetResponse(); Stream responseStream = responseFileDownload.GetResponseStream(); FileStream writeStream = new FileStream(FileServer, FileMode.Create); int Length = 2048; Byte[] buffer = new Byte[Length]; int bytesRead = responseStream.Read(buffer, 0, Length); while (bytesRead > 0) { writeStream.Write(buffer, 0, bytesRead); bytesRead = responseStream.Read(buffer, 0, Length); } responseStream.Close(); writeStream.Close(); requestFileDownload = null; } catch (Exception ex) { throw ex; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д