عنوانك السابق
اقتباسإستفسارعن هذا الكود خاص لجميع خبراء البرمجة وخاصة هولاء الثلاثة.
هذا الكود لمعرفة الرقم المسلسل للبروسيسور.
ولابد أن أقول أولاً أن هذا الكود ليس من صنعي.
ولكن من صنع ثلاثة أشخاص.
الأستاذ المهندس / بن حسن / كود الفورم.
والأستاذة الكبيرة / زهرة / كود الميديول.
والأستاذ / wehadyxp / الذي قام بتجميع هذين الكودين في مثال واحد
بعد أن طلبت منه ذلك حيث كنت محتاج إلى ذلك بشدة , جزاه الله خير الجزاء.
هذا الكود في الفورم
----------------------------------------------------
Option Explicit
Private Sub label100_GotFocus()
Label100.SelStart = 0
Label100.SelLength = Len(Label100)
End Sub
Private Sub Form_Load()
Dim m_objCPUSet As SWbemObjectSet
Dim m_objWMINameSpace As SWbemServices
Dim oCpu As SWbemObject 'WMI Object, in this case, local CPUs
Set m_objWMINameSpace = GetObject("winmgmts:")
Set m_objCPUSet = m_objWMINameSpace.InstancesOf("Win32_Processor")
'I use the foir loop because I could
'not retrieve the first object normally
For Each oCpu In m_objCPUSet
Label100 = oCpu.processorid
Label300 = HDLettersToDigits(Replace(([Label100]), "-", ""))
Exit For
Next
Set oCpu = Nothing
Set m_objCPUSet = Nothing
Set m_objWMINameSpace = Nothing
End Sub
هذا الكود في الميديول
-------------------------
' دالة تحويل الحروف إلى أرقام ( أختكم : زهرة )
Function XlateDigit(ByVal C As String) As String
C = UCase$©
Select Case C
Case "A" To "F"
XlateDigit = Chr$((Asc© + 0) \ 3 + 28)
Case "G" To "L"
XlateDigit = Chr$((Asc© + 0.1) \ 3 + 28)
Case "M" To "P"
XlateDigit = Chr$((Asc© + 0.2) \ 3 + 28)
Case "Q" To "V"
XlateDigit = Chr$((Asc© + 0.3) \ 3 + 28)
Case "W" To "Z"
XlateDigit = Chr$(Asc© \ 0.7 + 28)
Case Else
XlateDigit = C
End Select
End Function
' دالة تحويل الحروف إلى أرقام ( أختكم : زهرة )
Function HDLettersToDigits(ByVal HD As Variant) As Variant
Dim I As Integer
If VarType(HD) = 8 Then
For I = 1 To Len(HD)
Mid(HD, I, 1) = XlateDigit(Mid(HD, I, 1))
Next I
End If
HDLettersToDigits = HD
End Function
--------------------------------------------------------------------------
وسؤالي إلي كل الخبراء وخاصة إلي الثلاثة الذين قاموا بهذا المجهود.
هل هذا الكود يعمل على البروسيسور AMD ؟
هل هذا الكود يعمل هلى أجهزة اللاب توب ؟
لأن أخي قام بتجربة هذا الكود على ثلاثة أجهزة لآب توب من نوع Acer
وقد كانت النتيجة رقم واحد للثلاثة أجهزة.!!!؟
هل هذا الكود يعطي الرقم المسلسل الحقيقي لأي بروسيسور,
أم أنه يعطي رقم آخر للبروسيسور يمكن أن يتكرر؟
مثل الكود الخاص بالهارد ديسك , يوجد كودان أحدهما يعطى رقم للهارد يتعير بعد الفورمات
وآخر يعطي الرقم الفيزيائي.وكلا الكودين لا يعملوا على الهارد الساتا.
هل هذا الكود المرفق الخاص بالبروسيسور يمكن أن يعطي أرقام متشابه كما أخبرني أخي عند تجربته؟
أنا آسف الرسالة طويلة.
هل يمكن أن يرسل لي أي أخ كود يقوم بإظهار الرقم الفيزيائي للهارد الساتا والهارد العادي معاً؟
أرجو الإفادة من فضلكم.
publicsoft
abdunahas@yahoo.com
abdunahas@hotmail.com
.gif)


HWInfoEx.zip