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

  

时间: 2024-11-05 18:38:01

2017-08-22校验的相关文章

2017/08/22 工作日志

今日正式开始制作机构.科室选择页面的样式. 最明显的难点就是页面里的滚动,最初使用了H-ui里的滚动样式,但是在里面套Repeater控件时会出现问题,并且,它的翻页是JavaScript脚本,同一页中出现两个以上时会同时启动,这一点不太符合要求,我就另找了一个滚动脚本cxScroll,网址在这http://code.ciaoca.com/jquery/cxScroll/,没有前面所说的两个问题,基本功能一切正常. 但是我还是没能解决数据超出时自动换行的问题,经理让我去看看栅格化系统.简单来说B

【读书笔记】技术每天一点点--2017.08月

本文地址:http://www.cnblogs.com/aiweixiao/p/7451352.html 本文提纲: 概述 每天进展 1.[遗留问题] 1.1)[问题] 问题列表 1.2)[todo] todo 2.[每天进展] 2.1)[2017.08.30] [运维]<京东应用运维智能化演进实战>(文件列表有): --部署,变更与发布维护 --JDOS系统,对代码镜像在开发,测试,预发布,线上环境之间流转 --交付:向开发交付充足的资源,向业务方交付稳定的系统(响尾蛇系统),向运维交互可维

【第三组】冲刺会议 2017.7.22

冲刺会议 日期:2017.7.22 开发小组:Geomestry 冲刺经理:程立智 成员: 程立智 李明伦 郑昊 蔡镇泽 温志成 汪涵 成员:程立智 完成工作:完成一键还原 所遇问题: 全屏设置有bug 下一步工作:完善选关界面 成员:李明伦 完成工作:修改关卡类 所遇问题:无 下一步工作:实例化关卡类 成员:郑昊 完成工作:画磁贴,画初始界面 所遇问题:无法判断用户分辨率的缩放 下一步工作:继续实现UI大小自适应 成员:蔡镇泽 完成工作: 直线功能的实现 所遇问题: 直线无法拖动画出 下一步工

2017/08/20 工作日志

最近加班和琐事好多,差点断了习惯,今日解决了一大堆,不过还有不少,但感觉已经好很多了,日常以后就不写在这边了,还是以贴技术部分的参考为主. 2017/08/09 从这一天开始被卡在ZTree的地区树上好几天,几乎没有进展,思维非常混乱.记录的东西有这几点: 1.类+问号:说明这是可以为null的类型. 2.使用项目引用会自动生成抽取,使用方法是"右键项目-属性页",用w3wp这个进程调试也与这个有关. 2017/08/11 一直没能解决地区树的问题,转到了改其他后台,做了组织机构的添加

2014/08/22 – SVG

一.项目功能需求:将 HTML 中 span 元素集合映射成 SVG 格式文件. 参数: span 的绝对定位坐标和 transform 的集合,贝塞尔曲线的锚点绝对定位坐标和控制点绝对定位坐标(根据曲线路径绘制 span ),span 集合父容器的宽度和高度. 输出: svg 的字符串形式. 二.知识点:由于涉及到 css 的 transform 样式,所以会用 Matrix 的相关理论知识. 1. 沿着路径变化的文字: svg 中提供了 <textPath> 元素来产生文字沿着某条事先定义

2017.12.22 2周5次课

2017.12.22 二周第五次课 2.23/2.24/2.25 find命令 2.26 文件名后缀 2.23/2.24/2.25 find命令 1.学会使用快捷键 1)ctrl+C:结束(终止)当前命令.如果你输人了一大串字符,但不想运行,可以按ctrl+C组合键,此时光标将跳入下一行,而在刚刚的光标处会留下一个^C的标记. 2)Tab:实现自动补全功能.这个键比较重要,使用频率也很高.当你输人命令.文件或目录的前几个字符时,它会自动帮你补全. 3)ctrl+D:退出当前终端.同样,你也可以输

2017/08/21 工作日志

今天先战略放弃了下拉列表的问题,但是后来在园子得到了一个答案,不过忘记去试验了,在家也无法测试,明天试着解决一下. 上午先把机构代码和地区代码的取值显示改了一下,然后将原来只在一个iframe里的弹框扩大到完整的页面,原理是把参照目标设为父窗口,这个之前也猜到了. 接着在改表头颜色的问题上耽误了一段时间.这里的问题是如果通过GridView自动生成数据,就不会有thead,这样就不能单独设置样式,解决的手段有几种,这里有篇帖子http://www.cnblogs.com/JavCof/archi

[题解]LCA练习+部分算法复习 2017.1.22

第一题就LCA即可.不过推荐用Tarjan(最快,常数很小).然后Tarjan的时候顺便就出一个dist[i],表示i节点到根节点的距离.求出了LCA,那么两点间的距离就为dist[u] + dist[v] - 2 * dist[lca]. Code 1 #include<iostream> 2 #include<sstream> 3 #include<cstdio> 4 #include<cmath> 5 #include<cstdlib> 6

2017/1/22

机器人搬重物 (robot.cpp/c/pas) 机器人移动学会(RMI)现在正尝试用机器人搬运物品.机器人的形状是一个直径1.6 米的球.在试验阶段,机器人被用于在一个储藏室中搬运货物.储藏室是一个N*M 的网格, 有些格子为不可移动的障碍.机器人的中心总是在格点上,当然,机器人必须在最短的时间 内把物品搬运到指定的地方.机器人接受的指令有:先前移动1 步(Creep):向前移动2 步(Walk ):向前移动3 步(Run):向左转(Left):向右转(Right).每个指令所需要的时 间为1

2017.09.22

刚刚下课,无心学习.想随便写点东西--今天,下雨了,不知道22年前的今天是否也在下雨呢?不过一场秋雨一场寒倒是真的,下去洗完澡去上课,湿漉漉的马路,湿漉漉的我,感觉风至吹头皮--幸好拿了伞.今天就吃了一顿饭(没有吃面条有点遗憾),不过我有许愿啊,虽然不知道会不会实现... 上课YQ老师一直举例子,我就莫名想起上通信原理的那些日子,W老师也是这样,我也最愿意上他的课了,可是现在喜欢的课没有了,连熟悉的老师面庞也并不能看到了.上个星期回了一次学校,恰巧碰见所有老师在开会,我一进去,那感觉就像嫁出去的