PDA

View Full Version : دانلود روزنامه و اجرای خودکار برنامه



helyantos
جمعه 24 مهر 1388, 18:28 عصر
من کد زیر رو برای دانلود روزنامه ها نوشتم قبلا کار میکرد ولی نمیدونم چرا الان جواب نمیده میشه کمک کنید.
Dim t As New farhaniPersianDate.cDate
Dim i As Integer
Dim Address As String
Dim Idate As Integer
Dim Sdate, Day, Month As String

If Convert.ToInt32(t.Day.ToString()) < 10 Then
Day = "0" + t.Day.ToString()
Else
Day = t.Day.ToString()
End If
If Convert.ToInt32(t.Month.ToString()) < 10 Then
Month = "0" + t.Month.ToString()
Else
Month = t.Month.ToString()
End If

Sdate = t.Year.ToString() + "/" + Month.ToString() + "/" + Day.ToString()
Idate = Convert.ToInt32(t.Year.ToString() + "" + Month.ToString() + "" + Day.ToString())
Address = t.Year.ToString() + "_" + Month + "_" + Day

'************************************************* ***********
'************************************************* ***********
Server.ScriptTimeout = 180 * 60 '180 min !
'************************************************* ***********
'************************************************* ***********

For i = 1 To 3
Dim a As String
a = Address.ToString() + "_" + i.ToString()

Dim wr As HttpWebRequest = CType(HttpWebRequest.Create("http://www.abrarnews.com/politic/1387/87" + Month + Day + "/pdf/" + i.ToString() + ".pdf"), HttpWebRequest)
Dim ws As HttpWebResponse = Nothing

Try
ws = CType(wr.GetResponse(), HttpWebResponse)
Catch ex As Exception
Txt_error.Text = Txt_error.Text + "Abrar News " + a.ToString() + ".pdf" + " not found" + " ***** "
'error to download (404 or something)
Continue For
End Try

Dim str As Stream = ws.GetResponseStream()
Dim inBuf(100000000) As Byte
Dim bytesToRead As Integer = CInt(inBuf.Length)
Dim bytesRead As Integer = 0
While bytesToRead > 0
Dim n As Integer = str.Read(inBuf, bytesRead, bytesToRead)
If n = 0 Then
Exit While
End If
bytesRead += n
bytesToRead -= n
End While

Dim fstr As New FileStream(Server.MapPath("pdf/" + a.ToString() + ".pdf"), FileMode.OpenOrCreate, FileAccess.Write)
fstr.Write(inBuf, 0, bytesRead)
str.Close()
fstr.Close()

Dim strq As String = "insert into tbl_news_paper (Address,Idate,Sdate,news_id,Format,path_name) values(N'" + a.ToString() + "'," + Idate.ToString() + ",N'" + Sdate.ToString() + "',1,'pdf','Abrar')"
Dim cnn As New System.Data.SqlClient.SqlConnection(Application("cnn"))
Dim da As New System.Data.SqlClient.SqlDataAdapter(strq, cnn)
Dim ds As New System.Data.DataSet()

cnn.Open()
da.Fill(ds)
cnn.Close()

Next
من این کد رو در رویداد فرم لود نوشتم و در واقع خودم باید هر روز برنامه رو اجرا کنم تا روزنامه ها دانلود بشه میشه کاری کرد که برنامه خودش در ساعت خاصی اجرا بشه؟

Aidin
شنبه 25 مهر 1388, 15:42 عصر
من این برنامه رو با C# نوشتم
اگه میخوای فایل exe شو برات بفرستم
برای کار تجاری می خوای یا شخصی ؟

helyantos
شنبه 25 مهر 1388, 23:20 عصر
سلام میرسی از توجهت ولی میشه اشکال برنامه رو بگی و این که چطوری اجرای خودکارش رو درست کنم؟
برنامه رو برای خودم میخوام.