برنامج لفرز الملفات من تصميمي

    • برنامج لفرز الملفات من تصميمي


      صباحكم خير امتداد لساحات البرمجة بالساحة سأقوم بشرح أوامر البرنامج ثم شرح
      البرنامج افرض أن لديك 1000 صورة من نوع gif و معها ألف صورة من نوع jpe
      ومعهم ملفات متنوعة و مختلفه و تريد فرز هذه الملفات كل صيغة على حدة هذا البرنامج
      يوفر لك فرز هذه الملفات و بسهولة مع امكانية التسمية الرقمية file1 file2 file3 أو
      الفرز بنفس الإسم

      أولا أوامر البرنامج



      Brainfuck كود المصدر

      1. [/COLOR][/SIZE][/FONT]
      2. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      3. [FONT=Times New Roman][size=14][COLOR=black]#include <GUIConstants.au3>
      4. ; == GUI generated with Koda ==
      5. $Form2 = GUICreate("Form1", 419, 217, 155, 145)[/COLOR][/SIZE][/FONT]
      6. [FONT=Times New Roman][size=14][COLOR=black]الفارم الرائيسي للبرنامج[/COLOR][/SIZE][/FONT]
      7. [FONT=Times New Roman][size=14][COLOR=black]$Tab1 = GUICtrlCreateTab(0, 0, 417, 217)[/COLOR][/SIZE][/FONT]
      8. [FONT=Times New Roman][size=14][COLOR=black]تبويب[/COLOR][/SIZE][/FONT]
      9. [FONT=Times New Roman][size=14][COLOR=black]$TabSheet1 = GUICtrlCreateTabItem("NAQWS ALQATR")[/COLOR][/SIZE][/FONT]
      10. [FONT=Times New Roman][size=14][COLOR=black]تسمية التبويب[/COLOR][/SIZE][/FONT]
      11. [FONT=Times New Roman][size=14][COLOR=black]$FOLDRIN = GUICtrlCreateButton("FOLDR IN", 8, 32, 105, 25)[/COLOR][/SIZE][/FONT]
      12. [FONT=Times New Roman][size=14][COLOR=black]خيار بوتون للمجلد الذي سيتم نقل المفات منه[/COLOR][/SIZE][/FONT]
      13. [FONT=Times New Roman][size=14][COLOR=black]$FOLDROUT = GUICtrlCreateButton("FOLDR OUT", 304, 32, 105, 25)[/COLOR][/SIZE][/FONT]
      14. [FONT=Times New Roman][size=14][COLOR=black]خيار بوتون المجلد الذي سيتم نقل الملفات إليه[/COLOR][/SIZE][/FONT]
      15. [FONT=Times New Roman][size=14][COLOR=black]GUICtrlCreateLabel("TYPE OF FILE", 160, 64, 91, 20)[/COLOR][/SIZE][/FONT]
      16. [FONT=Times New Roman][size=14][COLOR=black]تسمية أو لبل يشير لخيار صيغة أو نوع الملف[/COLOR][/SIZE][/FONT]
      17. [FONT=Times New Roman][size=14][COLOR=black]GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")[/COLOR][/SIZE][/FONT]
      18. [FONT=Times New Roman][size=14][COLOR=black]الخط المستخدم للخيار السابق[/COLOR][/SIZE][/FONT]
      19. [FONT=Times New Roman][size=14][COLOR=black]$InputYPE = GUICtrlCreateInput(".TYPE", 160, 80, 97, 21, -1, $WS_EX_CLIENTEDGE)[/COLOR][/SIZE][/FONT]
      20. [FONT=Times New Roman][size=14][COLOR=black]حقل وضع صيغة الملف الذي ستقوم بنقله[/COLOR][/SIZE][/FONT]
      21. [FONT=Times New Roman][size=14][COLOR=black]$COPY = GUICtrlCreateButton("COPY", 8, 144, 105, 25)[/COLOR][/SIZE][/FONT]
      22. [FONT=Times New Roman][size=14][COLOR=black]خيار البوتن copy و هووه خيار النسخ[/COLOR][/SIZE][/FONT]
      23. [FONT=Times New Roman][size=14][COLOR=black]$MOVE = GUICtrlCreateButton("MOVE", 304, 144, 105, 25)[/COLOR][/SIZE][/FONT]
      24. [FONT=Times New Roman][size=14][COLOR=black]خيار البوتن move و هووه مثل خيار قص و لصق على الويندوز (نقل) أو إزاحة[/COLOR][/SIZE][/FONT]
      25. [FONT=Times New Roman][size=14][COLOR=black]GUICtrlCreateLabel("FILE MOVE , FILE COPY TO NAME 123", 112, 120, 196, 17)[/COLOR][/SIZE][/FONT]
      26. [FONT=Times New Roman][size=14][COLOR=black]تسمية تعبر عن النسخ بالتسمية الرقمية[/COLOR][/SIZE][/FONT]
      27. [FONT=Times New Roman][size=14][COLOR=black]GUICtrlCreateLabel("123 COPY MOVE", 160, 32, 88, 17)[/COLOR][/SIZE][/FONT]
      28. [FONT=Times New Roman][size=14][COLOR=black]أيضا تسمية للبرنامج و تعريف[/COLOR][/SIZE][/FONT]
      29. [FONT=Times New Roman][size=14][COLOR=black]GUICtrlCreateLabel("FILE NAME IN", 24, 176, 74, 17)[/COLOR][/SIZE][/FONT]
      30. [FONT=Times New Roman][size=14][COLOR=black]هذا الخيار يشير لمؤشر سير عملية النسخ كما سيأتي لا حقا على شكل نقاط[/COLOR][/SIZE][/FONT]
      31. [FONT=Times New Roman][size=14][COLOR=black]أثنا النسخ ستتحول النقاط لإسم الملف المنقول من الفولدر الأول[/COLOR][/SIZE][/FONT]
      32. [FONT=Times New Roman][size=14][COLOR=black]GUICtrlCreateLabel("FILE NAME OUT", 312, 176, 86, 17)[/COLOR][/SIZE][/FONT]
      33. [FONT=Times New Roman][size=14][COLOR=black]مثل الخيار السابق الملف بعد عملية النقل[/COLOR][/SIZE][/FONT]
      34. [FONT=Times New Roman][size=14][COLOR=black]$IN = GUICtrlCreateLabel("........................................................", 8, 192, 172, 17)[/COLOR][/SIZE][/FONT]
      35. [FONT=Times New Roman][size=14][COLOR=black]النقاط التي تعبر عن الملف قبل النقل
      36. $OUT = GUICtrlCreateLabel("........................................................", 240, 192, 172, 17,$BS_RIGHT)[/COLOR][/SIZE][/FONT]
      37. [FONT=Times New Roman][size=14][COLOR=black]نفس الخيار الملف بعد النقل[/COLOR][/SIZE][/FONT]
      38. [FONT=Times New Roman][size=14][COLOR=black]$Checkbox1 = GUICtrlCreateCheckbox(" WITHE OUT CHNG NAME ", 136, 144, 153, 17)
      39. GUICtrlCreateTabItem("")[/COLOR][/SIZE][/FONT]
      40. [FONT=Times New Roman][size=14][COLOR=black]خيار النقل بدون تغير الاسم و هووه كما يضهر على البرنامج بمربع اشارة الصح[/COLOR][/SIZE][/FONT]
      41. [FONT=Times New Roman][size=14][COLOR=black]GUICtrlSetState($MOVE, $GUI_DISABLE)
      42. GUICtrlSetState($COPY, $GUI_DISABLE)[/COLOR][/SIZE][/FONT]
      43. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      44. [FONT=Times New Roman][size=14][COLOR=black]هاند أو دسبلاي و هووه إزالة التنشيط عن خيار كوبي و موف[/COLOR][/SIZE][/FONT]
      45. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      46. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      47. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      48. [FONT=Times New Roman][size=14][COLOR=black]GuiSetState()[/COLOR][/SIZE][/FONT]
      49. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      50. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      51. [FONT=Times New Roman][size=14][COLOR=black]While 1
      52. $msg = GuiGetMsg()[/COLOR][/SIZE][/FONT]
      53. [FONT=Times New Roman][size=14][COLOR=black]خيار استقبال رسائل الفورم
      54. Select
      55. Case $msg = $FOLDRIN[/COLOR][/SIZE][/FONT]
      56. [FONT=Times New Roman][size=14][COLOR=black]استقبال رسالة البوتن foldr in
      57. $FOLIN = FileSelectFolder("", "")
      58. if $FOLIN > "" THEN[/COLOR][/SIZE][/FONT]
      59. [FONT=Times New Roman][size=14][COLOR=black]خيار لتحديد موقع الفولدر الذي سيتم نسخ الملفات منه[/COLOR][/SIZE][/FONT]
      60. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      61. [FONT=Times New Roman][size=14][COLOR=black]IniWrite("BATH.dll", "FOLDRIN2", "FOLDRIN2", ($FOLIN))[/COLOR][/SIZE][/FONT]
      62. [FONT=Times New Roman][size=14][COLOR=black]تسجيل المسار المحدد أو حفض المسار لستخدامه لاخقا
      63. IniWrite("BATH.dll", "FOLDRINOK", "FOLDRINOK", "1")[/COLOR][/SIZE][/FONT]
      64. [FONT=Times New Roman][size=14][COLOR=black]خيار يستخدم لدلاله على تنشيط الخيارين copy و move و هووه عبارة عن رقم[/COLOR][/SIZE][/FONT]
      65. [FONT=Times New Roman][size=14][COLOR=black]1 حيث سيتم قرائته فيما بعد هذا الرقم يخص خيار
      66. $FOLINOK = IniRead("BATH.dll", "FOLDRINOK", "FOLDRINOK","0")[/COLOR][/SIZE][/FONT]
      67. [FONT=Times New Roman][size=14][COLOR=black]قرائه لنفس الرقم السابق
      68. $FOLOUTOK = IniRead("BATH.dll", "FOLDROUTOK", "FOLDROUTOK","0")[/COLOR][/SIZE][/FONT]
      69. [FONT=Times New Roman][size=14][COLOR=black]IF $FOLINOK = 1 AND $FOLOUTOK = 1 THEN GUICtrlSetState($MOVE, $GUI_ENABLE)
      70. IF $FOLINOK = 1 AND $FOLOUTOK = 1 THEN GUICtrlSetState($COPY, $GUI_ENABLE)
      71. ENDIF
      72. Case $msg = $FOLDROUT
      73. $FOLOUT = FileSelectFolder("", "")
      74. if $FOLOUT > "" THEN
      75. IniWrite("BATH.dll", "FOLDROUT2", "FOLDROUT2", ($FOLOUT))
      76. IniWrite("BATH.dll", "FOLDROUTOK", "FOLDROUTOK", "1")
      77. $FOLINOK = IniRead("BATH.dll", "FOLDRINOK", "FOLDRINOK","0")
      78. $FOLOUTOK = IniRead("BATH.dll", "FOLDROUTOK", "FOLDROUTOK","0")[/COLOR][/SIZE][/FONT]
      79. [FONT=Times New Roman][size=14][COLOR=black]IF $FOLINOK = 1 AND $FOLOUTOK = 1 THEN GUICtrlSetState($MOVE, $GUI_ENABLE)
      80. IF $FOLINOK = 1 AND $FOLOUTOK = 1 THEN GUICtrlSetState($COPY, $GUI_ENABLE)
      81. ENDIF
      82. Case $msg = $COPY OR $msg = $MOVE
      83. $InputYPE2 =GUICtrlRead($InputYPE)
      84. $result = StringLeft($InputYPE2, 1)
      85. $chk1 = 1
      86. $chk2 = 0
      87. if $result = "." then $chk1 = 0
      88. if $result = " " then $chk2 = 1
      89. if $chk1 = 1 or $chk2 = 1 then
      90. $msgshk = "type the file of type without spase on bgning"
      91. if $result > " " or $result > " " then $msgshk = "type theh file of type withe dot like .exe .gif .avi"
      92. MsgBox(4096, "Test",$msgshk , 10)[/COLOR][/SIZE][/FONT]
      93. [FONT=Times New Roman][size=14][COLOR=black]else
      94. $InputYPE2 =GUICtrlRead($InputYPE)
      95. IF $msg = $COPY THEN $BOTTONNAMPR = 100
      96. IF $msg = $MOVE THEN $BOTTONNAMPR = 200[/COLOR][/SIZE][/FONT]
      97. [FONT=Times New Roman][size=14][COLOR=black]$FOLIN = IniRead("BATH.dll", "FOLDRIN2", "FOLDRIN2","BATH.DLL <== لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي ")
      98. $FOLOUT = IniRead("BATH.dll", "FOLDROUT2", "FOLDROUT2","BATH.DLL <== لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي ")[/COLOR][/SIZE][/FONT]
      99. [FONT=Times New Roman][size=14][COLOR=black]$search = FileFindFirstFile(($FOLIN) & "\*" & $InputYPE2) [/COLOR][/SIZE][/FONT]
      100. [FONT=Times New Roman][size=14][COLOR=black]If $search = -1 Then MsgBox(0, "Error", "No files/directories matched the search pattern")
      101. If $search > -1 OR $search < -1 AND GUICtrlRead($Checkbox1) = $GUI_UNCHECKED THEN OK()
      102. If $search > -1 OR $search < -1 AND GUICtrlRead($Checkbox1) = $GUI_CHECKED THEN OK2()
      103. endif[/COLOR][/SIZE][/FONT]
      104. [FONT=Times New Roman][size=14][COLOR=black] Case $msg = $GUI_EVENT_CLOSE
      105. ExitLoop
      106. Case Else
      107. ;;;
      108. EndSelect
      109. WEnd
      110. Exit[/COLOR][/SIZE][/FONT]
      111. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      112. [FONT=Times New Roman][size=14][COLOR=black]Func OK()[/COLOR][/SIZE][/FONT]
      113. [FONT=Times New Roman][size=14][COLOR=black]$FOLIN = IniRead("BATH.dll", "FOLDRIN2", "FOLDRIN2","BATH.DLL <== لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي ")
      114. $FOLOUT = IniRead("BATH.dll", "FOLDROUT2", "FOLDROUT2","BATH.DLL <== لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي ")[/COLOR][/SIZE][/FONT]
      115. [FONT=Times New Roman][size=14][COLOR=black]$NOFILE = 0
      116. While 1
      117. $NOFILE = $NOFILE + 1
      118. $FILEFIND = FileFindNextFile($search)
      119. If @error Then ExitLoop
      120. EnvSet( $NOFILE & "A", "FILE" & $NOFILE)
      121. $FILESTRIREP = StringReplace($FILEFIND, $InputYPE2, " ")
      122. EnvSet( $NOFILE & "B" ,$FILESTRIREP)
      123. EnvSet( $NOFILE & "C" ,$FILEFIND)[/COLOR][/SIZE][/FONT]
      124. [FONT=Times New Roman][size=14][COLOR=black]wend
      125. $XNAM = 0 [/COLOR][/SIZE][/FONT]
      126. [FONT=Times New Roman][size=14][COLOR=black]FileDelete("REPORT.TXT")
      127. $FILEREBORT = FileOpen("REPORT.TXT", 1)
      128. ; Check if file opened for writing OK
      129. If $FILEREBORT = -1 Then
      130. MsgBox(0, "Error", "Unable to open file.")
      131. Exit
      132. EndIf[/COLOR][/SIZE][/FONT]
      133. [FONT=Times New Roman][size=14][COLOR=black]DirCreate(($FOLOUT) & "\FOLOUT")[/COLOR][/SIZE][/FONT]
      134. [FONT=Times New Roman][size=14][COLOR=black]Do
      135. $XNAM = $XNAM + 1
      136. $GETNAM = EnvGet ( ($XNAM) & "A" )
      137. $GETNAM3 = EnvGet ( ($XNAM) & "C" )
      138. GuiCtrlSetData($IN, $GETNAM3)
      139. IF $BOTTONNAMPR = 100 THEN FileCopy(($FOLIN)& "\" & ($GETNAM3) & "*.*", ($FOLOUT) & "\FOLOUT\" & ($GETNAM) & ".*")
      140. IF $BOTTONNAMPR = 200 THEN FileMove(($FOLIN)& "\" & ($GETNAM3) & "*.*", ($FOLOUT) & "\FOLOUT\" & ($GETNAM) & ".*")
      141. GuiCtrlSetData($OUT, $GETNAM)
      142. IF $BOTTONNAMPR = 100 THEN FileWriteLine($FILEREBORT, "NAQWS ALQATR")
      143. IF $BOTTONNAMPR = 200 THEN FileWriteLine($FILEREBORT, "")
      144. IF $BOTTONNAMPR = 100 THEN FileWriteLine($FILEREBORT, "")
      145. IF $BOTTONNAMPR = 200 THEN FileWriteLine($FILEREBORT, "")
      146. IF $BOTTONNAMPR = 100 THEN FileWriteLine($FILEREBORT, "REPROT COPY")
      147. IF $BOTTONNAMPR = 200 THEN FileWriteLine($FILEREBORT, "REPROT MOVE")
      148. IF $BOTTONNAMPR = 100 THEN FileWriteLine($FILEREBORT, $GETNAM3 & " COPY TO ====> " & $GETNAM)
      149. IF $BOTTONNAMPR = 200 THEN FileWriteLine($FILEREBORT, $GETNAM3 & " MOVE TO ====> " & $GETNAM)
      150. Until $XNAM = $NOFILE - 1[/COLOR][/SIZE][/FONT]
      151. [FONT=Times New Roman][size=14][COLOR=black]FileClose($FILEREBORT)[/COLOR][/SIZE][/FONT]
      152. [FONT=Times New Roman][size=14][COLOR=black]FileClose($FILEFIND)[/COLOR][/SIZE][/FONT]
      153. [FONT=Times New Roman][size=14][COLOR=black]IniWrite("BATH.dll", "FOLDROUTOK", "FOLDROUTOK", "0")
      154. IniWrite("BATH.dll", "FOLDRINOK", "FOLDRINOK", "0")
      155. GUICtrlSetState($MOVE, $GUI_DISABLE)
      156. GUICtrlSetState($COPY, $GUI_DISABLE)[/COLOR][/SIZE][/FONT]
      157. [FONT=Times New Roman][size=14][COLOR=black]$REBORTCOMMAND = "notepad.EXE REPORT.TXT"[/COLOR][/SIZE][/FONT]
      158. [FONT=Times New Roman][size=14][COLOR=black]RunWait(@ComSpec & " /c " & $REBORTCOMMAND , "",@SW_HIDE)[/COLOR][/SIZE][/FONT]
      159. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      160. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      161. [FONT=Times New Roman][size=14][COLOR=black]EndFunc [/COLOR][/SIZE][/FONT]
      162. [FONT=Times New Roman][size=14][COLOR=black]Func OK2()[/COLOR][/SIZE][/FONT]
      163. [FONT=Times New Roman][size=14][COLOR=black]$FOLIN = IniRead("BATH.dll", "FOLDRIN2", "FOLDRIN2","BATH.DLL <== لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي ")
      164. $FOLOUT = IniRead("BATH.dll", "FOLDROUT2", "FOLDROUT2","BATH.DLL <== لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي ")[/COLOR][/SIZE][/FONT]
      165. [FONT=Times New Roman][size=14][COLOR=black]$NOFILE = 0
      166. While 1
      167. $NOFILE = $NOFILE + 1
      168. $FILEFIND = FileFindNextFile($search)
      169. If @error Then ExitLoop
      170. EnvSet( $NOFILE & "A", "FILE" & $NOFILE)
      171. $FILESTRIREP = StringReplace($FILEFIND, $InputYPE2, " ")
      172. EnvSet( $NOFILE & "B" ,$FILESTRIREP)
      173. EnvSet( $NOFILE & "C" ,$FILEFIND)[/COLOR][/SIZE][/FONT]
      174. [FONT=Times New Roman][size=14][COLOR=black]wend
      175. $XNAM = 0 [/COLOR][/SIZE][/FONT]
      176. [FONT=Times New Roman][size=14][COLOR=black]FileDelete("REPORT.TXT")
      177. $FILEREBORT = FileOpen("REPORT.TXT", 1)
      178. ; Check if file opened for writing OK
      179. If $FILEREBORT = -1 Then
      180. MsgBox(0, "Error", "Unable to open file.")
      181. Exit
      182. EndIf[/COLOR][/SIZE][/FONT]
      183. [FONT=Times New Roman][size=14][COLOR=black]DirCreate(($FOLOUT) & "\FOLOUT")[/COLOR][/SIZE][/FONT]
      184. [FONT=Times New Roman][size=14][COLOR=black]Do
      185. $XNAM = $XNAM + 1
      186. $GETNAM = EnvGet ( ($XNAM) & "A" )
      187. $GETNAM3 = EnvGet ( ($XNAM) & "C" )
      188. GuiCtrlSetData($IN, $GETNAM3)
      189. IF $BOTTONNAMPR = 100 THEN FileCopy(($FOLIN)& "\" & ($GETNAM3) & "*.*", ($FOLOUT) & "\FOLOUT\" & "*.*")
      190. IF $BOTTONNAMPR = 200 THEN FileMove(($FOLIN)& "\" & ($GETNAM3) & "*.*", ($FOLOUT) & "\FOLOUT\" & "*.*")
      191. GuiCtrlSetData($OUT, $GETNAM3)
      192. IF $BOTTONNAMPR = 100 THEN FileWriteLine($FILEREBORT, "NAQWS ALQATR")
      193. IF $BOTTONNAMPR = 200 THEN FileWriteLine($FILEREBORT, "")
      194. IF $BOTTONNAMPR = 100 THEN FileWriteLine($FILEREBORT, "")
      195. IF $BOTTONNAMPR = 200 THEN FileWriteLine($FILEREBORT, "")
      196. IF $BOTTONNAMPR = 100 THEN FileWriteLine($FILEREBORT, "REPROT COPY")
      197. IF $BOTTONNAMPR = 200 THEN FileWriteLine($FILEREBORT, "REPROT MOVE")
      198. IF $BOTTONNAMPR = 100 THEN FileWriteLine($FILEREBORT, $GETNAM3 & " COPY TO ====> " & $GETNAM3)
      199. IF $BOTTONNAMPR = 200 THEN FileWriteLine($FILEREBORT, $GETNAM3 & " MOVE TO ====> " & $GETNAM3)
      200. Until $XNAM = $NOFILE - 1[/COLOR][/SIZE][/FONT]
      201. [FONT=Times New Roman][size=14][COLOR=black]FileClose($FILEREBORT)[/COLOR][/SIZE][/FONT]
      202. [FONT=Times New Roman][size=14][COLOR=black]FileClose($FILEFIND)[/COLOR][/SIZE][/FONT]
      203. [FONT=Times New Roman][size=14][COLOR=black]IniWrite("BATH.dll", "FOLDROUTOK", "FOLDROUTOK", "0")
      204. IniWrite("BATH.dll", "FOLDRINOK", "FOLDRINOK", "0")
      205. GUICtrlSetState($MOVE, $GUI_DISABLE)
      206. GUICtrlSetState($COPY, $GUI_DISABLE)[/COLOR][/SIZE][/FONT]
      207. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      208. [FONT=Times New Roman][size=14][COLOR=black]$REBORTCOMMAND = "notepad.EXE REPORT.TXT"[/COLOR][/SIZE][/FONT]
      209. [FONT=Times New Roman][size=14][COLOR=black]RunWait(@ComSpec & " /c " & $REBORTCOMMAND , "",@SW_HIDE)[/COLOR][/SIZE][/FONT]
      210. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      211. [FONT=Times New Roman][size=14][COLOR=black]EndFunc
      212. [/COLOR][/SIZE][/FONT]
      213. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      214. [FONT=Times New Roman][size=14][COLOR=black][/COLOR][/SIZE][/FONT]
      215. [FONT=Times New Roman][size=14][COLOR=black]
      عرض الكل



      سأكمل شرح أوامر البرنامج لاحقا

      وهذا هووه شرح البرنامج

      1- حدد المجلد الذي يحتوي على الملفات التي تود فرزها

      2- حدد المجلد الذي سيتم الفرز إليه أو نقل الملفات إليه

      3-

      4- حدد صيغة الملف الذي تود أن تنقله أو تفرزه عن باقي الملفات
      يجب أن تكون الصيغة مع النقطه دوت و بدون مسافه في البداية مثل
      .

      كود المصدر

      1. exe .avi .gif .com .mp3


      5- إذا كنت ترغب بتغير اسم الملفات عند فرزها على شكل رقمي
      تصاعدي فاترك الخيار كما هووه إذا لم ترغب بتغير اسم الملفات
      فقم بوضع اشارة الصح

      6- خيار الفرز مع النسخ سيتم نسخ الملفات مع فرزها

      7- خيار الفرز مع الازاحه أو النقل مثل cut و paste على الويندوز

      8- عند عملية النقل ستضهر اسماء الملفات قبل نسخها بدل النقاط

      9- ستضهر اسماء الملفات بعد نقلها أو تغير اسمها بعد النقل

      البرنامج من المرفقات أروح أنام

      ملاحضة سيتم تنشيط الخيارين copy و move بعد تحديد المجلد foldrin
      و المجلد foldrout

      لكم التحية



    • أسير نت كتب:

      مشكور أخوي ناقوس الخطر على برنامجك الرائعه

      الصراحه انت واحد ترفع الراس

      كل التحية



      شكرا لأسير النت يعطيك العافية و بارك لله فيك و اطلاله بهية كما تعودنا
      دائما جل التحية

      أخوك ناقوس
    • - شرح أوامر البرنامج

      اللغة المستخدمة AutoIt

      يوفرها برنامج AutoIt

      و من خلال اطلاعي على موقع البرنامج اللغة المستخدمة هي أقرب إلى لغة الــ c

      صفحة تحميل محرر نصوص الغة مع أمثلة و أدوات مساعدة و بعض التطبيقات الخاصة
      بالبرنامج كلها ستجدهافي مجلد البرنامج بموقع برجرم فايل بعد التنصيب من هنا الصفحة

      منتدى خاص للغة و البرنامج باللغة الإنجليزية يمكنك البحث عن حلول إذا واجهة أي مشكلة
      أو رغبت التعرف على تجارب الأخرين بهذه اللغة و البرنامج من هنا منتدى البرنامج
      ______________________________________________

      - لكل لغة برمجية أوامر تصميم بمعنى تصميم الأيقونات الأزرار الفورم يعني تصميم
      جسم البرنامج بدون عقل و أغلب الغات يكون لها برنامج تصميم خاص بها لتسهيل عملية
      تصميم البرنامج مثل لفرنت بيج أو مثل برنامج التصميم على الفيجول بيسك كما يمكنك
      التصميم عن طريق الأوامر أيضا بدون استخدام برنامج التصميم الخاص باللغة البرمجية
      و لكن ستكون العملية متعبة لأن المسافات تحدد رقميا و لكل أمر تقريبا أربع مسافات
      الطول العرض المركز الإرتفاع و أيضا الخصائص و التي تدعى styles و هي تضيف
      ميزات على أوامر التصميم مثل توسيط الخط أو نقله لليمين أو لليسار إلى أخره .......


      - سأقوم أولا بشرح أوامر جسم البرنامج أو أوامر التصميم من على الصورة التالية



      قبل أن أبدء جميع الخيارات التي بالون الواحد تنفذ بنفس الأمر سأبداء بأمر إنشاء
      فارم و لكي أسهل عليكم عملية فهم الأوامر تخيل أنك في حصة رياضيات تقوم
      بحل معادلات رياضية

      الخيار رقم 1
      سأقوم بشرح المسافات و أقسامها بتفصيل و أيضا الاسم المستخدم بلأمر و تعريف
      الأمر

      أولا أمر الفارم كتالي



      الأمر و كأنه معادلة س = ص +1

      أولا معرف الأمر ====> يمثل س بالمعادلة

      دائما تعريف أي أمر تكون علامة الدولار في البداية و هي $ ثم بعد هذه
      العلامة نكتب أي اسم نريده لكي يكون تعريف للأمر من ثم علامة =
      و يفيدنا التعريف في الدلاله على الأمر عند ما نريد استخدامه لاحقا

      ثانيا الأمر =======> يمثل ص بالمعادلة

      تعريب الأمر قم بانشاء إطار

      ثالثا كيف ستقوم بإنشاء الإطار أوكيف هي (ص) ص مضاف لها 1

      الإطار طبعا سيكون له موقع و طول و عرض

      كيف هووه الأمر كتالي

      غالبا بعد أوامر التصميم نقوم بفتح قوس يحتوي على تضاريس الأمر

      - الاسم الذي يضهر عليه الشكل المصمم في جسم البرنامج و كما يضهر
      بالصورة السابقة هووه form1 الاسم دائما يأتي أول القوس و يجب أن
      يكون بين علامتي تنصيص و ممكن اختيار أي اسم نريده

      - الأرقام و هي تمثل الموقع على الشاشة و الطول و العرض لإطار البرنامج
      و يفصل بين كل مجموعة رقمية فاصلة حيث كل مجموعة تمثل التالي

      المجموعة الأولى
      419 - عرض الشكل المصمم على الشاشة يزيد بزيادة الرقم من اليسار إلى اليمين
      المجموعة الثانية
      217 - طول الشكل المصمم من الأسفل إلى الأعلا يزيد بزيادة الرقم
      المجموعة الثالثة
      155 - موقع الشكل المصمم أو المسافة على الشاشة من اليمين إلى اليسار
      تزيد بزيادة الرقم
      المجموعة الرابعة
      145 - موقع الشكل المصمم أو المسافة على الشاشة من الأعلا إلى الأسفل
      تزيد بزيادة الرقم

      إغلاق القوس


      باقي أوامر التصميم ينطبق عليها ما ينطبق على الأمر السابق مع إختلاف
      الأمر و أسردها لكم قبل أن أنسى بنسبة لموقع الأشكال التي ستكون على
      فارم البرنامج أو إطار البرنامج سنعتبر إطار البرنامج هووه بدل الشاشة
      أي سيتحدد موقع الشكل على الاطار أي لن يخرج عنه و الأرقام للموقع
      الشكل ترمز أو تنحصر على الإطار

      2- أمر tab و تعريبه تبويب كما يضهر بالون الأسود على صورة البرنامج
      هذا الأمر حاله استثنائية يأتي على د فعتين حيث أن التبويب يشمل مجموعة
      من الأشكال المصممة و ممكن أن يكون بالبرنامج أكثر من تبويب و تتحدد
      الأشكال المصممة على التبويب الفلاني بأنها تأتي أسفل منه مباشرة على
      سكاربت البرنامج من ثم يأتي التبويب الأخر و تأتي بعده الأشكال المصمة
      عليه و هكذا حتى أخر تبويب على سكاربت البرنامج أيضا سيتغير الموقع
      من إطار البرنامج لموقع التبويب أي أن الأرقام لموقع الشكل المصمم سترمز
      و تنحصر على التبويب

      الأولى

      العرض و الطول و الموقع

      الثانية الاسم



      3- الأمر ما يضهر بصورة البرنامج للخيارات
      3 و 4 و 5 بالون البني



      التعريب زر أو أزرار قم بانشاء زر على التبويب السابق (tab)

      4- الأمر




      تعريب الأمر تسمية نلاحض أن الأربعة أوامر الأولى من الأمر لابلي لا يوجد لها تعريف و طبعا
      هذا ممكن لبقية الأوامر أيضا أي مباشرة بدون تعريف و يرجع السبب في أن هذا الأمر المغزى
      منه هي تسمية تضهر على إطار أو تبويب البرنامج و لن نحتاج إليه فيما بعد لذلك يكتب بصورة
      مباشرة و هووه يمثل الخيارات 7 و 8 و 9 و 10 كما تضهر على صورة البرنامج بالون الأزرق


      5- الأمر




      التعريب حقل يتم فيه الكتابة كما يضهر على صورة البرنامج في الخيار 14
      بالون الأخضر

      6- الأمر



      تعريبه صندوق الصح أو علامة الصح و هوه يتحدد بواضع إشارة صح أو عدم وضعها لإختيار
      خاصية أو خيار سيقوم البرنامج فيما بعد بتنفيذها و هووه كما يضهر على صورة
      البرنامج بالون الذهبي

      و للموضوع بقية غدا إن شاء الله لكم التحية
    • كود المصدر

      1. $FOLIN = IniRead("BATH.dll", "FOLDRIN2", "FOLDRIN2","BATH.DLL <== لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي ")
      2. $FOLOUT = IniRead("BATH.dll", "FOLDROUT2", "FOLDROUT2","BATH.DLL <== لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي ")


      ملاحضة أعزائي خطاء في كتابة رسالة خطاء بالبرنامج كما تضهر
      بالجز السابق من الكود

      لا يمكن إكمال العملية لفقدان ملف ضروري بالسيدي

      خطاء عشوائي حيث أني أعمل على برنامج أخر لجمع أكثر من سيدي للويندوز
      يجب أن تكون بلاقيمة علامتي تنصيص " " أو عبارة لا يمكن إكمال العملية
      لفقدان ملف مسارات البرنامج مع مسج بوكس و أمر if

      و أيضا هناك أمر ناقص بأول الفارم

      البرنامج يعمل كماهووه الآن و بدون أي مشاكل الأمر الناقص خيار
      اضافي لن يؤثر على البرنامج سأقوم بتعديله غدا إن شاء الله لكم التحية
    • إكمال شرح أوامر البرنامج


      أولا هذه هي أوامر البرنامج كما هي على السكاربت الخاص به بعد التعديل على رسالة الخطاء و إضافة الأمر الناقص الإضافي إنتقل أسفل الصورة



      أوامر التصميم إنتهينا منها و هي تضهر الجزء التالي من الصورة السابقة




      نبدء بالمهم سأشرح بقية الأوامر و العملية بشكل تسلسلي من أعلا الصورة السابقة حتى
      أسفلها يأتي بعد أوامر التصميم للبرنامج الأوامر التالية كما تضهر على الصورة السفلية

      و ايضا قبل أن أبداء عند ما نقوم بتشغيل البرنامج ماذا يحدث يبدء البرنامج بقرائة الأوامر
      المسجلة عليه من أعلا السكاربت حتى ينتهي من أوامر التصميم ثم يتوقف و ينتضر إجراء
      العمليات التي سيقوم بها مستخدم البرنامج أي سيكون في وضع استعداد طبعا البرنامج
      غالبا ما يكون على شكل تطبيق بامتداد EXE أو COM



      أولا هذه هي الجزئية المضافة للبرنامج و التي كانت ناقصة

      إلى الآن البرنامج يقراء أوامر التصميم و لم ينتهي بعد

      الأوامر المستخدمة بالصورة السابقة كتالي

      - INIREAD
      - IF يأتي بعده THEN
      - GUTCTRLSETSTATE
      -

      نأخذ أول أمر INIRED

      الأمر مجزء ليفهم معناه INI RED

      المقصود منه قرائة ملف INI كثير ما نسمع أو نجد بالويندوز أو بمجلدات البرامج ملفات
      بامتداد INI و هووه عبارة عن ملف يخضع لنضام معين في عملية تسجيل البيانات عليه
      يعني ملف برمجي و يعتر من الملفات النصية و يمكن و بسهوله استعراض محتواه على
      محرر النصوص NOTBAD
      و يضهر شكله على الويندوز كتالي

      استعرض معكم محتوى ملف INI للبرنامج



      سأبدء بشرح نضام الملف INI و هووه ما يهمنا
      نلاحض القوسين بالون الأحمر [FOLDIN2]

      هذا الجزء يسمى سكشن أو قسم و يعتبر قسم مستقل عن باقي ألاقسام ما يأتي أسفل
      منه فهووه خاص به حتى يأتي السكشن أو القسم التالي و ما يأتي بعده فهووه خاص
      به حتى القسم التالي و هكذا حتى نهاية الملف

      نلاحض أسفل القسم [FOLDIN2] توجد العبارة التالية

      ما قبل = يسمى الــ KEY مفتاح و هووه مستقل أيضا عن بقية مفاتيح السكشن أو القسم

      ما بعد = ممكن أن نسميها بيان نصي DATA

      نرجع لأصل الأمر سأكتبه بأصله بدون تغيرات ليتضح المفهوم



      أولا الأمر INIREAD

      ثانيا إتصل بالملف الفلاني FILENAME

      ثالثا إذهب إلى السكشن الفلاني SECTION

      رابعا إذهب للــ المفتاح الفلاني KEY

      خامسا قم بقرائة البيانات السجلة عليه DATA

      سادسا DEFAULT وهوه الخيار الافتراض أو بمعنى أخر إذا لم تجد
      الملف أو السكشن القسم أو الكي المفتاح إعطيني النيجه الإفتراضية DEFAULT

      نرجع لأوامر البرنامج



      ساخذ أول أمر و هووه كتالي



      نقارنه بأصل الأمر



      نلاحض أن اسم الملف في أمر البرنامج بامتداد DLL و ليس INI لا يشترط أن يكون
      الملف بامتداد INI الشرط المطلوب لستخدام هذا الأمر هووه أن تكون البيانات النصية
      المسجلة بالملف الذي نود استخدام هذا الأمر معه مسجلة بنضام ملفات INI يعني أن
      تكون مسجلة على شكل (قسم ثم مفتاح ثم بيانات كما بشكل السابق) الذي هووه



      و اصطلاحا لأن هذا النضام يستخدم بالذات على ملفات INI لذلك إطلق على الأمر INIRED

      وعلى سياق هذا الأمر ملف الإجابه الذي يستخدمه الويندوز في عملية التثبيت المسبق و الذي
      ورد بموضوع أخي ذماستر يخضع لنفس نضام ملفات INI و هووه يأتي على امتداد SIF
      حيث أن الويندوز يقراء البيانات المسجلة عليه مسبقا ثم يقوم بتنفيذها و هذه العمليه شبيه
      بالعملية التي يقوم بها البرنامج

      نرجع للمقارنة





      اسم الملف FILENAME ====> يأتي مكانه "BATH.DLL"

      السكشن أو القسم و الذي سيكون بداخل ملف BATH.DLL على شكل [SECTION]
      سيكون ======> "FOLDRINOK"

      الكي أو المفتاح و الذي سيكون أسفل القسم و يضهر في الأمر الأصلي "KEY"
      سيكون على شكل أيضا FOLDRINOK

      نلاحض أن الأمر في البرنامج معه معرف في بدايته و هنا تتضح فائدة معرف الأمر

      أختصر
      معنى أمر البرناج إذهب إلى ملف BATH.DLL ثم إذهب إلى القسم FOLDRINOK
      ثم إذهب إلى الــ KET أيضا FLDRINOK و إعطيني البيانات المسجلة من بعد علامة =

      والتي ستكون مسجلة على شكل إختصار معرف الأمر و هووه

      إنتهى الأمر INIRED

      نرجع لإكمال عمل البرنامج البرنامج حتى الآن يقراء أوامر التصميم أو المرحلة الأولى من
      القرائة لم يستعد بعد لطلبات مستخدم البرنامج




      INIREAD هذا الأمر انتهينا منه

      - IF يأتي بعده THEN
      - GUTCTRLSETSTATE
      -

      الأمر التالي هووه أيضا قرائة لنفس الملف BATH.DLL و لكن لقسم أخر و مفتاح اخر


      نأتي للأمر IF و دائما بعد أمر IF على لغة هذا البرنامج يكون هناك THEN سأكتب
      الأمر كاملا



      أولا قبل أن أبداء معنى أمر IF باختصار شديد (إذا) و هي أداه برمجيه شرطية

      مثلا نقول إذا كنت تتصفح الساحة فلا تبخل بردود على مواضيعها



      طبعا و هي نتاج قرائة الملف BATH.DLL

      بمعنى إذا كانت نتيجة القرائة الأولى = 0 و إيضا إذا كانت النتيجة
      الثانية لقرائة الملف = 0 قم بعمل التالي THEN



      GUTCTRLSETSTATE

      هذا الأمر يتضح أنه أمر تحكم في وضعية الأشكال المصممة على البرنامج
      طبعا الشكل المصمم له تعريف كما ذكرت سابقا نلاحض أنا قمنا بفتح قوس
      ثم و ضعنا المعرف التالي لو رجعنا ثاني صورة بهذا الرد و التي
      تشمل أوامر التصميم سنجد أن هذا المعرف يخص الخيار MOVE أو الزر موف
      كما يضهر في الصورة للبرنامج بردي السابق بالون البني بعد المعرف تأتي فاصلة
      ثم الأمر و معناه إزالة التنشيط عن خيار MOVE

      الأمر كاملا إذا كانت القرائة الأولى و الثانية لملف BATH.DLL تساوي = 0
      فقم بإزالة التنشيط عن خيار MOVE كما يضهر على صورة البرنامج باهت
      و غير نشط

      الأمر الذي يليه


      نفس الأمر السابق و لكن نلاحض أن إزالة التنشيط ستكون عن خيا كوبي



      يضهر معرف الأمر كوبي بأمر التحكم و إزالة التنشيط

      نرجع لملاحضة ذكرتها سابقا بهذا الرد و هي

      سادسا DEFAULT وهوه الخيار الافتراض أو بمعنى أخر إذا لم تجد
      الملف أو السكشن القسم أو الكي المفتاح إعطيني النيجه الإفتراضية DEFAULT


      طبعا البرنامج يتكون من ملف واحد بامتداد EXE و لا يوجد معه أي ملف بامتداد
      DLL طبعا أول مره نشغل فيها البرنامج سيكون الملف BATH.DLL غير موجود
      في هذه الحلة ستكون نتيجة أي قرائه من هذا الملف هي الخيار الإفتراضي الذي يضهر
      على المقارنة السابقة كتالي






      صفر و بالتلي سيتم إزالة التنشيط عن خيار COPY و MOVE كما يضهر لك حين
      ما تقوم بتشغيل البرنامج بعد هذين الأمرين سيتوقف البرنامج يتنضر طلبات المستخدم
      لينفذها سأعود عن قريب إن شاء الله لإكمل معكم شرح الأوامر لكم التحية
    • قبل أن أبدء البرنامج بعد إضافة الجزئية



      لكي لا تتطر عند كل مرة تشغل فيها البرنامج لتحديد FOLDRIN و FOLDROUT
      من أجل تنشيط الخيار COPY و MOVE مع تعديل أخر بسيط بعلامة < أيضا لا تؤثر
      على النسخة الأولى من البرنامج

      البرنامج من المرفقات
    • سأبداء الآن بأوامر البرنامج



      دائما عند الإنتهاء من أوامر التصميم أو أي إضافات عليه نقوم بوضع الأمر



      في نهاية أوامر التصميم

      ثم مباشرة أمر WHILE 1 و معه أمر WEND

      الأمر WHILE 1 يستخدم في بعض الأوامر التي تتطلب إرجاع القرائه بعد
      تنفيذ الأ وامر المطلوبه إلى ما كانت عليه قبل القرائه بعنى

      WHILE 1

      هنا ستكون مجموعة الأوامر

      WEND

      عند تفيذ مجموعة الأوامر ستتوقف القرائه للأوامر عند WEND ثم سترجع
      من جديد إلى WHILE إلى ما شاء الله في دورة متواصلة


      انضر لصورة التالية و التي توضح مجموعة الأوامر التي يشملها الأمرين WHELE
      و WEND على البرنامج



      لا حض في أخر الصورة بالون الأزرق يتضح أمر WEND قبل أمر EXIT
      حيث أن أمر EXIT و هووه أمر إغلاق البرنامج لا يتم تنفيذه حيث أن القرائه
      ستصل إلى أمر WEND ثم سترجع من جديد WHEL إلا في حالة واحدة
      عند إغلاق البرنامج سأتي على شرحها لا حقا

      نرجع لصورة السابقة



      بعد أمر WHEL يأتي الأمر التالي مع المعرف


      استقبل رسائل أوامر التصميم أو خيارات البرنامج المختلفه من أزرار أو صندوق اشارة الصح
      أو أي شكل مصمم على البرنامج يؤدي مهمة معينة هذا الأمر من أهم أوامر الغة البرمجية حيث
      أنه حلقة الوصل بين ما يطلبه مستخدم البرنامج و ما سينفذه البرنامج من أوامر يعني كنترول
      لرسائل البرنامج المختلفة نلاحض المعرف
      يأتي بعده أمر و هووه اختر
      و هووه دائما يتبع الأمر
      بعدها يأتي الأمر
      CASE بمعنى حالة
      هواه تعريف الأمر
      و كأن الأمر كتالي = CASE
      انضر لأصل الأمر و كأنا عوضنا عن الأمر
      بمعرفه الذي هووه مثل التعويض عن قيمة بمعادلة
      رياضية طبعا المعرف الأخير بعد علامة = هووه معرف يخص
      الخيار FOLDRIN كما يضهر على صورة البرنامج بالون البني و هووه خيار
      تحديد المجلد الذي سنقوم بفرز الملفات منه

      دورة الأمر WHEL مستمرة ما دام البرنامج قيد التشغيل

      و لكي أسهل عليكم فهم هذه المجموعة من الأوامر مهمتها استقبل الرسائل كتالي
      طبعا دورة الأمر WHEL مستمرة ما دام البرنامج قيد التشغيل عند ما يقوم المستخدم
      بالضغط عن طريق الماوس على أي خيار بالبرنامج و لنفترض أن المستخدم اختار خيار
      FOLDRIN سيقوم الأمر باستقبال الرسالة و توجيه
      القرائه مباشرة أسفل من الأمر أسفل الحالة CASE
      التي يوجد بها المعرف للخيار FOLDRIN كما يضهر بعد علامة =
      حيث أن كل حالة مستقله عن غيرها من الحلات الأخرى و طبعا الرسالة الصادرة
      عن المستخدم تمثل و فقط حالة و احدة و الحالة تمثل خيار واحد عادتا مع استثنائات
      من خيارات البرنامج أي لا يمكن أن تصدر من المستخدم رسالتين في نفس الحضة
      بعد استلام الرسالة و تنفيذ الأوامر المطلوبه و التي ستكون أسفل الحالة مباشرة
      سترجع القرائه لخيار WHEL و في دورة مستمرة طبعا الحلات تكون مرتبه
      بشكل عمودي الحالة الأولى ثم أوامرها ثم الحالة الثانية ثم أوامرها و هكذا حتى
      أخر حلة ثم في النهاية نضع الأمر إقفال لخيار
      ثم WEND كما يضهر أسفل صورة مجموعة الأوامر

      ببساطه الدورة مستمرة أثناء صدور رسالة من المستخدم سيتم توجهها لمجموعة
      الأوامر التي تلبي متطلب الرسالة الصادرة

      و للموضوع بقية غدا إن شاء الله لكم التحية


    • سأكمل اليوم باقي أوامر البرنامج لا زلنا بعد فيwhile و wend و case
      و هذه صورة حذفت منها جميع الأوامر و تركت الأوامر المهمة لفهم هذه العملية





      أولا هذه كل الحلات التي يشملها البرنامج و هي ترمز للخيارات المتوفرة بالبرنامج
      اسردها حسب الرقم

      1- الحالة تمثل خيار أو زر تحديد المجلد الذي سنقوم بفرز الملفات منه
      ====>

      2- الحالة تمثل خيار أو زر تحديد المجلد الذي سنقوم بفرز الملفات إليه
      =====>

      3- هنا الحلة الاستثنائية و التي تشمل خيارين و يفصل بين الخيارين or
      يعني أو و هي تمثل الخيارين نسخ و خيار إزاحة move
      ====> OR

      4- الخيار الأخير و هووه خيار اغلاق البرنامج
      =====>

      طبعا دورة WHILE و WEND مستمرة حينما يقوم المستخدم باختيار
      أحد الخيارت السابقة سيستلمها الأمر



      و سيكون ناتج هذا الأمر هووه معرف الخيار و هذا هووه ناتج كل الخيارات

      ====> ====>

      ====> ====>

      ====> OR


      =====> ========>




      إذا تم تطابق الرسالة مع الحالة أو CASE ستتم قرائة الأوامر أسفل الحالة
      مباشرة إلى هنا اكتف بهذا الشرح المطول عن كيفية استقبال رسائل البرنامج

      و أبداء بأول خيار للبرنامج

      1- ====> =====>


      الحالة مع أوامر هذه الحلة كتالي



      سيقوم المستخدم باختيار خيار و مباشرة سيتم استلام الرسالة ثم ستتجه
      القرائة مباشرة إلى ونبداء بأول أمر

      عند ما يقوم المستخدم باختيار الخيار تضهر قائمة تحدد فيها موقع مجلد
      الملفات التي ستقوم بفرزها حسب الشكل التالي



      أول أمر و هووه



      هذا الأمر يعطيك عند استخدامة الصورة السابقة بمعنى هووه أمر لتحديد مجلد ستقوم
      بعمليات لا حقا عليه لكي لا ادخل في تفاصيل و يطول الشرح ساكتفي بما يستوجب
      شرحه فقط

      نلاحض معرف الأمر دائما معرف الأمر لهذا الأمر سيكون مسار
      وبالتحديد مسار المجلد الذي قمنا بتحديده أو اختياره نلاحض في الصورة للأمر
      خيارين الأول خيار OK و الثاني خيار CACEL

      نتقل للأمر الذي يليه



      معنى هذا الأمر إذا كانت نتيجة المعرف أكبر من لا شئ فواصل القرائة إلى
      الأسفل

      نرجع لخياري الصورة OK ستكون نتيجتها مسار أكبر من لا شئ
      الخيار CACEL ستكون نيجته فاي أو لا شئ

      بمعنى إذا أخترت خيار OK ستتم مواصلة قرائة الأوامر
      إذا اخترت CACEL سيتوقف البرنامج عن القرائه

      طبعا سنواصل الشرح على خيار OK

      الأمرين التاليين



      سبق و شرحت أمر


      الأمرين السابقين هم عكس الأمر INIREAD

      بعنى أننا سنقوم بتسجيل بيانات على ملف INI أو سنقوم بتسجيل بيانات بنضام
      التسجيل على ملفات INI على أي امتداد كان لأني مثل ما ذكرت سابقا امتداد
      الملف ليس شرطا لستخدام أمر INIREAD كذلك هووه الحال بنسبة لأمر
      الكتابة بنضام تسجيل ملفات INI عن طريق استخدام الأمر INIWRITE

      سأدخل مباشرة بمقارنة أحد الأمرين السابقين مع أصل الأمر INIWRITE مثل
      ما فعلت سابقا و قارنت أمر INIREAD

      سأخذا أول أمر من الأمرين السابقين



      ثم هذا هووه أصل الأمر INIWRITE




      قبل أن أبداء المقارنة ملاحضة لا يشترط وجود الملف من الأساس بمعن لو كان
      الملف موجود ستتم الكتابة عليه لو لم يكن موجود سيتم تلقائيا إنشاء الملف و الكتابة
      بداخله

      المقارنة

      FILENAME ===> BATH.DLL

      كما ذكرت نلاحض الامتداد DLL و ليس INI

      SECTION ===> FOLDIN2

      هذا هووه القسم سكشن

      KEY =====> FOLDIN

      VALUE ====>

      نلاحض خيار VALUE و هووه البيانات التي سنقوم بتسجيلها على الملف
      ينضرها معرف أمر تحديد الفولدر و هووه
      ====>

      و طبعا مثل ما ذكرت سابقا معرف الأمر السابق هووه مسار المجلد الذي
      قمنا بتحديده بعنى سنقوم بتخزين مسار المجلد لنقوم باستخدامه لاحقا

      أمر WRITEINI يتم بالطريقة التالية إذهب إلى الملف BATH.DLL ثم إلى
      القسم FOLDRIN2 ثم إلى الــ KEY أو المفتاح أيضا FOLDRIN2
      و من بعد علامة = قم بتسجيل المسار و استعرض معكم ملف BATH.DLL
      للبرنامج نفس الصورة السابقة



      نلاحض السكشن FOLDRIN2 ثم المتاح أسفل منه FOLDRIN2
      من بعد علامة = سنلاحض المسار درايف H مسجل و محفوض

      أكتفي بهذا القدر من الشرح و سأعود عن قريب إن شاء الله
      لإكمال شرح البرنامج
    • محقق الأحلام كتب:

      مشكور أخوي على برنامجك المبدع الرائع وإلى مزيد من التصاميم والابداع#e


      لاشكر على واجب أخي محقق الاحلام و تسلم على التواجد الطيب


      تحية طيبة
    • The Master كتب:

      برنامج رائع اخي العزيز ناقوس الخطر ..

      وشرح أروع..
      تسلم على هذا الابداع...


      ودائما في انتظار جديدك...



      :)



      الله يسلمك حضور و تواجد طيب منك لكن ماعرفت ايش سالفت المصرين

      أجوبك ليش الدال روح الساحة الصحية و شوف الدال كيف مفيد بعدين

      استفهام يطرح نفسه ليش في أبو زعبل تجد الدال في مقدمة المائدة لأنه

      مغذي الاستفهام الاخر ليش أخونا الريامي يتعشى دال الاستفهام يشرح

      نفسه ما يحتاج أكمل نقط ....... #i لا تخبر الريامي:)


      أجمل تحية
    • ناقوس الخطر كتب:

      الله يسلمك حضور و تواجد طيب منك لكن ماعرفت ايش سالفت المصرين

      أجوبك ليش الدال روح الساحة الصحية و شوف الدال كيف مفيد بعدين

      استفهام يطرح نفسه ليش في أبو زعبل تجد الدال في مقدمة المائدة لأنه

      مغذي الاستفهام الاخر ليش أخونا الريامي يتعشى دال الاستفهام يشرح

      نفسه ما يحتاج أكمل نقط ....... #i لا تخبر الريامي:)


      أجمل تحية


      #e

      أخيرا عرفنا موضوع الدال....#i

      ما يهمك ناقوس ... ما راح اخبر الريامي...
      بس أظن أنه يواحي عنده خبر.... هذا وين ما تسير تلقاه...|a


      ناقوس الخطر...
      في انتظار الموضوع الجديد...

      :)