ئىنتىل تورى

 پارول قايتۇرىۋېلىش
 تىزىملىتىش
ئىزدەش
ئاۋات ئىزدەش: مۇسابىقەchromeexcelwordps
كۆرۈش: 78|ئىنكاس: 5

VB6.0دىن پايدىلىنىپ يۇمشاق دېتاللارغا قاتتىق دېتال ئۇچۇرىغا باغلانغا   [ئۇلانما كۆچۈرۈش]

yaruq 实名认证 

Rank: 3Rank: 3

تۆھپە
98
تىللا
153
شۆھرەت
146
يوللىغان ۋاقتى تۈنۈگۈن 00:00 |ھەممە قەۋەتنى كۆرۈش
VB6.0دىن پايدىلىنىپ يۇمشاق دېتاللارغا قاتتىق دېتال ئۇچۇرىغا باغلانغان تىزىملاش نومۇرى ھاسىل قىلىش

【يارۇق بلوگىنىڭ تەكلىپلىك يازغۇچىسى، VB6.0 سەھىپىسىنىڭ ئاپتۇرى توردىشىمىز مارىس 36 ئۇزاق يىللىق VB6.0 ئۆگەنگۈچىسى ۋە تەتقىقاتچىسى بولۇش سۈپىتى بىلەن ئىگەللىگەن بىلىملىرى تولىمۇ چوڭقۇردۇر.بۇ توردىشىمىزنىڭ ئىشلىگەن يۇمشاق دېتاللىرى خېلى كۆپ بولۇپ  مۇئەييەن ئىشلىتىش ئۈنۈمىگە ئىگە. بىز بۇندىن كېيىن ھەپتە بىر VB6.0 دەرىسلىكلىرى بۇيىچە ئۆگىنىش ماتېرىيالى ۋە ئەسلى كود، پۈتكەن پروگرامما نۇسخىسى قاتارلىقلارنى كەڭ توردىشىمىز بىلەن ھەمبەھىرلەندۈرۈشكە تىرىشىمىز. بۈگۈنكى تۇنجى VB6.0 سەھىپىسىگە بۇ توردىشىمىز يېقىندا پۈتتۈرگەن «VB6.0دىن پايدىلىنىپ يۇمشاق دېتاللارغا قاتتىق دېتال ئۇچۇرىغا باغلانغان تىزىملاش نومۇرى ھاسىل قىلىش» ناملىق دەرىسلىكنى يوللىدۇق. كەڭ VB6.0 گە قىزىققۇچى دوستلارنىڭ پايدىلىنىشىنى چۈشەنمىگەن يەرلىرىنى ئاستىغا ئىنكاس شەكلىدە قالدۇرۇشنى ئۈمىد قىلىمىز.
ھۆرمەت بىلەن: بلوگگېر كۈنتىكىن
تېما ئاپتورى: مارىس36】

VB6.0دىن پايدىلىنىپ يۇمشاق دېتاللارغا قاتتىق دېتال ئۇچۇرىغا باغلانغان تىزىملاش نومۇرى ھاسىل قىلىش

ئاساسىي تېمىدىكى مەسىلىلەر تۆۋەندىكى سوئاللار ئاساسىدا ھەل قىلىنىدۇ: قاتتىق دېتال ئۇچۇرى دېگەن نېمە؟ يۇمشاق دېتال تىزىملاش نومۇرى دېگەن نېمە؟ نېمىشقا يۇمشاق دېتاللارغا تىزىملاش نومۇرى ھاسىل قىلغاندا ئۇنىڭدىن پايدىلىنىمىز؟ تىزىملاش نومۇرىنى قانداق ئۇسۇلدا ھاسىل قىلىمىز؟

    قاتتىق دېتال ئۇچۇرى دېگەن نېمە؟

قاتتىق دېتال ئۇچۇرى – قاتتىق دېتال ياسىغان زاۋۇتلارنىڭ قاتتىق دېتاللارنىڭ توك يولى تاختىسىغا خاتىرىلەپ قويغان مەھسۇلات ئۇچۇرلىرىنى كۆرسىتىدۇ. مەسىلەن، زاۋۇتتىن چىققان ۋاقتى، تىپى، رەت نومۇرى (مۇشۇنداق قاتتىق دېتالدىن قانچىنى ياسىسا ھەر بىرىگە ئايرىم رەت نومۇرى قۇيىدۇ. بۇ تېمىدىكى ئۇچۇردىن پايدىلىنىش نىشانىمىزمۇ دەل مۇشۇنىڭدىن ئىبارەت)، زاۋۇت (تور بەت) ئادرېسى … قاتارلىقلار.

    يۇمشاق دېتال تىزىملاش نومۇرى دېگەن نېمە؟

بىز ياسىغان يۇمشاق دېتاللارنى خالىغانچە كۆچۈرۈپ تارقىتىلىشتىن ساقلاپ، ئەمگەك مېۋىمىزنى قوغداش ئۈچۈن لايىھىلەنگەن، ھەر بىر كومپيۇتېرغا ئايرىم تەقسىملىنىدىغان ئاچقۇچ ئۇچۇر – يۇمشاق دېتال تىزىملاش نومۇرىدۇر. مۇشۇ نومۇرنى بىزدىن ئىلتىماس قىلمىغىچە يۇمشاق دېتالنى قوزغىتالمايدۇ.

3. نېمىشقا يۇمشاق دېتاللارغا تىزىملاش نومۇرى ھاسىل قىلغاندا قاتتىق دېتال ئۇچۇرىدىن پايدىلىنىمىز؟

ناۋادا قاتتىق دېتال ئۇچۇرىدىن پايدىلانمىساق بىر كومپيۇتېر بىلەن يەنە بىر كومپيۇتېردا پەرقلىق ئاچقۇچ پەيدا قىلىش مەقسىتىگە يېتەلمەيمىز؛ ئۇنداق بولغاندا بىرلا ئاچقۇچ نومۇر ئارقىلىق ھەممە ئىشلەتكۈچى يۇمشاق دېتالىمىزنى ئىشلىتەلەيدۇ-دە، بىزدىن ئىلتىماس قىلىشنىڭ زۈرۈرىيىتى قالماي، ئەمگىكىمىز نۆلگە تەڭ بولىدۇ.

بەزى يۇمشاق دېتال لايىھىلىگۈچىلەر ئوپتىك دىسكىغا رەت نومۇرى قويۇپ، شۇنى قوزغاتقۇچقا سالغاندىلا ئاندىن قوزغىلىدىغان، ياكى بارماق دىسكىغا ئوخشايدىغان ئاپشاركىنى تەكشۈرۈش ئارقىلىق قوزغىلىدىغان، يەنە بەزىلەر ئىشلەتكۈچى نامى، ئېلخەت ئادرېسى قاتارلىقلارغا ئاساسەن ئاچقۇچ نومۇر تەمىنلەيدىغان ئۇسۇللاردا يۇمشاق دېتالىغا ئىگە بولىدۇ. ئىشەنچلىكلىك دەرىجىسى جەھەتتە ئاپشاركا ئالدىدا، ئۇنىڭدىن قالسا ھەم چىقىم كەتمەيدىغان، ھەم ئىشەنچىلىك ئۇسۇل – دەل قاتتىق دېتال ئۇچۇرىدىن پايدىلىنىش. باشقا ئۇسۇللار ئاۋارىچىلىق بولغاننىڭ ئۈستىگە ئىشەنچسىز.

    تىزىملاش نومۇرىنى قانداق ئۇسۇلدا ھاسىل قىلىمىز؟

       ئاۋۋال مەلۇم قاتتىق دېتالنىڭ (مەسىلەن، قاتتىق دىسكا، CPU، ئاساسىي تاختا … قاتارلىقلار، ماقالىدە ئىشەنچلىكراق بولغان CPUنىڭ رەت نومۇرىنى ئېلىش مىسال قىلىنىدۇ) رەت نومۇرىنى ئالىمىز. ئۇنى ئازراق ئۆزگەرتىپ (ئۇچۇر پاروللاشنىڭ ئۇسۇللىرى كۆپ. ھازىر ئېقىۋاتقان ئۇسۇللارنى ئايرىم ماقالىدە تونۇشتۇرىمەن، ۋاقىپ بولغايسىلەر) ئىشلەتكۈچىگە كۆرسىتىمىز (بۇ قۇلۇپ، دېيىلىدۇ). ئىشلەتكۈچى بۇ نومۇرنى بىزگە دەپ بېرىدۇ. بىز ئۇنى يەنە كەينىگە قايتۇرۇپ، رەت نومۇرىنى ئىگەللەپ، شۇنىڭغا ماس ئاچقۇچ نومۇرنى ھېسابلاپ ئەۋەتىمىز. يۇمشاق دېتالىمىز ئالدىن بەلگىلەنگەن سېلىشتۇرۇش ئۇسۇلىدا سېلىشتۇرۇپ دەلىللەپ ئاندىن قوزغىلىدۇ (تاكى سىستېمىنى قايتا قاچىلىغۇچە سورىمايدۇ. ناۋادا مەشغۇلات سىستېمىسىنى قايتا قاچىلىسا، پەقەت بىر قېتىم يەنە شۇ ئاچقۇچ نومۇرنى كىرگۈزۈپلا قويسا قايتا سورىمايدۇ). تىزىملانغانلىق ئۇچۇرىنى سىستېمىنىڭ تىزىملاش جەدۋىلىگە ياكى مەلۇم بىر ئورۇندا ھۆججەت قۇرۇپ شۇنىڭدا ساقلايمىز. ھەر قېتىم قوزغالغاندا مۇشۇ ئۇچۇرغا ئاساسەن قوزغىلىدۇ ياكى بىزدىن ئاچقۇچ سورايدۇ.

خوش، ئەمسە قاتتىق دېتال ئۇچۇرىنى قانداق كود بىلەن ئالىمىز؟

بۇنىڭ ئۇسۇللىرى كۆپ. مەسىلەن، C تىلىدا تەييارلانغان Dll ھۆججىتى ئارقىلىق ئېلىش، WMI (بۇنىڭ نېمىلىكىنى ئايرىم ماقالىدە تونۇشتۇرىمەن، ۋاقىپ بولغايسىلەر) ئۇچۇرى ئارقىلىق ئېلىش، Win API ئارقىلىق ئېلىش ۋەھاكازالار. بۇ ماقالىدە مىسال ئۈچۈن WMI ئۇچۇرى ئارقىلىق ئېلىش ئۇسۇلىنى تونۇشتۇرىمەن. چۈنكى، بۇنداق ئۇسۇلدا ئالساق ھەم بىخەتەر، ھەم ئاز كود كېتىدۇ. باشقا ئۇسۇللاردا ياكى كۆپ كود يازىمىز، ياكى بىخەتەرلىكى كاپالەتكە ئىگە ئەمەس.

ئەمسە باشلىۋەتتۇق، دىققىتىڭىز مەندە بولسۇن-ھە!

VB6.0نى قوزغىتىپ، كۆزنەككە بىر دانە كۇنۇپكا (按钮CommandButton)، بىر دانە خەتكۈچ (标签Label)، بىر دانە تېكىست رامكىسى (文本框TextBox) ئورۇنلاشتۇرىمىز. ئاندىن كۆزنەكنى قوش چېكىپ، چىققان كود كۆزنىكىگە تۆۋەندىكى كودنى يازىمىز.

Private Sub Form_Load()

Dim CPUSet, CPU

Set CPUSet = GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("Win32_Processor")

For Each CPU In CPUSet

    Label1 = CPU.ProcessorId

Next

End Sub

كۆرۈنگەن ئۇچۇر CPUنىڭ زاۋۇتتىن چىققان تەرتىپ نومۇرى بولۇپ (بۇنىڭغا ھېچقانداق ئۆزگەرتىش كىرگۈزۈلمىگەن)، بۇنى ئىشلەتكۈچى بىزگە ئەۋەتىدۇ. بىز بۇنىڭغا ماس كېلىدىغان (يەنى، بىز ئالدىن بەلگىلەپ قويغان ھېسابلاپ ئۆزگەرتىلگەن شەكىلدىكى) تىزىملاش نومۇرىنى ھېسابلاپ چىقىپ ئەۋەتىمىز. ناۋادا تىزىملاش نومۇرى ماس كەلسە بۇ دېتال قوزغىلىدۇ ۋە تىزىملاشنى قايتا سورىمايدۇ.

دېتالنىڭ توغرا تىزىملانغانلىقىنى قانداق بىلىمىز ۋە كېيىنكى قېتىم قايتا سورىمايدىغان قىلىمىز؟

باشتا دېگىنىمدەك، سىستېمىنىڭ تىىملاش جەدۋىلىگە ياكى ئۆزىمىز بەلگىلەپ كومپيۇتېرنىڭ مەلۇم دىسكىسىدىكى مەلۇم ئورۇنغا بىر ھۆججەت يېزىپ، شۇ ھۆججەتنىڭ بار-يوقلىقىغا ھۆكۈم قىلىش ئارقىلىق تىزىملانغان-ئەمەسلىكىنى بىلەلەيمىز.

ۋوي، ناۋادا بۇ ھۆججەتنى ساختىپەزلەر ئۆزى قۇرۇۋالسىمۇ تىزىملىتىشنى سورىمايدىغان بوپقالمامدۇ؟ ئەقلىڭىزگە بارىكاللا! شۇڭا بىز ئۇ ھۆججەت ئىچىگە ئاچقۇچ ئۇچۇرلىرىنى بىللە ساقلاپ قويىمىز (بۇ ئۇچۇرلارنىمۇ پاروللاپ ساقلايمىز جۇمۇ!) ۋە سېلىشتۇرۇپ ئاندىن قوزغىلىدىغان قىلىمىز. ناۋادا بۇ ھۆججەت ئۆچۈرۈلۈپ كەتسە ئاچقۇچ ئۇچۇرنى قايتا كىرگۈزسىلا بولدى.

يۇقىرىقى جەريانلارنىڭ تولۇق كودى تۆۋەندىكىچە بولىدۇ (دىققەت، جەريانغا پاروللاش، يەنى 加密 ئۇسۇلى قوللىنىلمىغان، مۇشۇنداقلا ئىشلەتمەڭ!!!...):

Dim ID As String

Private Sub Form_Load()

On Error GoTo nErr

    Dim CPUSet, CPU

    Set CPUSet = GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("Win32_Processor")

    For Each CPU In CPUSet

        ID = CPU.ProcessorId

    Next

nErr:

    If Err.Number = 53 Then 'Tizimlanmighan

        Label1 = ID: Text1 = "Tizimlax nomurini kirguzung!"

        Exit Sub

    Else

        Dim FN As String, S As String

        FN = "C:\MyInfo.bin"

        Open FN For Input As #1

            Line Input #1, S

            If S = ID Then Unload Me

        Close #1

    End If

End Sub

Private Sub Command1_Click()

    Dim FN As String, S As String

    S = Text1

    If S = ID Then

        FN = "C:\MyInfo.bin"

        Open FN For Output As #1

            Print #1, S

        Close #1

        MsgBox "Tizimlitixingiz Utukluk boldi.", vbInformation

        Unload Me

    Else

        MsgBox "Tizimlax Nomuri Hata!", vbExclamation

    End If

End Sub

Private Sub Form_Unload(Cancel As Integer)

    'Asasi Koznak Kozgilip, dital normal ixlaydu...

    Load frmMain: me.Hide

End Sub

قانداق، كود ئاز ۋە چۈشىنىشلىكمىكەن؟

ماقالىنىڭ ۋەزىپىسى مۇشۇ يەردە ئاياغلاشتى. سوئاللار ۋە پىكىرلەرنى ئىنكاس قىلىپ يوللىساڭلار ۋاقتىم يەتسىلا جاۋاب قالدۇرىمەن. ئىشلىرىڭلارغا ئۇتۇق تىلەپ: Mars36

مەنبە: يارۇق بلوگى

Rank: 5Rank: 5

تۆھپە
761
تىللا
977
شۆھرەت
1357

تىرىشچان دەلىللەنگەن ئەزا

يوللىغان ۋاقتى تۈنۈگۈن 11:57 |ھەممە قەۋەتنى كۆرۈش
بۇ ناھايتى ياخشى باشلىنىش بوپتۇ ، قوللايمەن.
مومكىن بولسا بۇندىن كىيىن كود نى كود كىرگۇزۇش رايۇنىدىن يوللىغان بولسىڭىز.

Rank: 5Rank: 5

تۆھپە
761
تىللا
977
شۆھرەت
1357

تىرىشچان دەلىللەنگەن ئەزا

يوللىغان ۋاقتى تۈنۈگۈن 11:59 |ھەممە قەۋەتنى كۆرۈش
قاتتىق دىسكا ۋە ياكى باشقا قاتتىق دىتاللارنىڭ (تور كارتا) تەرتىپ نۇمىرىنى ئىلىشمۇ ئاساسەن مۇشۇ تەرتىپتە بولامدۇ؟
alm+soft   [ئىشەنچلىك ئەزا]  实名认证 

Rank: 8Rank: 8

تۆھپە
972
تىللا
700
شۆھرەت
1285
يوللىغان ۋاقتى تۈنۈگۈن 13:21 |ھەممە قەۋەتنى كۆرۈش
ۋاي رەھمەت سىزگە .
مەن vb نى يىڭى ئۆگېنىۋاتقان تىخى بىر سېناپ باقايچۇ .
mars36 实名认证 

Rank: 8Rank: 8

تۆھپە
495
تىللا
891
شۆھرەت
940

شەرەپ تىرىشچان

يوللىغان ۋاقتى 6 سائەت ئالدىدا |ھەممە قەۋەتنى كۆرۈش
uqkun77 يوللىغان ۋاقتى  2012-5-26 11:59
قاتتىق دىسكا ۋە ياكى باشقا قاتتىق دىتاللارنىڭ (تور كار ...

شۇنداق. ھەر قانداق قاتتىق دېتالنىڭ ئۇچۇرىنى ئېلىش ئۇسۇلى ئاساسەن ئوخشاش. ياسىغان يۇمشاق دېتالىمىزغا قايسى بىر قاتتىق دېتالنىڭ ئۇچۇرىدىن پايدىلىنىپ قۇلۇپ سالساق بولىۋېرىدۇ. لېكىن بىر تەرىپى، ئىمكان بار بىر كومپيۇتېردا مۇقىمراق تۇرىدىغان قاتتىق دېتال تاللاش زۈرۈر.
يۇمشاق تۈگۈلگەن مۇشت ياش سۈرتۈشكە يارايدۇ

Rank: 8Rank: 8

تۆھپە
676
تىللا
882
شۆھرەت
1272
يوللىغان ۋاقتى 2 سائەت ئالدىدا |ھەممە قەۋەتنى كۆرۈش
vb دىن چۈشەندۈرۈش خاراكتىرلىك دەرسلىكلەر خىلى كۆپ، لېكىن مۇشۇنداق ئەمىلى مىساللىق ، نەپ بىرىدىغان دەرسلىكلەرنى تاپماق بەك تەس ئىدى، دەرسلىكلىرىڭىز ئۆزۈلۈپ قالمىغاي....
كىرگەندىن كىيىن ئىنكاس يازالايسىز كىرىش | تىزىملىتىش

يانفۇن|Archiver|intil.cn ( 新ICP备11001938号 )

GMT+8, 2012-5-27 21:05 , Processed in 0.533275 second(s), 17 queries .

Powered by Discuz! X2(NurQut Team)

© 2001-2011 Comsenz Inc.

چوققىغا قايتىش