اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

تفضل ......

في ٢٢‏/١٢‏/٢٠٢١ at 15:10, ابو جودي said:

طيب نصيحة سيبك من رقم الماذر بورد

لانه احيانا الاكواد ما تحصل اى نتائج ومنها اللوحة تبعى :biggrin:

Untitled.png.e92b4239949ab3abfd2bdb4c36b559fe.png

 

ان كنت تريد رقم فريد اتفضل

- التجربة قبل وبعد فصل الشبكة ظهر نفس الرقم

- التجربة بعد أعادة تشغيل .. قبل وبعد فصل الشبكة ظهر نفس الرقم

- التجربة بعد الفرمات .. قبل وبعد فصل الشبكة ظهر نفس الرقم

- النظام قبل الفرمات ويندوز 10 - 64Bit   أوفس 2021 64Bit

- النظام بعد الفرمات ويندوز 7 - 32Bit   أوفس 2016 32Bit

والرقم الناتج من تلك الطريقة ثابت لا يتغير مطلقا

 

Get UUID.mdb 204 kB · 14 downloads

 

  • Thanks 1
قام بنشر

اتفضل

Function GetPhysicalSerial() As Variant

    Dim obj As Object
    Dim wmi As Object
    Dim SNList() As String, i As Long, count As Long
    
    Set wmi = GetObject("WinMgmts:")
    
    For Each obj In wmi.InstancesOf("Win32_PhysicalMedia")
        If obj.SerialNumber <> "" Then count = count + 1
    Next
    
    'ReDim SNList(1 To Count, 1 To 1)
    ReDim SNList(1 To count)
    
    i = 1
    For Each obj In wmi.InstancesOf("Win32_PhysicalMedia")
        'SNList(i, 1) = obj.SerialNumber
        SNList(i) = Trim(obj.SerialNumber & "")
        Debug.Print Trim(obj.SerialNumber & "")
        i = i + 1
        If i > count Then Exit For
    Next
    
    GetPhysicalSerial = SNList(1)
End Function

 

لم يتم الاختبار بعد الفورمات 

ولا ادرى هل تغيير رقم الهاردديسك يؤثر على النتيجة ام لا

قام بنشر
16 ساعات مضت, ابو جودي said:

اتفضل

Function GetPhysicalSerial() As Variant

    Dim obj As Object
    Dim wmi As Object
    Dim SNList() As String, i As Long, count As Long
    
    Set wmi = GetObject("WinMgmts:")
    
    For Each obj In wmi.InstancesOf("Win32_PhysicalMedia")
        If obj.SerialNumber <> "" Then count = count + 1
    Next
    
    'ReDim SNList(1 To Count, 1 To 1)
    ReDim SNList(1 To count)
    
    i = 1
    For Each obj In wmi.InstancesOf("Win32_PhysicalMedia")
        'SNList(i, 1) = obj.SerialNumber
        SNList(i) = Trim(obj.SerialNumber & "")
        Debug.Print Trim(obj.SerialNumber & "")
        i = i + 1
        If i > count Then Exit For
    Next
    
    GetPhysicalSerial = SNList(1)
End Function

 

لم يتم الاختبار بعد الفورمات 

ولا ادرى هل تغيير رقم الهاردديسك يؤثر على النتيجة ام لا

غير ثابت بيتغير مع تغير الويندوز 

قام بنشر (معدل)
1 ساعه مضت, User user said:

غير ثابت بيتغير مع تغير الويندوز 

الله اعلم 

انا حصلت الكود من البحث وقيل انه هاد الرقم الثابت للهارد ديسك اللى لا بيتغير لا بأى طريقة من طرق المتبعة ولا بالفورمات 

ومن اجل ذلك لاننى لم اقم بعمل فورمات والتجربة للكود ذكرت ذلك 

اقتباس

لم يتم الاختبار بعد الفورمات 
ولا ادرى هل تغيير رقم الهاردديسك يؤثر على النتيجة ام لا

 

القول الفصل هو التجربة العملية بتغيير رقم الهارد ديسك

وتجربة الكود 

وبعمل فورمات  ثم تجربة الكود كذلك للتاكد من انها نفس النتيحة 

 

ولكن انا اميل الا ان هذا الرقم هو الرقم الثابت والذى لا يتغير مطلقا لان الروتين يقوم بتحضير موديل وسيريال الهارد ديسك :eek2: 

تم تعديل بواسطه ابو جودي
قام بنشر
1 ساعه مضت, ابو جودي said:

الله اعلم 

انا حصلت الكود من البحث وقيل انه هاد الرقم الثابت للهارد ديسك اللى لا بيتغير لا بأى طريقة من طرق المتبعة ولا بالفورمات 

ومن اجل ذلك لاننى لم اقم بعمل فورمات والتجربة للكود ذكرت ذلك 

 

القول الفصل خو التجربة العملية بتغيير رقم الهارد ديسك

وتجربة الكود 

وبعمل فورمات  ثم تجربة الكود كذلك

ولكن انا اميل الا ان هذا الرقم هو الرقم الثابت والذى لا يتغير مطلقا لان الروتين يقوم بتحضير موديل وسيريال الهارد ديسك :eek2: 

حضرتك جربت الكود ؟

 

قام بنشر (معدل)
Sub GetPhysicalSerial()
 
Dim obj As Object
Dim WMI As Object
 
Set WMI = GetObject("WinMgmts:")
 
For Each obj In WMI.InstancesOf("Win32_PhysicalMedia")
Debug.Print "SN: " & obj.SerialNumber
Next
 
End Sub

تفضل اخي 

هذا الكود لمعرفة رقم الهارد الثابت ولن يتغير ابدا.

@ Echo off

wmic diskdrive get serialnumber

pause

 

MyHdd.rar

تم تعديل بواسطه سامي الحداد
إضافة كود VBA
قام بنشر
4 ساعات مضت, سامي الحداد said:
@ Echo off

wmic diskdrive get serialnumber

pause

كيفية تحويل الكود ل vba

4 ساعات مضت, سامي الحداد said:
Sub GetPhysicalSerial()
 
Dim obj As Object
Dim WMI As Object
 
Set WMI = GetObject("WinMgmts:")
 
For Each obj In WMI.InstancesOf("Win32_PhysicalMedia")
Debug.Print "SN: " & obj.SerialNumber
Next
 
End Sub

مع تغير الويندوز بيتغير 

قام بنشر (معدل)

السلام عليكم

انا استخدم هذه الوحدة النمطية

اتمنى ان تكون المطلوب

Public Function GetHDID()
On Error Resume Next

   Dim wmi As Object
   Dim wmiCollection As Object
   Dim wmiMember As Object
   
   Set wmi = GetObject("winmgmts:\\")
   Set wmiCollection = wmi.InstancesOf("Win32_PhysicalMedia")
   
   For Each wmiMember In wmiCollection
   
   GetHDID = wmiMember.SerialNumber

     'MsgBox Trim(wmiMember.SerialNumber)
      
   Exit For
   Next
   Set wmiMember = Nothing
   Set wmiCollection = Nothing
   Set wmi = Nothing
End Function

 

 

test.accdb

تم تعديل بواسطه Ahmed_J
قام بنشر
2 ساعات مضت, Ahmed_J said:

السلام عليكم

انا استخدم هذه الوحدة النمطية

اتمنى ان تكون المطلوب

Public Function GetHDID()
On Error Resume Next

   Dim wmi As Object
   Dim wmiCollection As Object
   Dim wmiMember As Object
   
   Set wmi = GetObject("winmgmts:\\")
   Set wmiCollection = wmi.InstancesOf("Win32_PhysicalMedia")
   
   For Each wmiMember In wmiCollection
   
   GetHDID = wmiMember.SerialNumber

     'MsgBox Trim(wmiMember.SerialNumber)
      
   Exit For
   Next
   Set wmiMember = Nothing
   Set wmiCollection = Nothing
   Set wmi = Nothing
End Function

 

 

test.accdb 536 kB · 2 downloads

اشكرك على تعبك 
للاسف السيريال بتاع الهارد بيتغير بعد تغير النسخه 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information