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

تغيير ايقونة ملف exe

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

اخواني هل يمكن تغيير ايقونة ملف exe بعد عمل compile له

اذكر انني قرأت دالتي api واحدة تقوم بقراءة الايقونة والاخري تقوم بكتابتها

ولكن لا اذكر اين

وشكراً

#2

السلام عليكم ورحمة الله وبركاته

يمكنك ذلك عبر برنامج الاتي

Resource Hacker™ - Version 3.4.0

واليك هو

ويمكنك تغيير اي ايقونة لاي برنامج تنفيذي exe

تحياتي اليك

ResHacker.rar

#3

لقد وضعته سابقا في المنتدى ولكني لم اجده في البحث

ICON_CHANGER_FOR_EXE_FILES.ZIP

اذا اراد الله بعبد خيراً فقهه في دينه

((إياكم والغلو في الدين فإنما هلك من كان قبلكم بالغلو في الدين )).

( إن هذا الدين يسر ولن يشاد هذا الدين إلا غلبه فأوغلوا فيه برفق )

( هلك المتنطعون ، هلك المتنطعون ، هلك المتنطعون )

<span style='font-size:14pt;line-height:100%'>طريقة سريعة لحفظ كتاب الله العزيز</span>

<span style='font-size:14pt;line-height:100%'>تعرف على عباقرة الكذب</span>

#4

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

موضوع تغيير أيقونة EXE له طريقتان لا أعرف ثالثهما..

إما قراءة الResource لملف ال EXE باستخدام ثلاث دوال API <BeginUpdateResource,UpdateResource,EndUpdateResource>

تلك الدوال مدعومة فقط في عائلة NT وليست مدعومة في Win 9X,واستخدام تلك الدوال يتيح لك التحكم بريسورس EXE/Dll.

لكن المشروع بيتـ Generate من الفيجول بيسيك,فأنصحك بالطريقة الثانية والتي وضع رابطها الأخ (amervb)

لأنها ستعمل علي جميع الاصدارات.

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

------------------------------------------------------------------------------------

بعيدا عن البرمجة..

إذا قمنا بمقارنة -باستخدامHex WorkShop مثلا- بداية الهكس لملف الأيقونة ونقطة بدء الهكس لملف الأيقونة داخل أي ملف EXE

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

@... ...)

أو ما يوازيها في ال Hex

280000002000000040

ويمكنك التأكد من ذلك بيديك

فمثلا أول رقم هكس 28 إذا قمت بتحويله إلي عشريDecimal فسيكون :

1^16*2+8

أي سيساوي القيمة 40 عشريا

وإذا قمت بإيجاد القيمة 40 في جدول الأسكي

(Chr(40

فسيعطيك الرمز الأول ")"

وهكذا إلي باقي القيم

---------------------------------------------------------------------------------------

الآن نستطيع الاستفادة من تلك الميزة برمجيا.

ففكرة البرنامج الذي سنقوم بعمله لتغيير الأيقونة هي:

أن يقوم بقراءة الملف المراد تغيير أيقونة ثنائيا ويضعها في مصفوفة معرفة من نوع Byte ثم نقوم بتحويل البيانات إلي Hex ثم نقوم بالبحث عن القيمة 280000002000000040

بواسطة الدالة Instr وبالتالي سيكون عندنا نقطة بداية الهكس لملف الأيقونة داخل ال EXE وبالتالي يستطيع أن نبدله بملف الايقونة Ico- والذي سنحصل علي الهكس بتاعه أيضا.

ونقطة نهاية التبديل ستكون إلي نهاية الملف التنفيذي.

-----------------------------------------------

سأحاول أن أوافيك بمشروع مبسط يبين ذلك اليوم

#5

Pharaonic_Guy اشكرك على الرد المفيد و ارجو منك ان تعدل الكود الذي ارفقته كما اشرت انت الى ذلك.

و بانتظار المشروع المبسط.

عامر

اذا اراد الله بعبد خيراً فقهه في دينه

((إياكم والغلو في الدين فإنما هلك من كان قبلكم بالغلو في الدين )).

( إن هذا الدين يسر ولن يشاد هذا الدين إلا غلبه فأوغلوا فيه برفق )

( هلك المتنطعون ، هلك المتنطعون ، هلك المتنطعون )

<span style='font-size:14pt;line-height:100%'>طريقة سريعة لحفظ كتاب الله العزيز</span>

<span style='font-size:14pt;line-height:100%'>تعرف على عباقرة الكذب</span>

#6

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

الحمد لله أستطعت أن أوفي بوعدي..وخلصت المشروع اليوم..

البرنامج مرفق

Change_EXE_Icon.zip

#7

شكراً يا إخواني علي ردودكم

#8

بارك الله فيك

اقتباس

آسف الدخول متقطع هذه القتره

اقتباس

[يمين]

.[/يمين]

A7med_prof-4-2007.jpg

اخر مواضيعي 2007

االمثال مطبق على موقع بورصه سعودي

.

.

مواضيع مهمه ومطلوبه بكثره VB6

.

بــرامج ومشــاريع عربيه كامــله {HnHn} والمزيد في قسم برامج الاعضاء || ربط قواعد بيانات اكسس مع الفيجوال بيسك, مادة دراسية كاملة {بنت اليمن}|| المرجع الشامل لجمل SQL ا {GENIUS-IT} || كيفية التعامل مع مكتبة الـ DAO, في الوصول إلى قاعدة بيانات {رمضان} || مثال ريط Visaul Basic 6.0 مع SQL SERVER ا || العمليات التي تجرى على قاعدة البيانات, مثال كامل {بنت اليمن} || تصدير البيانات من الاكسل الي الاكسس بالفيجوال بيسك {HnHn} || البحث في قاعدة البيانات {MANSUR} || قواعد البيانات العلائقية وتقنيات الوصول إليها {عبد الله فتحي} || كيفية أظهار بيانات جدولين بواسطة التاريخ ,,,,,,,

.

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

.

</
#9

فعلا المثال ناجح

عندي لك سؤال:

فرضا عندي نص في ملف تنفيذي او اي ملف المهم انه binary ,و النص هو فرضا TestStrin ,فعندما اغير النص الى نص جديد ولكن حروفه اكثر من الأصلي فان الملف ينعطب,يعي لا يعود يعمل كلسابق.

فهل عندك شرح لهذه المشكله بالاضافة الى حلها برمجيا عن طريق VB.

وشكرا لك .

اذا اراد الله بعبد خيراً فقهه في دينه

((إياكم والغلو في الدين فإنما هلك من كان قبلكم بالغلو في الدين )).

( إن هذا الدين يسر ولن يشاد هذا الدين إلا غلبه فأوغلوا فيه برفق )

( هلك المتنطعون ، هلك المتنطعون ، هلك المتنطعون )

<span style='font-size:14pt;line-height:100%'>طريقة سريعة لحفظ كتاب الله العزيز</span>

<span style='font-size:14pt;line-height:100%'>تعرف على عباقرة الكذب</span>

#10

شكرا

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

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