Tìm hiểu quy luật tạo CD Key trong file Excel

  • Thread starter Thread starter iloveit
  • Ngày gửi Ngày gửi
Liên hệ QC

iloveit

Thành viên thường trực
Tham gia
2/3/13
Bài viết
212
Được thích
52
Giới tính
Nam
Nghề nghiệp
Tự do
Tôi có một file Excel như đính kèm dưới đây. Trong file có các đoạn code VBA nhưng tôi cũng chưa hiểu quy luật nào để lấy ra số CD Key.

Tôi gửi file đính kèm nhờ mọi người giải thích giúp. Cám ơn!

Mã:
Sub GetID()
Dim fso As Object, Drv As Object
Dim sComm As String, tmpFile, biosSN
'LAY BIOS
On Error Resume Next
    Set fso = CreateObject("Scripting.FileSystemObject")
    If DriveLetter <> "" Then
        Set Drv = fso.GetDrive(DriveLetter)
    Else
        Set Drv = fso.GetDrive(fso.GetDriveName(Application.path))
    End If
    
    With Drv
        If .IsReady Then
            DriveSerial = Abs(.SerialNumber)
        Else
            DriveSerial = -1
        End If
    End With
    Set Drv = Nothing
    Set fso = Nothing
    'Range("C3").Value = DriveSerial
'LAY BIOS
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
For Each objItem In colItems
    Range("I15").Value = DriveSerial & Range("A12").Value
    'MsgBox "DI 1: " & DriveSerial & "ID 2:" & objItem.ProcessorId
Next
End Sub
Sub I10100110()
Dim O00000111, O10111111, O11000100 As Variant

O10111111 = Sheets("S10001000").Cells(I01100011("O00000100"), I01100011("O00001001")).Value
If Worksheets("S10001000").Cells(I01100011("O00001001"), I01100011("O00000100")).Value = 5 Then
    MsgBox "Ban da dang ky su dung cho 5 may"

    Exit Sub
End If
'..............
Call I00011110
O11000100 = Sheets("S10001000").Cells(I01100011("O00000001"), I01100011("O00000001")).Value
O00000111 = Mid(O10111111, I01100011("O00000010"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00000101"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00000011"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001001"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001101"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001011"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00000110"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001000"), I01100011("O00000001"))
If O00000111 = O11010000 Or O00000111 = O00000001 Or O00000111 = O00011111 Then
O01011001 = I01100011("O00000001")
Else
O01011001 = I01100011("O00000000")
End If
'..........................
O00011110 = I01100011("O00000000")
Call I10011000
Call I11100000


End Sub
Sub I10011000()
Dim O00000111, O10111111, O11000100 As Variant
O10111111 = Sheets("S10001000").Cells(I01100011("O00000100"), I01100011("O00001001")).Value
O11000100 = Sheets("S10001000").Cells(I01100011("O00000001"), I01100011("O00000001")).Value
'..........................
O00000111 = Mid(O10111111, I01100011("O00000111"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001100"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001010"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00000100"), I01100011("O00000001"))
If O00000111 = Mid(O11000100, I01100011("O00001101"), I01100011("O00000100")) Then
O00011110 = I01100011("O00000001")
Else
O00011110 = I01100011("O00000000")
End If

End Sub
Sub I11100000()
If O01011001 = I01100011("O00000001") And O00011110 = I01100011("O00000001") Then

    Worksheets("S10001000").Range("A3").Offset(I01100011("O00000001") + Worksheets("S10001000").Cells(I01100011("O00001001"), I01100011("O00000100")).Value, 0).Value = Worksheets("S10001000").Cells(I01100011("O00000001"), I01100011("O00000001")).Value


    Worksheets("S01111111").Activate
    Worksheets("S01111111").Visible = True
    Worksheets("S01111111").Activate
    Worksheets("S10001000").Visible = xlVeryHidden
    MsgBox "DANG KY THANH CONG"
'    text = "" & ChrW$(272) & ChrW$(258) & "NG K" & ChrW$(221) & " TH" & ChrW$(192) & "NH C" & ChrW$(212) & "NG!"
'    MsgBoxUni text

    Sheets("S10001000").Cells(I01100011("O00000100"), I01100011("O00001001")).Value = ""
    O10000010 = I01100011("O00000001")
    Sheets("S10001000").Cells(I01100011("O00000100"), I01100011("O00001101")).Value = ""
    If Sheets("S00100111").Cells(I01100011("O00000100"), I01100011("O00001101")).Value = "" Then
    Sheets("S00100111").Cells(I01100011("O00000100"), I01100011("O00001101")).Value = I01100011("O00000001")
    Else
    Sheets("S00100111").Cells(I01100011("O00000100"), I01100011("O00001101")).Value = Sheets("S00100111").Cells(I01100011("O00000100"), I01100011("O00001101")).Value + I01100011("O00000001")
    End If
Else
    MsgBox " SAI MA XAC NHAN,NHAP LAI"
'    text = "SAI M" & ChrW$(195) & " X" & ChrW$(193) & "C NH" & ChrW$(7852) & "N! VUI L" & ChrW$(210) & "NG NH" & ChrW$(7852) & "P L" & ChrW$(7840) & "I"
'    MsgBoxUni text

    O10000010 = I01100011("O00000000")
End If
End Sub
 

File đính kèm

Tôi có một file Excel như đính kèm dưới đây. Trong file có các đoạn code VBA nhưng tôi cũng chưa hiểu quy luật nào để lấy ra số CD Key.

Tôi gửi file đính kèm nhờ mọi người giải thích giúp. Cám ơn!

Mã:
Sub GetID()
Dim fso As Object, Drv As Object
Dim sComm As String, tmpFile, biosSN
'LAY BIOS
On Error Resume Next
    Set fso = CreateObject("Scripting.FileSystemObject")
    If DriveLetter <> "" Then
        Set Drv = fso.GetDrive(DriveLetter)
    Else
        Set Drv = fso.GetDrive(fso.GetDriveName(Application.path))
    End If
   
    With Drv
        If .IsReady Then
            DriveSerial = Abs(.SerialNumber)
        Else
            DriveSerial = -1
        End If
    End With
    Set Drv = Nothing
    Set fso = Nothing
    'Range("C3").Value = DriveSerial
'LAY BIOS
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
For Each objItem In colItems
    Range("I15").Value = DriveSerial & Range("A12").Value
    'MsgBox "DI 1: " & DriveSerial & "ID 2:" & objItem.ProcessorId
Next
End Sub
Sub I10100110()
Dim O00000111, O10111111, O11000100 As Variant

O10111111 = Sheets("S10001000").Cells(I01100011("O00000100"), I01100011("O00001001")).Value
If Worksheets("S10001000").Cells(I01100011("O00001001"), I01100011("O00000100")).Value = 5 Then
    MsgBox "Ban da dang ky su dung cho 5 may"

    Exit Sub
End If
'..............
Call I00011110
O11000100 = Sheets("S10001000").Cells(I01100011("O00000001"), I01100011("O00000001")).Value
O00000111 = Mid(O10111111, I01100011("O00000010"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00000101"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00000011"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001001"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001101"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001011"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00000110"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001000"), I01100011("O00000001"))
If O00000111 = O11010000 Or O00000111 = O00000001 Or O00000111 = O00011111 Then
O01011001 = I01100011("O00000001")
Else
O01011001 = I01100011("O00000000")
End If
'..........................
O00011110 = I01100011("O00000000")
Call I10011000
Call I11100000


End Sub
Sub I10011000()
Dim O00000111, O10111111, O11000100 As Variant
O10111111 = Sheets("S10001000").Cells(I01100011("O00000100"), I01100011("O00001001")).Value
O11000100 = Sheets("S10001000").Cells(I01100011("O00000001"), I01100011("O00000001")).Value
'..........................
O00000111 = Mid(O10111111, I01100011("O00000111"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001100"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00001010"), I01100011("O00000001"))
O00000111 = O00000111 & Mid(O10111111, I01100011("O00000100"), I01100011("O00000001"))
If O00000111 = Mid(O11000100, I01100011("O00001101"), I01100011("O00000100")) Then
O00011110 = I01100011("O00000001")
Else
O00011110 = I01100011("O00000000")
End If

End Sub
Sub I11100000()
If O01011001 = I01100011("O00000001") And O00011110 = I01100011("O00000001") Then

    Worksheets("S10001000").Range("A3").Offset(I01100011("O00000001") + Worksheets("S10001000").Cells(I01100011("O00001001"), I01100011("O00000100")).Value, 0).Value = Worksheets("S10001000").Cells(I01100011("O00000001"), I01100011("O00000001")).Value


    Worksheets("S01111111").Activate
    Worksheets("S01111111").Visible = True
    Worksheets("S01111111").Activate
    Worksheets("S10001000").Visible = xlVeryHidden
    MsgBox "DANG KY THANH CONG"
'    text = "" & ChrW$(272) & ChrW$(258) & "NG K" & ChrW$(221) & " TH" & ChrW$(192) & "NH C" & ChrW$(212) & "NG!"
'    MsgBoxUni text

    Sheets("S10001000").Cells(I01100011("O00000100"), I01100011("O00001001")).Value = ""
    O10000010 = I01100011("O00000001")
    Sheets("S10001000").Cells(I01100011("O00000100"), I01100011("O00001101")).Value = ""
    If Sheets("S00100111").Cells(I01100011("O00000100"), I01100011("O00001101")).Value = "" Then
    Sheets("S00100111").Cells(I01100011("O00000100"), I01100011("O00001101")).Value = I01100011("O00000001")
    Else
    Sheets("S00100111").Cells(I01100011("O00000100"), I01100011("O00001101")).Value = Sheets("S00100111").Cells(I01100011("O00000100"), I01100011("O00001101")).Value + I01100011("O00000001")
    End If
Else
    MsgBox " SAI MA XAC NHAN,NHAP LAI"
'    text = "SAI M" & ChrW$(195) & " X" & ChrW$(193) & "C NH" & ChrW$(7852) & "N! VUI L" & ChrW$(210) & "NG NH" & ChrW$(7852) & "P L" & ChrW$(7840) & "I"
'    MsgBoxUni text

    O10000010 = I01100011("O00000000")
End If
End Sub
Bạn chịu khó ngồi find và replace O100000... Là hiểu thôi
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom