Windows’un Orjinalliğini Tespit Etmek

Bu dersin amacı Windows’un DLL dosyalarıyla bağlantı kurup, Windows orjinal mi değil mi onu öğrenmek. Bu uygulamayı Windows Application şeklinde ya da Console Application şeklinde yapabilirsiniz.

Bu dersin amacı Windows’un DLL dosyalarıyla bağlantı kurup, Windows orjinal mi değil mi onu öğrenmek. Bu uygulamayı Windows Application şeklinde ya da Console Application şeklinde yapabilirsiniz.

Hemen başlayalım.

Öncelikli olarak bir console uygulaması oluştururalım.

Adım 1

Referanslarımızı Alıyoruz.


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices; // DLL Referans almak için



Adım 2


using SLID = Guid; //SLID Windows orjinallik bilgileridir.
    class Program
    {
        public enum SL_GENUINE_STATE  //Public kullanmamızdaki amaç her yerden erişilebilmesidir.
        {
            SL_GEN_STATE_IS_GENUINE = 0,
            SL_GEN_STATE_INVALID_LICENSE = 1,
            SL_GEN_STATE_TAMPERED = 2,
            SL_GEN_STATE_LAST = 3
        }
        [DllImportAttribute(“Slwga.dll”, EntryPoint = “SLIsGenuineLocal”, CharSet = CharSet.None, ExactSpelling = false, SetLastError = false, PreserveSig = true, CallingConvention = CallingConvention.Winapi, BestFitMapping = false, ThrowOnUnmappableChar = false)] //Bu DLL dosyası Windows orjinallik dosyasıdır. Çoğu hack programı modifiye edemez. Biz  de bu dosyadaki bilgileri alıp orjinalliği test edeceğiz.
        [PreserveSigAttribute()]
        internal static extern uint SLIsGenuineLocal(ref SLID slid, [In, Out] ref SL_GENUINE_STATE genuineState, IntPtr val3);
        public static bool IsGenuineWindows() //Bool = true ise orjinal, değil ise sahte Windows
        {
            bool _IsGenuineWindows = false;

            Guid ApplicationID = new Guid(“55c92734-d682-4d71-983e-d6ec3f16059f”); //Guid almamız gerekiyor. Yoksa hata alabiliriz.
            SLID windowsSlid = (Guid)ApplicationID;
            try
            {
//Orjinallik değerlerini ölçüyoruz.
                SL_GENUINE_STATE genuineState = SL_GENUINE_STATE.SL_GEN_STATE_LAST;
                uint ResultInt = SLIsGenuineLocal(ref windowsSlid, ref genuineState, IntPtr.Zero);
                if (ResultInt == 0)
                {
                    _IsGenuineWindows = (genuineState == SL_GENUINE_STATE.SL_GEN_STATE_IS_GENUINE); //Orjinallik bilgilerini alıyoruz
                }
                else
                {
                    //Buraya hata kodlarını girebilirsiniz
                }
            }
            catch (Exception ex)
            {
                //Buraya hata kodlarını girebilirsiniz
            }
            return _IsGenuineWindows;
        }
        static void Main(string[] args) //Ana menü komutlarına geldik
        {
            if (Environment.OSVersion.Version.Major >= 6) //Vista, Win7 ve Win8 için gerekli (Win XP’de çalışmaz.)
            {
                if (IsGenuineWindows()) // Eğer true ise orjinaldir
                {
                    Console.WriteLine(“Windows Orjinal! Devam Ediliyor”);
MessageBox.Show(“Windows Orjinal”);
                    Environment.Exit(1); //Çıkış yapıyoruz
                }
                else
                {
                    Console.WriteLine(“Windows Orjinal Değil.”); //Eğer tam aksine ise orjinal değildir.
MessageBox.Show(“Windows Orjinal Değil”);
                    Environment.Exit(1); //Çıkış yapıyoruz
                }
            }
            else
            {
                Console.WriteLine(“İşletim Sistemi Desteklenmiyor”); //XP’den önceki işletim sistemleri için ya da Linux vb.
            }
            Console.ReadLine();
        }
    }



Hepsi bu kadar. Kolay gelsin.
  • Etiketler;
Hüseyin Kadir Çiftçi
Programcılığa ilkokul yıllarında başladı ve kendini iyi derecede geliştirdi. Şu an C#, Visual Basic, C++, Delphi, Android, Java, PHP gibi diller üzerinde çalışıyor. Bazı şirketlere yazılım konusunda destek oluyor.
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git