zoukankan      html  css  js  c++  java
  • 2017-08-22校验

    Const ADDIN_NAME As String = "AddInFunction"
    Const SETTING_ITEM As String = "AddInSetting"
    Const KEY_NAME As String = "RegisterCpu"
    Sub TestRegister()
        Debug.Print IsRegistered
    End Sub
    Public Function IsRegistered() As Boolean
        Dim CpuID As String
        Dim RegisterInfo As String
        Dim Rng As Range, RngInfo As String
        RegisterInfo = Get_Settings
        If RegisterInfo <> "" Then
            If HasRegisterSheet Then
                Set Rng = ThisWorkbook.Worksheets("Register").Range("IV65536")
                RngInfo = Rng.Text
                If Len(RngInfo) > 0 Then
                    If RngInfo = RegisterInfo Then
                        '校验成功
                        IsRegistered = True
                    Else
                        IsRegistered = False
                    End If
                Else
                    IsRegistered = False
                End If
            Else
                IsRegistered = False
            End If
        Else
            If HasRegisterSheet Then
                Set Rng = ThisWorkbook.Worksheets("Register").Range("IV65536")
                RngInfo = Rng.Text
                If Len(RngInfo) > 0 Then
                    IsRegistered = False
                Else
                    '首次注册,写入注册表
                    CpuID = Get_CpuId
                    Rng.Value = "'" & CpuID
                    Save_Settings CpuID
                    IsRegistered = True
                End If
            Else
                IsRegistered = False
            End If
        End If
        Set Rng = Nothing
    End Function
    Private Function Get_Settings() As String
        Get_Settings = GetSetting(ADDIN_NAME, SETTING_ITEM, KEY_NAME)
    End Function
    Private Function Save_Settings(ByVal RegInfo As String)
        SaveSetting ADDIN_NAME, SETTING_ITEM, KEY_NAME, RegInfo
    End Function
    Private Function Get_CpuId() As String
        Dim CpuSet
        Dim OneCpu
        Set CpuSet = GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("Win32_Processor")
        For Each OneCpu In CpuSet
            Get_CpuId = OneCpu.ProcessorId
        Next
    End Function
    Private Function HasRegisterSheet(Optional SheetName As String = "Register") As Boolean
        Dim HasRegSht As Boolean
        Dim Sht As Worksheet
        HasRegisterSheet = False
        For Each Sht In ThisWorkbook.Worksheets
            If Sht.Name = SheetName Then
                HasRegisterSheet = True
                Exit For
            End If
        Next Sht
    End Function
    

      

  • 相关阅读:
    在RedHat As5 下开放默认的防火墙指定端口
    今看假钞横流有感,给手机开发商建议
    win2003系统自动登录两法
    Adobe 最新的几个连接Dreamweaver cs4
    eXtremeComponents安装配置
    nvidiadocker
    你看这颗咖啡豆。”她纤细的手指拈起一枚褐色的豆子
    好郁闷啊
    超强:终于知道移动比联通牛的原因了!
    人人
  • 原文地址:https://www.cnblogs.com/nextseven/p/7411475.html
Copyright © 2011-2022 走看看