PDA

View Full Version : ذخیره فایل در ریسورس



Veteran
سه شنبه 10 مرداد 1391, 18:41 عصر
سلام دوستان خوبین.
اقا ما ی فایل تکست داریم داخل ریسورس
با این کد

Dim Str As String
Str = StrConv(LoadResData(101, "custom"), vbUnicode)
MsgBox Str

اطلاعات فایل تکست رو میخونیم
حالا ما به فرض یک چیزی رو به فایل خواستیم اضافه کنیم به متن فایل تکست
ما اطلاعات جدید اضافه میکنیم.
Str = Str & vbCrLf & "barname nevis"
خب حالا بعدش چجوری میتونیم فایل تکست توی ریسورس رو اپدیت کنیم ؟ تا چیزی که الان اضافه کردیم
توی فایل تکست قرار بگیره ؟

arenaw
سه شنبه 10 مرداد 1391, 18:44 عصر
سلام
فکر نمیکنم ازطریق خود همون فایل exe ای که این تکست توش ذخیره شده بشه اون فایل رو تغییر داد. چون اون الان قسمتی از بایت های همین فایلیه که الان اجرا شده و فایل در حال اجرا هم قایل تغییر نیست
ولی برای ادیت فایل های ریسورس میتونید از resource hacker استفاده کنید

Veteran
سه شنبه 10 مرداد 1391, 18:52 عصر
:متفکر: منم اول همین فکر رو کردم.گفتم بیام اینجا شاید کسی راهی چیزی بلد باشه

ho3ein.3ven
سه شنبه 10 مرداد 1391, 19:31 عصر
توی ریسورس نمیشه فایل رو آپدیت کرد . اونو تو یه حای سیستم کپی کن مثل پوشه ویندوز بعد از اونجا تغییرش بده

Veteran
سه شنبه 10 مرداد 1391, 19:35 عصر
بعد که ما اونو توی ویندوز کپی کردیم و ادیت.به چه شکل میشه دوباره به ریسورس اضافه کنیم ؟

arenaw
سه شنبه 10 مرداد 1391, 19:40 عصر
یه راهی الان به ذهنم رسید ولی خودم الان ویبی دم دستم نیست ببینم میشه یا نه
شما یه ریسورس هکر ساده بنویس که کارش آپدیت ریسورس مثلا 101 فایل های exe باشه
بعد تو برنامت هر وقت خواستی فایل ریسورسشو آپدیت کنی، اول تغییراتشو توی یه فایل txt ذخیره کن، بعد ببندش، بعد اطلاعات اون فایل txt رو بفرسا برای اون ریسورس هکر ساده هه که نوشتی، بعد دوباره برنامه رو اجرا کن

AbbasVB
سه شنبه 10 مرداد 1391, 19:49 عصر
یه راهی الان به ذهنم رسید ولی خودم الان ویبی دم دستم نیست ببینم میشه یا نه
شما یه ریسورس هکر ساده بنویس که کارش آپدیت ریسورس مثلا 101 فایل های exe باشه
بعد تو برنامت هر وقت خواستی فایل ریسورسشو آپدیت کنی، اول تغییراتشو توی یه فایل txt ذخیره کن، بعد ببندش، بعد اطلاعات اون فایل txt رو بفرسا برای اون ریسورس هکر ساده هه که نوشتی، بعد دوباره برنامه رو اجرا کن با سلام
قبلا راجع به این موضوع داخل سایت بحث های زیادی شده ولی تا جاییکه من یادمه به جایی نرسیده

آقای arenaw (http://barnamenevis.org/member.php?203395-arenaw) به نظر شما میشه همچین چیزی با وی بی نوشت اگه نمونه ای داری لطفا بذارید
برنامه های که برای این کار نوشته شده اند اکثرا با دلفی نوشته شده اند مثل Restorator 2007،Resource Hacker،PE explorer

Veteran
سه شنبه 10 مرداد 1391, 19:50 عصر
ریسورس هکر رو چجوری بنویسم حالا :لبخند:
تا حالا با ریسورس هکرها کار نکردم :لبخند:

arenaw
سه شنبه 10 مرداد 1391, 20:22 عصر
شب ساعت 9 یا 10 میرم پشت سیستم خودم شروع میکنم ببینم میشه یا نه، ولی الان با notepad++ امتحان کردم شد! با ویبی هم میشه احتمالا

arenaw
سه شنبه 10 مرداد 1391, 22:33 عصر
الان مشکلم اینه که وقتی برنامه ای که حاوی ریسورس هستش رو میخوام ریسورشو آپدیت کنم، اول باید بسته بشه (task kill) بعدش اون فایل مربوط آپدیت اجرا بشه.
که موندم چجوری بعد از بسته شدن کد اجرا کردن فایل آپدیت رو اجرا کنم؟!
ولی این رو فعلا ببین:
Res.exe = فایل هاوی ریسورس (که ریسورس رو تو تکستش نشون میده)
Res UPD.exe = فایل آپدیت کننده Res.exe که هم میتونی عادی اجراش کنی و ادیت کنی، هم میتونی یه مقداری رو با کامند بهش ارسال کنی که خودکار خودش آپدیت کنه و بسته بشه... >
Shell "...\Res UPD.exe " & "sadasmdkanvdsdfsdfk"

Veteran
سه شنبه 10 مرداد 1391, 23:18 عصر
هدفم این بود که با 1 برنامه این کارو بکنم.اما حالا شد 2/3 تا.
هرکجا برم باید اینا همراه برنامه باشه.که مشکل درست میکنه.
به هرحال ممنون از اینکه وقت گذاشتین.
بازم ممنون.

arenaw
چهارشنبه 11 مرداد 1391, 00:07 صبح
2 تاس اینا؛ که اون فایل مربوط به آپدیت میتونه خودش داخل فایل اصلی ریسورس بشه جمعا بشه همون یه دونه، کامل شد میذارمش واسط

arenaw
چهارشنبه 11 مرداد 1391, 08:05 صبح
ازون پروژه ها شد که اگه بعد یه هفته بازش کنم خودم نفهمم چی نوشتم بس که درهم ورهمه !
ولی کار میکنه :)

File with Res (mini complate).zip = پروژه اصلی که توی exe'اش یه ریسورس قابل ادیت هستش
UPD RES.zip = پروژه مربوط به آپدیت کردن ریسورس بالایی که exe'اش تو بالایی ریسورس شده (اینو فقط برای اینکه کداشو ببینی گذاشتم و نیازی نیس دانلود کنیش)