كود لمعرفة الرقم التسلسلي للهارد - منتديات الجلفة لكل الجزائريين و العرب

العودة   منتديات الجلفة لكل الجزائريين و العرب > منتديات التقنية > منتدى البرمجة

منتدى البرمجة كل ما يتعلق بلغات البرمجة، فيجوال بيسيك , سي ++ , دلفي , أكسيس , جافا , هتمل...

في حال وجود أي مواضيع أو ردود مُخالفة من قبل الأعضاء، يُرجى الإبلاغ عنها فورًا باستخدام أيقونة تقرير عن مشاركة سيئة ( تقرير عن مشاركة سيئة )، و الموجودة أسفل كل مشاركة .

آخر المواضيع

كود لمعرفة الرقم التسلسلي للهارد

إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
قديم 2015-01-29, 13:42   رقم المشاركة : 1
معلومات العضو
medreg
عضو مشارك
 
إحصائية العضو










افتراضي كود لمعرفة الرقم التسلسلي للهارد

السلام عليكم ورحمة الله تعالى
هذا الكود يعمل على الويندوز xp
ولكن لا يعمل على الويندوز 7
وكأن البرنامج المستعمل فيه ليس به كود الحماية

كود بلغة HTML:
function GetIdeSerialNumber():string;
const IDENTIFY_BUFFER_SIZE = 512;
type
  TIDERegs = packed record
    bFeaturesReg     : BYTE; // Used for specifying SMART "commands".
    bSectorCountReg  : BYTE; // IDE sector count register
    bSectorNumberReg : BYTE; // IDE sector number register
    bCylLowReg       : BYTE; // IDE low order cylinder value
    bCylHighReg      : BYTE; // IDE high order cylinder value
    bDriveHeadReg    : BYTE; // IDE drive/head register
    bCommandReg      : BYTE; // Actual IDE command.
    bReserved        : BYTE; // reserved for future use.  Must be zero.
  end;
  TSendCmdInParams = packed record
    cBufferSize  : DWORD;
    irDriveRegs  : TIDERegs;
    bDriveNumber : BYTE;
    bReserved    : Array[0..2] of Byte;
    dwReserved   : Array[0..3] of DWORD;
    bBuffer      : Array[0..0] of Byte;  // Input buffer.
  end;
  TIdSector = packed record
    wGenConfig                 : Word;
    wNumCyls                   : Word;
    wReserved                  : Word;
    wNumHeads                  : Word;
    wBytesPerTrack             : Word;
    wBytesPerSector            : Word;
    wSectorsPerTrack           : Word;
    wVendorUnique              : Array[0..2] of Word;
    sSerialNumber              : Array[0..19] of CHAR;
    wBufferType                : Word;
    wBufferSize                : Word;
    wECCSize                   : Word;
    sFirmwareRev               : Array[0..7] of Char;
    sModelNumber               : Array[0..39] of Char;
    wMoreVendorUnique          : Word;
    wDoubleWordIO              : Word;
    wCapabilities              : Word;
    wReserved1                 : Word;
    wPIOTiming                 : Word;
    wDMATiming                 : Word;
    wBS                        : Word;
    wNumCurrentCyls            : Word;
    wNumCurrentHeads           : Word;
    wNumCurrentSectorsPerTrack : Word;
    ulCurrentSectorCapacity    : DWORD;
    wMultSectorStuff           : Word;
    ulTotalAddressableSectors  : DWORD;
    wSingleWordDMA             : Word;
    wMultiWordDMA              : Word;
    bReserved                  : Array[0..127] of BYTE;
  end;
  PIdSector = ^TIdSector;
  TDriverStatus = packed record
    bDriverError : Byte;
    bIDEStatus   : Byte;
    bReserved    : Array[0..1] of Byte;
    dwReserved   : Array[0..1] of DWORD;
  end;
  TSendCmdOutParams = packed record
    cBufferSize  : DWORD;
    DriverStatus : TDriverStatus;
    bBuffer      : Array[0..0] of BYTE;
  end;
  var
    hDevice : THandle;
    cbBytesReturned : DWORD;
//    ptr : PChar;
    SCIP : TSendCmdInParams;
    aIdOutCmd : Array [0..(SizeOf(TSendCmdOutParams)+IDENTIFY_BUFFER_SIZE-1)-1] of Byte;
    IdOutCmd  : TSendCmdOutParams absolute aIdOutCmd;

procedure ChangeByteOrder(var Data; Size : Integer );
var
  ptr : PChar;
  i : Integer;
  c : Char;
begin
    ptr := @Data;
    for i := 0 to (Size shr 1)-1 do
    begin
      c := ptr^;
      ptr^ := (ptr+1)^;
      (ptr+1)^ := c;
      Inc(ptr,2);
    end;
  end;
begin
  Result := ''; // return empty string on error
  if SysUtils.Win32Platform=VER_PLATFORM_WIN32_NT then // Windows NT, Windows 2000

begin
//íãßä ÊÛíÑ PhysicalDrive0 Çáì PhysicalDrive1 Çæ PhysicalDrive2
   hDevice := CreateFile( '\\.\PhysicalDrive0', GENERIC_READ or GENERIC_WRITE,
  FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING, 0, 0 );
  end
  else // Version Windows 95 OSR2, Windows 98
  hDevice := CreateFile( '\\.\SMARTVSD', 0, 0, nil, CREATE_NEW, 0, 0 );
  if hDevice=INVALID_HANDLE_VALUE then Exit;
  try
    FillChar(SCIP,SizeOf(TSendCmdInParams)-1,#0);
    FillChar(aIdOutCmd,SizeOf(aIdOutCmd),#0);
    cbBytesReturned := 0;
    with SCIP do
    begin
    cBufferSize  := IDENTIFY_BUFFER_SIZE;
    bDriveNumber := 0;
   with irDriveRegs do
   begin
     bSectorCountReg  := 1;
     bSectorNumberReg := 1;
     bDriveHeadReg    := $A0;
     bCommandReg      := $EC;
    end;
    end;
    if not DeviceIoControl( hDevice, $0007c088, @SCIP, SizeOf(TSendCmdInParams)-1,
      @aIdOutCmd, SizeOf(aIdOutCmd), cbBytesReturned, nil ) then Exit;
  finally
    CloseHandle(hDevice);
  end;
  with PIdSector(@IdOutCmd.bBuffer)^ do
  begin
    ChangeByteOrder( sSerialNumber, SizeOf(sSerialNumber) );
    (PChar(@sSerialNumber)+SizeOf(sSerialNumber))^ := #0;
    Result := PChar(@sSerialNumber);
  end;
end;
function get_password(a: string): string;
var
  b: string;
  c: char;
  i,n: integer;
begin
  b:='';
  for i := 1 to length(a) do
  begin
    c:= a[i];
    n:= ord(c);
    n:=n+(2*i);
    b:=b+chr(n);
  end;
  Result:=b;
end;
في الويندوز xp يظهر رقم الهارد ديسك في Edit حتى يتم جلب رمز التشفير
وفي الويندوز 7 لا يظهر رقم الهارد ديسك يعني تظهر edit فارغة
وبناء على وجود edit فارغة بمجرد الضغط على زر الدخول الى البرنامج يدخل عادي بدون طلب رمز التشفير








 

الملفات المرفقة
نوع الملف: rar key_gen.rar‏ (4.0 كيلوبايت, المشاهدات 31)

رد مع اقتباس
قديم 2015-01-31, 11:43   رقم المشاركة : 2
معلومات العضو
medreg
عضو مشارك
 
إحصائية العضو










افتراضي

اين انتم يا اهل الخبرة
42 مشاهدة للموضون
ولا رد واحد ما هذا
هل الموضوع غامض أم ماذا؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟










رد مع اقتباس
قديم 2015-02-05, 12:48   رقم المشاركة : 3
معلومات العضو
naoum78
عضو جديد
 
إحصائية العضو










افتراضي

أشكر الاخ على طرح الموضوع أود طرح بعض النقاط في ما يخص استخدام عدة تقنيات تسمح للمبرمج بحماية برامجه . في الحقيقة الامر نوعا ما معقد يحتوي على الكثير من الطرق منها
استخدام ارقام اجزاء الهارد ديسك c: d: ....
استخدام عنوان بطاقة الشبكة adresse mac
استخدام معلومات البيوس bios
استخدام معلومات نظام التشغيل windows
استخدام تقنيات التشفير
استخدام الدنقل dongle usb,com,...
أتمنى من الاخوة أو الادارة انشاء صفحة خاصة بتقنيات حماية البرامج











رد مع اقتباس
قديم 2015-10-08, 22:43   رقم المشاركة : 4
معلومات العضو
nourbour11
عضو مشارك
 
إحصائية العضو










افتراضي

شكراااا جزيلا










رد مع اقتباس
قديم 2015-10-20, 18:13   رقم المشاركة : 5
معلومات العضو
Johntech
عضو مشارك
 
إحصائية العضو










افتراضي

مشكووووووووووووووووووور










رد مع اقتباس
قديم 2015-10-26, 10:51   رقم المشاركة : 6
معلومات العضو
pack8
عضو مجتهـد
 
الصورة الرمزية pack8
 

 

 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة naoum78 مشاهدة المشاركة
أشكر الاخ على طرح الموضوع أود طرح بعض النقاط في ما يخص استخدام عدة تقنيات تسمح للمبرمج بحماية برامجه . في الحقيقة الامر نوعا ما معقد يحتوي على الكثير من الطرق منها
استخدام ارقام اجزاء الهارد ديسك c: D: ....
استخدام عنوان بطاقة الشبكة adresse mac
استخدام معلومات البيوس bios
استخدام معلومات نظام التشغيل windows
استخدام تقنيات التشفير
استخدام الدنقل dongle usb,com,...
أتمنى من الاخوة أو الادارة انشاء صفحة خاصة بتقنيات حماية البرامج


هل لديك خبرة في هذا المجال افدنا؟؟؟؟؟









رد مع اقتباس
قديم 2015-11-26, 16:37   رقم المشاركة : 7
معلومات العضو
Geekkmonir
عضو جديد
 
إحصائية العضو










افتراضي

شكرا لك أخي










رد مع اقتباس
قديم 2016-01-08, 17:00   رقم المشاركة : 8
معلومات العضو
legma
عضو مشارك
 
الصورة الرمزية legma
 

 

 
إحصائية العضو










افتراضي

شكرا على المجهود










رد مع اقتباس
قديم 2016-01-16, 20:09   رقم المشاركة : 9
معلومات العضو
djaafar007
عضو مشارك
 
إحصائية العضو










افتراضي

جاري التجريب وفقكة الله










رد مع اقتباس
قديم 2016-01-18, 21:31   رقم المشاركة : 10
معلومات العضو
mohamedmahdi
عضو جديد
 
إحصائية العضو










افتراضي

شكـــــــــــرا أخي










رد مع اقتباس
قديم 2016-02-21, 21:23   رقم المشاركة : 11
معلومات العضو
عبد العزيز 07
عضو فعّال
 
الصورة الرمزية عبد العزيز 07
 

 

 
إحصائية العضو










افتراضي

بارك الله فيك










رد مع اقتباس
قديم 2016-02-23, 13:51   رقم المشاركة : 12
معلومات العضو
mohamed bouzid
عضو جديد
 
إحصائية العضو










افتراضي

جزاك الله خيرا










رد مع اقتباس
إضافة رد

الكلمات الدلالية (Tags)
عدم،ظهور،رقم،الهارد


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع

الساعة الآن 05:25

المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى
المنتدى غير مسؤول عن أي إتفاق تجاري بين الأعضاء... فعلى الجميع تحمّل المسؤولية


2006-2024 © www.djelfa.info جميع الحقوق محفوظة - الجلفة إنفو (خ. ب. س)

Powered by vBulletin .Copyright آ© 2018 vBulletin Solutions, Inc