الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود Handle-X أعظم برنامج لأدارة الشبكات

مغلق
بدأه neo في 30 مارس 2005 · 19 رد · 1,858 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

http://www.pscode.com/vb/scripts/ShowCode....=59815&lngWId=1

أرجوا أن تستمعوا بهذا الكود و الذي يوجد به أكثر من 25000 سطر كود

و أحب أشكر أخي أحمد عز على هذا

تم تعديل هذه المشاركة بواسطة أحمد عز في 3 أبريل 2005 في 14:26

Nothing to mention except that I am Muslim

Using your brain is not bad as you think

My Blog

logo.jpg

#2

هوه مشروع تخرج؟

المشروع متعوب فيه بس هذا ليس رأي نهائي..

#3

السلام عليكم..

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

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

فمثلا الإجراء الفرعي التالي هو أول إجراء وقع تحت عيني عندما فتحت المشروع,ستجده في مشروع العميل Client في موديول ServerEditor.bas

الإجراءهو AddNulls ..شفرته هي:

Private Function AddNulls(Str As String) As String
   'This Function Add Spaces InBetwwen All Char's In The String To Match String Values Inside Exe files
    On Error Resume Next
    Dim StrLen As Integer, RetStr As String
    StrLen = Len(Str)
    For i = 1 To StrLen - 1
        RetStr = RetStr & Mid$(Str, i, 1) & Chr$(0)
    Next
    RetStr = RetStr & Right$(Str, 1)
    AddNulls = RetStr
End Function

وظيفته -كما هو موضح- هو ترك مسافات بين البيانات التي ستوضع في السيرفر,

لا أعلم إذا كان ذلك الإجراء سيعمل عند الجميع أم لا,فالمفروض إن كلمة Str مجحوزة ولا ينبغي المخاطرة باستخدامها,حيث في بعض الأحيان يعطي خطأ عليها... -حدث معي من قبل-

لكن الطريف في الأمر هو هذا السطر :

 RetStr = RetStr & Mid$(Str, i, 1) & Chr$(0)

علي حسب معلوماتي لا يمكن إضافة مسافات فارغة بين كلمة ما ابدا بهذا الشكل بوضع Chr(0). بل بوضع chr(32) لأن استخدام chr(0) لن يضع مسافة ولن يسمح لأي حرف أخر أن يوضع بعد أول حرف تم وضعه بالفعل في المتغير RetStr

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

مش عارف ليه يذكرني هذا الإجراء بالمثل "ودنك منين يا جحا..قام لف ايده من وراء ظهره ..ومسك الودن العكسية وقال اهيه"

لأني أعتقد إن الكود بهذه الطريقة سيكون أنظم..

Private Function AddNulls(Str1 As String) As String
      For i = 1 To Len(Str1)
        RetStr = RetStr & Mid(Str1, i, 1) & Chr$(32)
      Next
   RetStr = Left(RetStr, Len(RetStr) - 1) 'Remove last Space
    AddNulls = RetStr
End Function

وللإستخدام:

Private Sub Command1_Click()
MsgBox AddNulls("Separated")
End Sub

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

تم تعديل هذه المشاركة بواسطة طارق إبراهيم في 31 مارس 2005 في 04:27

#4

لقد قام القائمين على planet source code بألغاء الكود

بسبب كلمه كتبها و هى

"---[ By Muslim Arabian Egyptian Brains && Hands ]---"

للعلم هذا الموقف حدث معي من قبل

Nothing to mention except that I am Muslim

Using your brain is not bad as you think

My Blog

logo.jpg

#5

الأخ Pharaonic_Guy

أولا المديول مخصص لتعديل الـserver و بما أن السيرفر EXE فأن الـtext الموجودة داخل هذا الملف تحول الى unicode و بما أن التعديل سيكون بحروف أنجليزية ASCII فأنه لا يحتاج فقط الا القسم الأول من حرف الunicode ( 8 بت من 16 بت ) فأن القسم الأخر من الحرف يكون 0 أو بمعنى أصح null

ليس الغرض منها أضافة مسافات و أنما أضافة Nulls و ها واضح من أسم الدالة AddNulls و ليس AddSpace

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

Nothing to mention except that I am Muslim

Using your brain is not bad as you think

My Blog

logo.jpg

#6

شكرا لأخى أحمد عصام على هذا الموضوع ،

أخى Pharaonic_Guy أعتقد أن رد أخى neo قد أجاء عن سؤالك .

قمت بوضع الكود للمره الثانيه على الموقع على الرابط الأتى :-

http://www.pscode.com/vb/scripts/ShowCode....=59815&lngWId=1

إذا حدث ما حدث ، سأقوم برفعه على سيرفرنا وسأكتفى بوضع رابط هناك ،، وقد قمت بمراسلة مؤسس الموقع حول ذلك .

تم تعديل هذه المشاركة بواسطة أحمد عز في 3 أبريل 2005 في 10:13

#7

السلام عليكم

شكرا على وضع الكود للاستفادة

لكن قد تم حذفه مرة اخرى...

عندما تولد يا ابن آدم يؤذن في اذنك من غير صلاة...

وعندما تموت.... يصلى عليك من غير آذان....

فكأن حياتك في الدنيا ليست سوى... الوقت الذي تمضيه بين الأذان والصلاة...

فلا تقضيه بما لاينفع

Mohammad Lahlouh

mohammadlahlouh.blogspot.com

Make money from your Website or Blog with BidVertiser

#8

نرجو وضع الوصله السريعه للبرنامج لأنه أتسمح مره أخرى من على موقع planet نرجو وضع وصله مباشره للتحميل وشكراً

#9

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

ياريت الاخ احمد لو يضع لنا الكود هنا بالمنتدى

:)

وَقُل رَّبِّ زِدْنِي عِلْماً

#10

السلام عليكم

الشكر للاخ احمد عز ....

تم إصلاح الرابط بالاعلي

:)

gaza3-3.jpg
#11

الأخوه m_lahlouh ، ringojet ، arafa

أرفقت الكود للإستفاده ، ومن يريد إضافة أى تعليق أتمنى أن يكتب رده أو رأيه فى صفحة البرنامج فى Pscode على البرابط الأتى :-

http://www.pscode.com/vb/scripts/ShowCode....=59815&lngWId=1

وشكرا على ملاحظتك أخى إبراهيم :rolleyes:

Handle-X.zip

#12

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

Nothing to mention except that I am Muslim

Using your brain is not bad as you think

My Blog

logo.jpg

#13

حاجه رائعة و انا فخور بيكم بس عن نفسى انا لسه جديد فى vb انا اصلا oracle , asp و عموما هحاول اتجاوب

و شكرا على الروح الحلوه اوى دى

#14

السلام عليكم..

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

حاولت تشغيل برنامج العميل علي 6 أجهزة .. وليس هناك فائدة حتى الآن...

المهم من ذلك هو أخي NEO قد ذكر شاكرا السبب من دالة AddNulls .. وهي إضافة Nulls بين حروف النص لمقارنتها بما يوجد داخل ال EXE ..حيث أنه أي String يخزن داخل ال EXE علي هيئة يونيكود..وبالتالي يلزم تحويل النص عندنا.. حتي تتم مقارنة صحيحة vbBinaryCompare

والله .. أعلم كل هذا وكان من الممكن نسخ النص إلي Byte Array .. ولأن كل حرف من حروف النص حجمه 2 بايت فالبايت الأول سيكون لرقم كود Ascii لأي حرف والبايت الثاني سيكون لإضافة القيمة Null .. أي بعد كل حد سيضيف حد به قيمة Null ..

Private Sub Command1_Click()
Dim MyArray() As Byte
Dim strName As String
Dim strRetName As String
strName = "Mohamed"
MyArray = strName
For i = LBound(MyArray) To UBound(MyArray)
  Debug.Print MyArray(i);
 strRetName = strRetName & MyArray(i)
Next
Debug.Print
Debug.Print strRetName
End Sub

أو يمكننا أيضا باستخدام دالة CopyMemory نسخ النص من الذاكرة وسيكون أيضا بعد كل حرف يوجد Null..وهذا لنفس السبب أن الحرف يحجز مساحة 2 بايت ويمكننا معرفة حجم النص في الذاكرة باستخدام LenB.

Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, ByVal Source As Any, ByVal Length As Long)


Private Sub Command1_Click()

Dim strName As String

Dim lLen As Long
Dim MyArray() As Byte
Dim strRetName As String

strName = "Mohamed"


lLen = LenB(strName)


ReDim MyArray(lLen - 1)
CopyMemory MyArray(0), ByVal StrPtr(strName), lLen

For I = LBound(MyArray) To UBound(MyArray)
Debug.Print MyArray(I);
 strRetName = strRetName & MyArray(I)
Next I
Debug.Print
Debug.Print strRetName

End Sub

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

'This Function Add Spaces InBetwwen All Char's

المهم كما وعدتكم هذه بعض التخاريف الجديدة وأرجو أن تتحملوها بصدر رحب ...

بحثت داخل كود الخادم Server ولم أجد كود استرجاع أي بيانات جديدة تم تخزينها بواسطة Edit Server مثل( رقم المنفذPort وكلمة المرور Pass ) والتي ستكون مخزنة داخل الخادم نفسه أثناء التشغيل RunTime ..

فهل تلك العملية موجودة أم سيتم إرفاقها في نسخ قادمة من البرنامج..

إذا كانت موجودة فسبق أن طلبت منكم أن تتحملوها بصدر رحب :wacko: ..

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

فكيف ستستعيدوا تلك البيانات مرة أخري بعدما سيتم ضغط ال EXE ببرنامج UPXأو أي برنامج أخر..

وإذا لم يتم ضغطه باستخدام أي برنامج ضغط فأعتقد أنه لابد من إعادة النظر في الطريقة التي تخزن بها البيانات

وبالذات كلمة المرور..

حيث يتم تخزينه بتلك الصورة (|Pass|) ,وبالتالي يمكن معرفتها بسهوله بالبحث داخل ملف ال EXE عن القيمة 7C ..

أنظر الصورة التالية حيث قمت بوضع كلمة مرور ولتكن (0123456789)

pass.jpg

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

فأعتقد أن أفضل وسيلة لتخزين بيانات السيرفر ومنها رقم البورت والباسورد والبيانات الأخري بحيث لا يتأثر معها الضغط بأي برنامج .. هي أن يتم تخزينها بإضافتها بواسطة برنامج Edit Server في ذيل ال EXE .. وبحيث تكون مشفرة .. بأي نوع من التشفير.. حتي لو كان تشفير Ascii تعبان... والله بينفع وبيعدي...

لكني أتكلم هنا عن تشفير MD5 مثلا...

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

أما بالنسبة لموديولي Matrix و Hardware فهما رائعان جدا , وأشكركم عليهما كثيرا ..

#15

:)

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

لهذا أتحت الكود لإمكانية التعديل فيه

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

شكرا لك أخى Pharaonic_Guy على دراسة الكود ، نفعنا الله بعلمك :)

#16

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

ربنا يوفق الجميع :)

Nothing to mention except that I am Muslim

Using your brain is not bad as you think

My Blog

logo.jpg

#17

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

وأشكركم علي سرعة التواجب..

والسلام عليكم...

#18

جزاك الله خيرا

essam.gif

منتديات كوكب الكمبيوتر

لكل جديد في عالم تكنولوجيا المعلومات والكمبيوتر والأخبار العلمية

http://www.planetss.com/vb

#19

//////////////////////// ماقصرتوا///////////////////////////////////

//////////////////////////////////////////////////////////////////

------------------------------------------------------------***---------***------------*****

#20

جزاك الله خيرا

هذا الموضوع مغلق.

مواضيع مشابهة