رفتن به مطلب

فايلهاي باينري - قسمت دوم (شيوه پيشرفته)


pixelstyle
 اشتراک گذاری

Recommended Posts

در این قسمت مقاله برای شما نحوه ویرایش فایلهای باینری توسط این نوع برنامه ها را معرفی می کنم.

به طور کلی ، اکثر برنامه ها جهت استفاده از منابع تصویری ، نوشتاری ، صوتی و ... از یک نوع فرمت فایل خاص به نام Resource استفاده می کنند. فرض کنید که یک خانه دارید که در آن یک آشپزخانه ، یک اتاق خواب ، یک دستشویی وجود دارد. حال بازهم فرض کنید که وسائل بیشماری در وسط اتاق اصلی خانه که همان حال است ریخته شده است. این وسائل را به عنوان اطلاعات باینری یک فایل تصور کنید در حالی که کل خانه در حکم همان فایل است.

حال فرض کنید که در قسمتی ، مانند آشپزخانه ، وسائل مربوط به آن قسمت قرار دارند. آیا تا به حال فکر کرده اید که چرا بدین صورت است ؟ در حقیقت فواید بسیاری در این عمل وجود دارد ، اما یکی از آنها سرعت در جستجوی وسیله مورد نظر است. به طور مثال زمانی که شما می خواهید به دنبال یک یخچال بگردید ، هیچ وقت آن را در حمام جستجو نمی کنید چون می دانید که جاي آن در کجا است.

در فایلهای باینری نیز به همین روش ، قسمتهایی را در نظر گرفتند که اطلاعات مختلف در آن به صورت کدگذاری نشده وجود داشته باشند تا دسترسی به آنها سریع باشد و در آینده اگر قصد تعویض قسمتی را داشتید به راحتی بتوانید فقط آن قسمت را تغییر دهید و از تغییر دادن کل فایل جلوگیری کنید. خوب این صرفه جویی بسیاری در زمان می کند.

با توجه به مثال خانه ، فایلهای باینری نیز برای خود می توانند اتاقهای مختلف داشته باشند. به طور مثال می توان یک قسمت در هر فایل باینری درست کرد که اطلاعات نوشتاری یا گرافیکی برنامه در آن جای بگیرند.

به شکل زیر توجه کنید ، این شکل طرحی بسیار ساده از یک فایل باینری به همراه اتاقهای آن ، که در حقیقت در حکم قسمتهای با نام Resource هستند ، می باشد :

خوب پس تا حدی با کار این برنامه ها آشنا شدیم. این نوع برنامه ها مانند برنامه ای برای شما در مقاله قبلی معرفی کردم ، می آیند و این قسمتها را ویرایش می کنند.

ضمناً به خاطر داشته باشید که ویرایش این قسمتها فقط به خاطر تغییرات غیرمجاز نیست و بسیاری از برنامه نویسان از جمله خود من ، از این قسمتها استفاده می کنند.

جالب است بدانید برخلاف ظاهر و اسم برنامه Resource Hacker که به نظر برنامه عجیب و غریبی می آید ، ویرایش این قسمتها به صورت بسیار ساده انجام پذیر است.

چرا که این قسمتها با نام Resource به عنوان یک استاندارد فرمت فایلها شناخته شده اند.

خوب تا به حال توانستیم این قسمتها را که به صورت منظم طبقه بندی شده اند شناسایی و ویرایش کنیم. حال به چه صورت می توان قسمتهای دیگر فایلها را ویرایش کرد ؟

به طور مثال می خواهیم یک جمله را فارسی کنیم که در این قسمتها پیدا نکردیم ! حال به چه صورت می توانیم این کار را انجام دهیم ؟

اگر از افرادی که به برنامه نویسی آشنایی ندارند سوال کنید ، به شما جوابهای گوناگونی مانند Notepad می دهند که بسیار جواب اشتباهی است و نه تنها باعث کمک کردن

به فرد مورد نظر نمی شود ، بلکه فایل مذکور پس از ویرایش توسط این برنامه ها به هیچ عنوان قابل استفاده نخواهد بود.

پس به چه صورت می توان اطلاعات را ویرایش کرد ؟

آیا تا به حال به این کلمات برخورد کرده اید : فایل نوشتاری - فایل باینری

تفاوت این دو نوع فایل در این است که فایل نوشتاری شامل عدد ، حرف و علامتهایی هستند که می توانند توسط برنامه هایی مانند Notepad شناسایی ، ایجاد و ضبط شوند.

فایلهای باینری که بحث اصلی ما در رابطه با آنها است ، فایلهایی هستند که به زبان ماشین ( که همان باینری است ) ترجمه شده اند تا در زمان اجرا و یا دسترسی از سرعت بالایی برخوردار شوند. این نوع فایلها را فقط می توان با استفاده از نرم افزارهایی ویرایش کرد که قابلیت خواندن و ضبط فایلهای باینری را داشته باشند.

از برنامه های معروف برای این کار ، برنامه Hex Editor یا Axe هستند که این قابلیت را به شما می دهند. از آدرس های زیر می توانید این برنامه ها را دانلود کنید :

http://www.chmaas.handshake.de/delphi/freeware/xvi32/xvi32.htm

http://www.programmersheaven.com/zone16/cat862/22690.htm

خوب حالا موضوع چیست ؟ این برنامه ها چه کاری می کنند و به چه صورتی میشه فایلهای انگلیسی را فارسی کرد ؟

جواب بسیار ساده است.

این برنامه ها می توانند به صورت کاراکتر - کاراکتر فایلهای باینری را بخوانند و هر کاراکتری را که شما بخواهید تغییر بدهند. تنها کاری که شما لازم است انجام دهید ، بازکردن فایل ، جستجو به دنبال کلمه انگلیسی و بازگرداندن آن ( یا تغییر آن ) به فارسی است. فقط در زمان این کار یک نکته بسیار مهم را در نظر داشته باشید. اگر می خواهید یک کلمه را فارسی کنید ، ترجمه فارسی آن می بایست از نظر تعداد حروف مساوی و یا کمتر از کلمه انگلیسی باشد.

به طور مثال ترجمه کلمه File می توانید به صورت [فایل] انجام پذیرد. چون هر دو از چهار حرف ( یا همان کاراکتر استفاده می کنند ) اگر حروف ترجمه فارسی کمتر از حروف انگلیسی آن بود از جای خالی یا همان Space برای تکمیل آن استفاده نمایید.

به هیچ عنوان کاراکترهایی را که نمی دانید چه هستند ویرایش نکنید که در این صورت فایل شما خراب خواهد شد. ضمناً یادآوری می کنم که قبل از ویرایش هر فایلی از آن یک فایل پشتیبان ( یا همان Backup ) تهیه نمایید.

خوب با استفاده از این مقاله و مقاله قبلی می توانید فایلهای خود را فارسی کنید. اگر تا اینجا موضوع را فهمیده باشید می توانید 60 درصد فایلهای ویندوز خودتان را فارسی کنید.

در مقاله های بعدی ، نحوه ویرایش قسمتهای دیگری که نه توسط برنامه های ویرایش Resource می توان فارسی کرد و نه توسط ویرایشگرهای باینری ، را توضیح خواهم داد.

ضمناً در مقاله های آینده ، سورس کامل برنامه ویرایشگر Resource را برایتان خواهم نوشت. در آن صورت خودتان می توانید یک Resource Hacker بنویسید.

لینک به دیدگاه
Share on other sites

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .
توجه: مطلب ارسالی شما پس از تایید مدیریت برای همه قابل رویت خواهد بود.

مهمان
ارسال پست در این تاپیک...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

 اشتراک گذاری

×
  • اضافه کردن...