M8SPY

      دست نوشته های یک برنامه نویس

IntelliSense چیست ؟

بدون نظر

Intellisense قابلیت پیاده سازی تکمیل خودکار متن است که اولین بار توسط شرکت مایکروسافت و در مجموعه نرم افزارهای Visual Studio برای راحتی کار برنامه نویسان در نظر گرفته شد . به این قابلیت اسامی مشابهی مانند Autocomplete  و یا Suggest نیز می توان نسب داد . به طور کلی IntelliSense به برنامه نویسان این امکان را می دهد تا در زمان کد نویسی ، با تایپ قسمتی از دستورات ، به شکل کامل دستور دسترسی پیدا کرده و در نتیجه زمان کمتری صرف کنند .

اینتلایزنس علاوه بر دستورات ثابت رایج در زبان های برنامه نویسی (Reserved Words) ، قابلیت تکمیل خودکار نام متغیر ها ، توابع ایجاد شده و متد ها را نیز داراست .

به نقل از مایکروسافت :

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

مثالی از چگونگی عملکرد این قابلیت :

گردآورنده : مهران رسا  -  منبع : http://m8spy.com

نوشته شده توسط M8SPY

مارس 9th, 2010 در 12:19 ب.ظ

Strange Captchas – کدهای امنیتی عجیب

بدون نظر

داشتم مطالبی در مورد Captcha می خوندم ، به سرتیتر جالبی به اسم Captcha های مشکل و عجیب برخوردم . تصاویر زیر مربوط به این دسته از کدهای امنیتی هستند که واقعاً انسان هم به سختی می تونه اونها رو تشخیص بده

Captcha مخفف عبارت Completely Automated Public Turing test to tell Computers and Humans Apart به معنای آزمون همگانی کاملا خودکارشدهٔ تورینگ برای مجزا کردن انسان و رایانه می باشد .

کپچا (CAPTCHA) یک سامانهٔ امنیتی و روند ارزیابی است که برای جلوگیری از برخی حمله‌های خرابکارانهٔ ربات‌های اینترنتی به‌کار می‌رود. این روند می‌تواند مشخص کند که مراجعه کنندگان به یک وب‌گاه و یا سایر خدمات آنلاین انسان هستند یا کامپیوتر. بدین منظور برنامهٔ کپچا آزمون‌هایی را تولید ‌می‌کند که تنها انسان‌ها قادر به پاسخ‌گویی به آنها باشند. چون کامپیوترها و نرم‌افزارهای فعلی احتمالاً نمی‌توانند پاسخ درستی به این آزمون بدهند، هر کاربری که آنرا درست حل کند، انسان فرض می‌شود.

نوشته شده توسط M8SPY

مارس 5th, 2010 در 11:33 ق.ظ

نوشته شده در موضوعات آزاد

برچسب , , ,

نظام آموزشی ایران – مدرک > تخصص

بدون نظر

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

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

یک کمی خودمانی تر : افرادی رو در دانشگاه می بینیم که از کامپیوتر چیزی نمی دونن در حالی که در این رشته تحصیل می کنن . یادمه در دوره هنرستان تعدادی از بچه حتی توی خونه کامپیوترنداشتن . هنرجوی رشته کامپیوتر از درس عربی نمره 20 میگیره ولی درس برنامه سازی که یکی از مهم ترین دروس اختصاصی رشته کامپیوتر هست رو با نمره 12 پاس میکنه . دانشجوی رشته کامپیوتر معدلش 17-18 میشه در حالی که از کامپیوتر فقط ویندوز عوض کردن رو بلده (اون هم شاید بلد نباشه) .

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

اشکالات نگارشی و نگرشی را به بزرگواری خودتان ببخشید .

مراقب فروشندگان تقلبی نرم افزارها باشید !

با 2 نظر

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

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

نرم افزار Winrar چگونه اطلاعات شما را رمزگذاری می کند ؟

با 2 نظر

توجه کنید به توضیحات Joker :

اطلاعات فایلهای rar یا zip یا 7zip یا … همگی بر اساس پسورد رمز میشوند نه اینکه پسورد جائی ذخیره بشود ، در واقع پسورد هیچکجا ذخیره نمیشود ، اطلاعات با یک رمز کد میشوند ، به عبارت دیگه کل فایل را شما باید کلمه رمز بدونید :) ، و اگه شما هر رمز دیگه ای هم بزنید اطلاعات دیکود میشوند منتها چون رمزاصلی نبوده اطلاعات اشتباه باز میشوند. میشه گفت رمزنگاری یک طرفه محسوب میشوند – راهی جز روش سعی و خطای پسوردها ندارد.

همونطور که توضیحات بالا مشخص هست کرک کردن پسورد فایل های rar با دستکاری شروط برنامه غیر امکان هست . به عبارت ساده تر امنیت فایل ها winrar صرفاً با یک شرط ساده برای بررسی کلمه عبور تامین نمیشه لذا تنها راه دور زدن کلمه عبور فایل های فشرده rar روش سعی و خطا خواهد بود .

برای روشن تر شدن این قضیه و اینکه با روش های رمزگذاری این چنینی آشنا بشید کد زیر رو آماده کردم ، که در ادامه به شرح قسمت های مختلف اون می پردازیم:

Public Function Encode(FileAddress As String, Pass As String)
On Error Resume Next
Randomize Timer
    StrX = Space(FileLen(FileAddress))
    Open FileAddress For Binary As #1
      Get #1, , StrX
    Close #1

    R = Int(Rnd * 5) + 1
    PublicN = "[" & Chr(5) & R & Chr(5) & "]"
    If Len(Pass) > 1 Then
        For j = 1 To Len(Pass) Step 2
            Part = Mid(Pass, j, 2)
            StrX = Replace(StrX, Chr(R + j), "[" & Chr(2) & Coder(Part) & Chr(2) & "]")
        Next j
    Else
    Exit Function
    End If
    Open FileAddress For Output As #1
        Print #1, StrX
        Print #1, PublicN
    Close #1
End Function
Public Function Coder(St As String) As String
    For i = 1 To Len(St)
        s = s & Chr(Asc(Mid(St, i, 1)) + R)
    Next i
    Coder = s
End Function

-

توضیحات تابع بالا : همونطور که مشاهده می کنید تابع دارای 2 پارامتر ورودی با عنواین : آدرس فایل  و کلمه عبور هست . خوشبختانه در خصوص دسترسی به محتویات متنی فایل ،  VB زیاد به پرو پای ما نمی پیچه . در هر صورت با توجه به آنچه در بالا مشاهده می کنید ، محتویات متنی فایل مورد نظرمون رو استخراج کرده و عملیات رمزگذاری رو شروع می کنیم . به طور دلخواه کلمه عبوری ورودی رو به بخش های دو کاراکتری تقسیم بندی کرده و جایگزین رشته کاراکترهای حاصل از کد اسکی جمع اعداد تصادفی (R) و شمارنده (J) می کنیم . و البته کاراکترهای کلمه عبور رو برای قشنگی هم که شده در بین [+کاراکتر اسکی 2+] قرار میدیم . خوب تمام کارهای گفته شده چه فایده ای دارند ؟ در واقع نکته اصلی تمامی موارد گفته شده در همین یک خط خلاصه میشه . با استفاده از اینکار کلمه عبور رو به نقاط مختلف فایل و به صورت کد شده (استفاده از تابع Coder)  تزریق می کنیم . پس به طور حتم برای بازگرداندن فایل به حالت اولیه فقط و فقط کلمه عبور اولیه قابل استفاده خواهد بود . قطعاً اگر در ذهنتون تابع Decode رو تصور کنین متوجه میشین که در این روش شرط (if) معنا نداره . در صورتی که فکر می کنید عکس این موضوع صحت داره می تونید دست به کار شده و کلمه عبور فایل رمزگذاری شده توسط الگوریتم بالا رو کشف کنید !

در نهایت توجه داشته باشید که روش بالا صرفاً برای بیان کلیات روش ذکر شده ، مورد استفاده قرار گرفت .

دریافت فایل اجرایی رمزگذاری شده توسط الگوریتم بالا

نوشته شده توسط M8SPY

فوریه 15th, 2010 در 6:04 ب.ظ

چگونه از مشاهده شدن “مسیر کامپایل پروژه” توسط دیگران جلوگیری کنیم ؟

بدون نظر

زمانی که فایل اجرایی پروژه های نوشته شده به زبان ویژوال بیسیک را با ابزارهای ویرایش متن ساده ای مانند NotePad باز کنید ، شاهد اطلاعات جالبی در این مورد خواهید بود . مواردی مانند : نام فرم ها ،کنترل های مورد استفاده ، نام پروژه ، مسیر کامپایل پروژه بر روی رایانه برنامه نویس ، توابع API استفاده شده در برنامه و … همگی در صورتی که فایل اجرایی Pack نشده باشد قابل روئیت هستند . شاید در نگاه اول این موضوع زیاد مهم جلوه نکند ولی با نگاهی عمیق تر متوجه می شوید که چه اطلاعات مهمی را در اختیار سوء استفاده کنندگان قرار داده اید. برای مثال مسیری که پروژه شما از آن کامپایل و به فایل اجرایی تبدیل شده است می تواند یکی از گزینه های مورد علاقه افرادی باشد که حداقل برای مخشوش کردن افکار شما و یا در موارد جدی تر به سرقت بردن سورس کد نرم افزار از آن سوء استفاده کنند .

یکی از روش ها جلوگیری از مشاهده شدن “مسیر کامپایل پروژه” توسط دیگران ، ایجاد تغییرات دستی کوچکی در فایل اجرایی است . برای اینکار از یک دستکاری کننده رشته های فایل اجرایی بهره میگیرم . یکی از نکات قابل توجه در تغییر رشته مورد نظرمان، حدف کاراکتر اسکی صفر است . زیرا در رشته مورد نظر، برای جداسازی کاراکترها ازکاراکتر اسکی صفر استفاده شده است  . این کاراکتر در رده کاراکترهای مجاز رشته ای محسوب نمی شود . از این رو در حالت عادی جستجوی برای یافتن رشته مورد نظرمان بی نتیجه خواهد ماند. برای رفع این مشکل ، با استفاده از زبان C#.net دست به کار شده و یک Replace کننده متن ساده تولید می کنیم . خوشبختانه شی Convert این امکان را به ما می دهد تا اسکی(0) را به رشته تبدیل کنیم .طبق مطالب گفته شده در ابتدا می بایست رشته مورد نظر(مسیر کامپایل پروژه) را با کاراکتر اسکی 0 ادغام کرده و سپس رشته جدید بدست آمده را در فایل اجرایی جستجو کنیم . با این کار محدودیت در شناسایی کاراکتر اسکی صفر را از بین برده و نهایتاً برای مخفی کردن مسیر کامپایل پروژه ، رشته هایی بی هدف  (ترجیحاً زنجیری از کاراکتر اسکی صفر) را جایگزین رشته جاری می کنیم .

کد زیر گویای موارد گفته شده است :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using System.IO;

//Programmer : M8SPY
//Website : http://m8spy.com

namespace WindowsFormsApplication1
{
 public partial class Form1 : Form
 {
 public Form1()
 {
 InitializeComponent();
 }

 string OutPut;
 string StrAl;
 string StrWithAsc0;
 string x1,x2,y1;
 private void button1_Click(object sender, EventArgs e)
 {

 //Edgham Kardane Masir Morede nazar ba Asc(0)
 for (int i = 0; i < (int)textBox3.Text.Length; i++)
 {
 x1 = textBox3.Text.Substring(i, 1);
 x2 = x2 + x1 + Convert.ToChar(0).ToString();
 }

 //Be Dalile Inke Dar REshte Morede Nazar Maa , Yeki Dar Mian Az
 //Asc(0) Estefade shode , Nahatayan Toole Reshte 2 Barabar Khahad shod.
 int jx = (int)textBox3.Text.Length * 2;
 for (int i = 0; i < jx; i++)
 {
 y1 = y1 + Convert.ToChar(0).ToString();
 }

 //Call
 ModifyExe(textBox2.Text, x2, y1 , textBox2.Text);

 }

 private void Form1_Load(object sender, EventArgs e)
 {

 }

 public void ModifyExe(string FileAddress, string Find, string Replace,string NewFileAddress)
 {
 int FLen = Find.Length;
 int RLen = Replace.Length;
 StrAl = "";

 //Read Exe File
 FileStream FOp= new FileStream(FileAddress, FileMode.Open);
 byte[] OpenByte = new byte[FOp.Length];
 byte[] CloseByte=new byte[FOp.Length + (RLen-FLen)];

 FOp.Read(OpenByte,0,(int)FOp.Length);

 for (int j = 0; j < OpenByte.Length; j++)
 {
 StrAl = StrAl + " " + OpenByte[j].ToString();
 }

 //Replace the New Value
 StrAl = StrAl.Replace(StrToAsc(Find).Trim(), StrToAsc(Replace).Trim()).Trim();

 FOp.Close();

 //--------------------------------------------------------------------------------------/

 //Wrtite File
 string[] Strs = StrAl.Split(new char[] { ' ' });
 byte[] wr = new byte[Strs.Length];

 for (int i = 0; i < Strs.Length; i++)
 {
 wr[i] = Convert.ToByte(Strs[i]);
 }

 FileStream FW = new FileStream(NewFileAddress, FileMode.Create);
 FW.Write(wr, 0, (int)wr.Length);
 FW.Close();
 }

 public string StrToAsc(string Input)
 {
 char[] C = new char[Input.Length];
 int[] A = new int[Input.Length];
 OutPut = "";

 for (int i = 0; i < Input.Length; i++)
 {
 C[i] = Convert.ToChar(Input.Substring(i, 1));
 A[i] = Convert.ToInt32(C[i]);
 OutPut = OutPut + " " + A[i].ToString();
 }

 return OutPut;
 }

 }
}

-

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

قطعاً اگر اسکی صفر مزاحم کارمان نمی شد با استفاده از برنامه های آماده ای همچون hiew ، در مدت زمان کمتری به نتیجه دلخواه دست پیدا می کردیم.

دریافت ویدئو نمایشی چگونگی انجام مراحل کار – حجم : 2.34 مگابایت
دریافت فایل اجرایی کد فوق- نیازمند FrameWork 3.5

منبع : http://m8spy.com -  نویسنده : مهران رسا

نوشته شده توسط M8SPY

فوریه 1st, 2010 در 2:32 ب.ظ

ابزار پاک کننده کرم جدید VH0ttie.W32

با 3 نظر

در آغاز سال 2010 شاهد انتشار یک کرم ایرانی به نام VH0ttie بودیم . این کرم تبلیغاتی با استفاده از ارسال پیغام های گروهی (Send to all) به کاربران یاهو مسنجر سعی در فریب کاربران برای دریافت یک بازی غیر اخلاقی نموده و پس از اجرا ، مجدداً از این پروسه برای فریب کاربران موجود در لیست یاهو مسنجر رایانه قربانی استفاده خواهد شد.

——–نام کرم : Visual Basic – VH0ttie.W32

——–کاربران مورد هدف : استفاده کنندگان ویندوز XP و Internet Explorer 6

——–عملیات : انتشار بین کاربران فارسی در جهت اهداف تبلیغاتی

در صورتی که رایانه شما به این کرم اینترنتی گرفتار شده است با استفاده از ابزار رایگان زیر برای پاکسازی آن اقدام کنید :

دریافت ابزار پاک کننده کرم vh0ttie – حجم : 147 کیلوبایت

نوشته شده توسط M8SPY

ژانویه 15th, 2010 در 11:05 ق.ظ

آموزش استفاده از Resource ها در VB 6

با 3 نظر

روش استفاده از Resource ها در زبان ویژوال بیسیک :

ابتدا از منوی Add-Ins گزینه Add-In manager را انتخاب نمایید . در پنجره باز شده بر روی گزینه VB 6 resource Editor دابل کلیک کنید . در این صورت آیکون Resource Editor (آیکون سبز رنگ) به پروژه Toolbar محیط  کار اضافه خواهد شد. پس از کلیک بر روی آیکون VB Resource Editor و در پنجره باز شده برای اضافه نمودن فایل  ریسورس جدید ، بر روی گزینه Add Custom Resource کلیک کرده و پس از انتخاب فایل مورد نظر تغییرات را ذخیره کنید .

حالا در صورتی که پروژه را کامپایل کنید فایل ریسورس در کنار فایل اجرایی در قالب یک فایل exe ایجاد خواهند شد . اما برای استخراج فایل ریسورس  باید آن را توسط دستور LoadResData فراخوانی کرده و در قالب یک فایل Binary ذخیره کنید .

مثال :

Dim file1() As Byte
 file1 = LoadResData(110, "CUSTOM")
 Open App.Path & "\MyResource.dll" For Binary As #1
 Put 1, , file1()
 Close #1

همانطور که مشاهده می کنید توسط دستور LoadResData و با مشخص کردن دو پارامتر ID و Type به ریسورس مورد نظر دست پیدا کردیم . ضمناً اطلاعات دریافت شده از این تابع باید در آرایه ای از نوع بایت قرار گرفته و سپس توسط Open در قالب یک فایل باینری بر روی دیسک نوشته شود .

نوشته شده توسط M8SPY

ژانویه 7th, 2010 در 8:55 ب.ظ

تامین امنیت فایل های اجرایی NET.

با یک نظر

Reflector نام نرم افزاری است که توسط آن می توانید برنامه های نوشته شده به زبان های NET. (ویژوال بیسیک ، #C ، …) را Decompile کنید . به طور کلی برنامه های نوشته شده به زبان دات نت پس از کامپایل به کد هایی به نام IL تبدیل می شن . از این رو توسط ابزار های خاصی مانند Reflector ، Fox ، Dis sharp میشه فایل های اجرایی ایجاد شده رو Decompile کرد . به عبارت ساده تر تا حدود %70 به کد اولیه برنامه دسترسی پیدا کرد . در واقع میشه گفت این قضیه معنای کد اجرایی (exe) رو تا حدودی نقض می کنه . برای روشن تر شدن موضوع یک مثال مطرح می کنم :

کد زیر رو در نظر بگیرید . کد رو به زبان #C ودر محیط Visual Studio می نویسیم .

        private void Form1_Load(object sender, EventArgs e)
        {
            int a, b;
            int c = 0;
            string outx = "";
            a = 8;
            b = 4;
            c = a + b;
            outx = Convert.ToString(c);
            MessageBox.Show(outx);
        }

پس از کامپایل کد و تبدیل به فایل اجرایی اون رو توسط نرم افزار رفلکتور ، DeCompile می کنیم و نتایج رو مشاهده می کنیم :

private void Form1_Load(object sender, EventArgs e)
{
    int num3 = 0;
    int num = 8;
    int num2 = 4;
    num3 = num + num2;
    MessageBox.Show(Convert.ToString(num3));
}

همونطور که مشاهده می کنید تنها شکل ظاهری کد ها تغییر کرد . برای مثال ما در کد اصلی برای تبدیل مقدار int به string از یک متغیر کمکی استفاده کردیم در صورتی که کد Decompile شده به صورت خلاصه تری در اومده.


———————————————————-

و اما راه حل جلوگیری از این مشکل چیه ؟
توصیه من استفاده از نرم افزاری به نام Smart Assembly هست . با استفاده از این obfuscator قدرتمند می تونید تا مقدار زیادی کدتون رو مبهم کنید . به طوری که حتی در مواردی Decompile کردن اون هم کاری غیر ممکن خواهد بود .

نتایج مبهم کردن فایل اجرایی توسط نرم افزار Smart Assembly به شرح زیر است :

——– اطلاعات دریافت شده توسط نرم افزار رفلکتور : Module contains unkown meta-data stream
——– حجم فایل اجرایی قبل از عملیات مبهم سازی : 8 کیلوبایت
——– حجم فایل اجرایی بعد از انجام عملیات مبهم سازی : 132 کیلوبایت



دریافت نرم افزار Smart Assembly 4 به همراه Crack

———————-

سورس برنامه NotePad به زبان ویژوال بیسیک

با 10 نظر

بنابرتقاضای یکی از بازدید کنندگان گرامی ، سورس برنامه NotePad به زبان ویژوال بیسیک رو از یکی از سایت ها فعال در این زمینه براتون آماده کردم

دریافت سورس

برنامه نویس این اثر : Mian Mahrukh Aleem

نوشته شده توسط M8SPY

دسامبر 15th, 2009 در 9:17 ق.ظ