05-12-14, 09:57 AM
(آخر تعديل لهذه المشاركة : 05-12-14, 09:58 AM {2} بواسطة Ahmed_Mansoor.)
أدرج زر جديد بإسم Command1 ثم إلصق هذا الكود داخل كود الفورم , المتغير OffSet يعني بداية التغيير , وغير مسار الملف بالمسار في جهازك :
كود :
Private Function HexToString(ByVal HexToStr As String) As String
Dim StrTemp As String
Dim StrReturn As String
Dim I As Long
For I = 1 To Len(HexToStr) Step 2
StrTemp = Chr$(Val("&H" & Mid$(HexToStr, I, 2)))
StrReturn = StrReturn & StrTemp
Next I
HexToString = StrReturn
End Function
Private Sub Command1_Click()
Dim FileBytes As String
Dim F As Integer
Dim OffSet As Double
Dim NewValue As String
'موقع بداية التغيير
OffSet = 1245
'القيم الجديدة التي تريد إستبدالها بالقديمة
NewValue = "457AF2"
F = FreeFile
Open "C:\MyFile.exe" For Binary As #F
FileBytes = Space$(LOF(F))
Get #F, , FileBytes
Close #F
NewValue = HexToString(NewValue)
'عدد القيم المراد تغييرها 3
Mid$(FileBytes, OffSet, 3) = NewValue
F = FreeFile
Open "C:\MyFile.exe" For Binary As #F
Put #F, 1, FileBytes
Close #F
MsgBox "تم تعديل القيم بنجاح"
End Sub
