PDA

View Full Version : اتصال به SFTP



hamidrezax1
سه شنبه 07 آذر 1396, 17:34 عصر
سلام وقت بخیر دوستان من یه ای پی ولید دارم که روش یه SFTP فعال شده حالا میخوام یه فایل ازش دانلود کنم میشه لطفا راهنمایی کنید و عین کد رو برام ارسال کنید.تاکید میکنم دوستان کد رو میخوام نه رفرنش های برنامه نویسی.یا سایت های برنامه نویسی.
IP آدرس: 192.168.128.128:22
user:admin
pass:admin
فایل مربوطه داخل SFTP یک فایل متنی تکست هست a.txt
مسیر ذخیره داخل درایو /:D
با تشکر

hamidrezax1
چهارشنبه 08 آذر 1396, 06:37 صبح
سلام دوستان وقتتون بخیر من جواب رو بدست آوردم و در اینجا به صورت تصویری قرار میدم تا شاید اگر کسی نیاز داشت بتونه استفاده کنه
اول از همه نرم افزار WinSCP نصب کنید
بعد به پروژتون dll مربوطه رو وارد کنید به شکل زیر
و Imports WinSCP اضافه کنید به پروژتون مثل شکل زیر
147175
بعد با نرم افزار WinSCP یکبار به سرورتون وصل بشین
147176
و از قسمت پایین سمت راست دو بار روی قفل کلیک کنید تا کادر مربوطه باز بشه سپس key کپی کنید
حالا میرسه به قسمت کد ها که فکر نمیکنم نیاز به توضیح داشته باشه


Dim sessionOptions As New SessionOptions
With sessionOptions
.Protocol = Protocol.Sftp
.HostName = "آدرس سرور"
.UserName = "نام کاربری"
.Password = "کلمه عبور"
.SshHostKeyFingerprint = "key که ذخیره کردین"
End With


Using session As New Session
session.Open(sessionOptions)


Dim transferOptions As New TransferOptions
transferOptions.TransferMode = TransferMode.Binary


Dim transferResult As TransferOperationResult
transferResult =
session.GetFiles("آدرس فولدر مبدا که همون sftp", "آدرس مقصد", False, transferOptions)
transferResult.Check()
For Each transfer In transferResult.Transfers
Console.WriteLine("Download of {0} succeeded", transfer.FileName)
Next
End Using
MsgBox("فایل مورد نظر با موفقیت کپی شد", MsgBoxStyle.Information, "موفقیت عملیات")

a_mohammadi_m
چهارشنبه 13 تیر 1397, 14:51 عصر
با سلام به همه

نیاز به هیچ ابزار و DLL خاصی نیست خود ویندوز میتونه FTP رو باز کنه و فایل کپی کنه

مثلا

'Select file for download

OpenFileDialog1.Title = " دریافت اطلاعات ... "
OpenFileDialog1.Filter = "ّFileName*.txt|*.txt"
OpenFileDialog1.InitialDirectory = "ftp://FtpUser:FtpPass@192.168.1.1/Folder/SubFolder/SubSubFolder/"
OpenFileDialog1.ShowDialog()
strSelectedFtpFile = OpenFileDialog1.FileName

' copy file from ftp to local
strDestFolder="C:"
My.Computer.FileSystem.CopyFile( strSelectedFtpFile , strDestFolder , overwrite:=False)

hamidrezax1
پنج شنبه 14 تیر 1397, 18:22 عصر
ممنون دوست عزیز
اما یکم اگر محبت کنید و نگاهی به سوال بندارین میبینین
FTP نیست و SFTP هست بازم ممنون که عنایت داشتین
موفق باشید