26-08-22, 06:31 AM
PHP كود :
btnstart.Invoke(Sub() btnstart.Enabled = True)
PHP كود :
Private Sub split(ByVal fpath As String)
If IO.File.Exists(fpath) = False Then Exit Sub
Dim thefile As New IO.FileInfo(fpath)
Dim fn As String = thefile.Name
Dim GC1 As Long = filesize \ filemax ' عدد المجموعات
Dim M1 As Long = filesize Mod filemax ' الباقي خارج المجموعات المكتملة
Dim fs As New FileStream(fpath, FileMode.Open)
Dim br As New BinaryReader(fs)
Dim i As Long
Dim n As Long = 0
Dim newfile As String = folder & fn & "_File_" & n.ToString("00000000")
p1.Invoke(Sub() p1.Maximum = filemax + (filemax / 80)) 'ماقدرت اتصرف معها زودت القيمة جدعنة بس
For i = n To filesize - 1
If th.ThreadState = Threading.ThreadState.AbortRequested Then Exit For
n = i
p1.Invoke(Sub() p1.Value = fl(newfile))
If (fl(newfile) < filemax) Then
lbl.Invoke(Sub() lbl.Text = newfile)
Using fw As New FileStream(newfile, FileMode.Append)
Using bw As New BinaryWriter(fw)
bw.Write(br.ReadBytes(i))
fw.Close()
bw.Close()
End Using
End Using
ElseIf fl(newfile) >= filemax Then
n += 1
newfile = folder & fn & "_File_" & n.ToString("00000000")
lbl.Invoke(Sub() lbl.Text = newfile)
Using fw As New FileStream(newfile, FileMode.Append)
Using bw As New BinaryWriter(fw)
bw.Write(br.ReadBytes(i))
fw.Close()
bw.Close()
End Using
End Using
p1.Invoke(Sub() p1.Value = fl(newfile))
End If
Next
btnstart.Invoke(Sub() btnstart.Enabled = True)
End Sub
هذا الاجراء اللي شيب براسي التقسيم تمام مثل الاول والاشكالية مثل الاولى.
اذا فيه خطا ياليت تدلوني على التصحيح.
طبعا حاولت تطبيق الافكار الموجودة باللفكرة لكن لم تفلح فظللت اتراجع الى ان اصبح البرنامج نسخة مطابقة للمثال الاول.
الظاهر خلاص افكر انسى.
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير

