PDA

View Full Version : خواندن فایل از اینترنت



goldcom
پنج شنبه 21 بهمن 1389, 19:45 عصر
سلام
من برای برنامه ای این رو احتیاج دارم
یک فایل txt رو از یک لینک در اینترنت بخواند ( در فایل txt یک لینک است)
و سپس آن لینک را در سیستم دانلود نماید.
ممنون میشم مبتدیانه توضیح بدین :دی:خجالت:

محسن واژدی
پنج شنبه 21 بهمن 1389, 19:59 عصر
سلام
اگه یه جستجو توو تالار میکردین به جواب میرسیدین/

برای این کار ابتدا باید با APIهای ویندوز آشنا باشین

برای دانلود یک فایل از اینترنت و ذخیره اون در کامپیوتر از دستورات زیر استفاده کنین:


Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Public Function DownloadFile(URL As String, LocalFilename As String) As Boolean
Dim lngRetVal As Long
lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
If lngRetVal = 0 Then DownloadFile = True
End Function
Private Sub Form_Load()
'example by Matthew Gates (Puff0rz@hotmail.com)
DownloadFile "http://www.webaddress.com\mFile.txt", "c:\mFile.txt"
End Sub



موفق باشید

goldcom
جمعه 22 بهمن 1389, 01:29 صبح
نه قصد من دانلود نیست
ببینید من در اینترنت یک فایل txt دارم که توش یک لینک نوشته شده
برنامه باید لینک رو از فایل txt بگیره و در یک متغیر ذخیره کنه
سپس لینکی رو که از داخل فایل txt گرفته دانلود کنه

_behnam_
جمعه 22 بهمن 1389, 01:47 صبح
نه قصد من دانلود نیست
ببینید من در اینترنت یک فایل txt دارم که توش یک لینک نوشته شده
برنامه باید لینک رو از فایل txt بگیره و در یک متغیر ذخیره کنه
سپس لینکی رو که از داخل فایل txt گرفته دانلود کنه
دوست عزیز چندین راه واسه اینکار وجود داره من یکشو بهت میگم
1. از تو Components تیک Microsoft Internet Transfer رو بزن تا به پروژه اضاف بشه
2. Inet1 به فرمت اضاف کن
3. کد زیر رو بزن به جای Link آدرس TXT رو بنویس

MsgBox Inet1.OpenURL("Link")

goldcom
شنبه 23 بهمن 1389, 17:17 عصر
این سورس دقیقا چه کاری انجام میده؟
میشه توضیح بدین؟

محسن واژدی
شنبه 23 بهمن 1389, 17:41 عصر
این سورس دقیقا چه کاری انجام میده؟
میشه توضیح بدین؟

این کدها یه فایل رو از اینترنت دانلود میکنن
البته شما چون میگین میخواین محتویات یک فایل را از اینترنت بخونین، این کدهایی که بنده در پست شماره 2 عرض کردم فایل txt را دانلود و سپس میتونین اونو دربرنامتون بخونین

موفق باشید
یاعلی

goldcom
شنبه 23 بهمن 1389, 18:08 عصر
حالا یه مشکلی اینجا هست
میخوام یه کد اضافه کنم ، که اگه فایل txt خالی بود یا وجود نداشت ، عبارت (آپدیتی وجود ندارد) با msgbox نمایش داده بشه
برای این راهی هست؟

منظورم این کد هست


DownloadFile "http://link.com/hard.txt", "c:\hard.txt"

Restlesa
شنبه 23 بهمن 1389, 18:53 عصر
دوست عزیز شما این کار رو برای آپلود کردن برنامه ات می خوای ؟؟؟

goldcom
شنبه 23 بهمن 1389, 19:12 عصر
نه
ببینین من دارم یک برنامه برای یکی از دوستان مینویسم
طرف یک سری باگ ها رو به من گزارش میده
حالا من میخوام آپدیت برنامه رو بذارم
مشکلات قبل رو حل کردم
الان فقط مشکل من اینه که این کد :

DownloadFile "http://link.com/prog.exe", "c:\p.exe"

فایل رو به صورت p.exe ذخیره میکنه
من میخوام فایلم با همون نام و پسوند که دانلود شده ذخیره بشه نه اینکه Rename بشه یا فایل تغییر نام پیدا کنه
و اینکه میخوام فایل بعد از دانلود شدن به صورت اتوماتیک اجرا بشه

Restlesa
شنبه 23 بهمن 1389, 20:46 عصر
دوست عزیز یه نگاهی به تاپیک زیر بنداز ببین مشکلت برطرف میشه یا نه
http://barnamenevis.org/showthread.php?271816-Update-%DA%A9%D8%B1%D8%AF%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87

_behnam_
شنبه 23 بهمن 1389, 21:27 عصر
نه
ببینین من دارم یک برنامه برای یکی از دوستان مینویسم
طرف یک سری باگ ها رو به من گزارش میده
حالا من میخوام آپدیت برنامه رو بذارم
مشکلات قبل رو حل کردم
الان فقط مشکل من اینه که این کد :

DownloadFile "http://link.com/prog.exe", "c:\p.exe"

فایل رو به صورت p.exe ذخیره میکنه
من میخوام فایلم با همون نام و پسوند که دانلود شده ذخیره بشه نه اینکه Rename بشه یا فایل تغییر نام پیدا کنه
و اینکه میخوام فایل بعد از دانلود شدن به صورت اتوماتیک اجرا بشه
خوب شما میتونید لینک رو بر اساس "/" ُSplit کنید و آخرین قسمت رو جدا کنید (آخرین قسمت نام فایل شماست با پسوند

Dim Link, Filename As String
Dim Sp_Link() As String
Link = "http://Site-link.com/pooshe/File-dl.exe"
Sp_Link = Split(Link, "/")
Filename = Sp_Link(UBound(Sp_Link))
MsgBox Filename

محسن واژدی
یک شنبه 24 بهمن 1389, 12:16 عصر
نه
ببینین من دارم یک برنامه برای یکی از دوستان مینویسم
طرف یک سری باگ ها رو به من گزارش میده
حالا من میخوام آپدیت برنامه رو بذارم
مشکلات قبل رو حل کردم
الان فقط مشکل من اینه که این کد :
کد:
DownloadFile "http://link.com/prog.exe", "c:\p.exe"
فایل رو به صورت p.exe ذخیره میکنه
من میخوام فایلم با همون نام و پسوند که دانلود شده ذخیره بشه نه اینکه Rename بشه یا فایل تغییر نام پیدا کنه
و اینکه میخوام فایل بعد از دانلود شدن به صورت اتوماتیک اجرا بشه


تابع زیر رو در ماژول فرمتون کپی کنین و مسیر رو بهش ارسال کین تا نام فایل رو برگردونه:


Public Function GetFileName(flname As String) As String

'Get the filename without the path or extension.
'Input Values:
' flname - path and filename of file.
'Return Value:
' GetFileName - name of file without the extension.

Dim posn As Integer, i As Integer
Dim fName As String

posn = 0
'find the position of the last "\" character in filename
For i = 1 To Len(flname)
If (Mid(flname, i, 1) = "\") Then posn = i
Next i

'get filename without path
fName = Right(flname, Len(flname) - posn)
End Function

موفق باشید