PDA

View Full Version : آپلود عکس از طریق اف تی پی



alasht
شنبه 07 آبان 1390, 14:36 عصر
با سلام خدمت دوستان
من میخوام تو winform یه برنامه بنویسم که با open dialog یه عکس بگیرم و تو هاستم اپلود کنم
چطوری میتونم یه برنامه بنویسم که این کار رو بکنه ؟
من برای سی شارپ تحت ویندوز میخوام این برنامه رو بنویسم نه تحت وب (asp.net)
ممنون میشم دوستان راهنمایی کنند
با تشکر :قلب:

sobaisobai
شنبه 07 آبان 1390, 14:49 عصر
سلام دوست عزیز
اینم اپلود فایل با سی شارپ
public static void Upload(string ftpServer, string userName, string password, string filename)
{
using (System.Net.WebClient client = new System.Net.WebClient())
{
client.Credentials = new System.Net.NetworkCredential(userName, password);
client.UploadFile(ftpServer + "/" + new FileInfo(filename).Name, "STOR", filename);
}
}
موفق باشی

alasht
شنبه 07 آبان 1390, 15:19 عصر
ممنون از پاسخ شما
میشه یکم توضیح بدید در مورد این کد
آدرس اف تی پی رو کجا باید بزارم ؟
و یوزر و پسورد اف تی پی چطور ؟

sobaisobai
شنبه 07 آبان 1390, 15:25 عصر
وقتی میخوای از متد Upload استفاده کنی 4تا مقدار باید بدی
مقدار اول ادرس Ftp
مقدار دوم userName (هاست )
مقدار سوم password(هاست )
مقدار چهارم هم ادرس فایلی که میخوای اپلود کنی
موفق باشی

mehdi.mousavi
شنبه 07 آبان 1390, 16:03 عصر
سلام.
این لینک به کد فوق الذکر (http://madskristensen.net/post/Simple-FTP-file-upload-in-C-20.aspx) هستش. اما کد فوق چیکار میکنه؟

کلاس WebClient (http://msdn.microsoft.com/en-us/library/system.net.webclient.aspx) از URI هایی که با HTTP، HTTPS، FTP و FILE شروع میشه پشتیبانی میکنه و اینجا، در کد فوق، Mads Kristensen داره سعی میکنه که از اون برای ارسال فایل مورد نظر توسط پروتکل FTP استفاده کنه. اولا در کد فوق، نیازی به Instantiate کردن کلاس FileInfo برای بدست آوردن قسمت FileName نیست! اینکار براحتی توسط کلاس Path و متود GetFileName میسره. ثانیا، استفاده از STOR و دادن Command های FTP (http://www.nsftools.com/tips/RawFTP.htm) بدین شکل به Web Client کار جالبی نیست. فردا اگر قرار باشه فایلی رو Delete کنید، باید بدونید دستور معادلش در پروتکل FTP چیه و ... جای اینکار، می تونید از کلاس FtpWebRequest (http://msdn.microsoft.com/en-us/library/system.net.ftpwebrequest%28v=VS.100%29.aspx) بدین شکل (http://msdn.microsoft.com/en-us/library/ms229715.aspx) استفاده کنید، کلاسی که FTP Client رو در BCL پیاده سازی کرده و براحتی میشه بدون شناختن پروتکل FTP، بر اساس پروتکل مزبور با دیگر سیستم ها تعامل داشت.

موفق باشید.