C# ile Hard diskin Model - Tip - SeriNo Kontrolü

Bu başlık kilitlidir. Yeni mesajlar gönderilemez veya mevcut mesajlar düzenlenemez.
yusufkurt
24-02-2005, 16:20   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
10 mesaj
Kayıt Tarihi:Kayıt: Şub 2005

C# ile Yaptığınız programların Başkaları tarafından yasadışı kullanılmasını istemiyorsanız bir takım önlemler almalısınız.Bunların arasında Çeşitli Yöntemler bulunmaktadır.Örneğin Regedit'te kayıt tutma , şifreleme v.s.Bunlar Basit ve aşılabilir Yöntemlerdir.Ancak Donanımın Seri numarasını kullanmak ve buna göre Key oluşturmak daha etkili bir yöntemdir:))Bu örnekte Hard diskin Seri nosu ,tipi(IDE-SCSI),model(Samsung,Seagate,Maxtor) gibi özelliklerini elde etmek için C# ı kullanacağız :) Seri Numarasını Yazdığınız Programda Kullanarak Lisansız kullanıma bir nevii önlem alabilirsiniz.

using System;
using System.Management;
using System.Collections;

namespace HDD
{

        class HardDisk
        {
                private object model=null;
                private object tip=null;
                private object seriNo=null;

                public object Model
                {
                        get
                        {
                                return model;
                        }
                       
                        set
                        {
                                model=value;
                        }
                }

                public object Tip
                {
                        get
                        {
                                return tip;
                        }
                       
                        set
                        {
                                tip=value;
                        }
                }

                public object SeriNo
                {
                        get
                        {
                                return seriNo;
                        }
                       
                        set
                        {
                                seriNo=value;
                        }
                }

             
}
        /// <summary>
        /// Main Yöntemini İçeren Sınıfı Tanımlıyoruz
        /// C# da her program Main Yönteminden Başlar
        /// </summary>
        class Class1
        {
                /// <summary>
                /// Main Yöntemi
                /// </summary>
                [STAThread]
                static void Main(string[] args)
                {
                    ArrayList hddCollection=new ArrayList();
                        ManagementObjectSearcher searcher=new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");

                        foreach(ManagementObject disk in searcher.Get())
                        {
                                HardDisk hdd=new HardDisk();
                                hdd.Model=disk["Model"];
                                hdd.Tip=disk["InterfaceType"];
                hddCollection.Add(hdd);
                      }

                        searcher=new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
                        int index=0;

                        foreach(ManagementObject disk in searcher.Get())
                        {
                                HardDisk hdd=(HardDisk)hddCollection[index];
                                if(disk["SerialNumber"]==null) hdd.SeriNo="Tanımsız";
                                else hdd.SeriNo=disk["SerialNumber"];
                                ++index;


                }
                        Console.WriteLine();
                        Console.WriteLine("Hard Disk Bilgileriniz");
                       
                        Console.WriteLine();
                        index = 1;
                        foreach(HardDisk hdd in hddCollection)
                        {
                                Console.WriteLine("{0}. Harddisk",index);
                                Console.WriteLine();
                                Console.WriteLine("Model:\t\t" + hdd.Model);
                                Console.WriteLine("Tip:\t\t" + hdd.Tip);
                                Console.WriteLine("Seri No:\t" + hdd.SeriNo);
                                Console.WriteLine();
                                ++index;
                        }
                        Console.ReadLine();

                       

                }
        }
}

Son Düzenleme: yusufkurt ~ 24 Şubat 2005 16:27
Eyüp Korkusuz
24-02-2005, 17:38   |  #2  
Yıllanmış Üye
Teşekkür Sayısı: 0
2,077 mesaj
Kayıt Tarihi:Kayıt: Eyl 2004

vayyyyy bravo aga direk girişin foruma güzel olmuş yani...