上一篇中,已经详细介绍了 链接笔记的定义 。本文对链接笔记的相关注意事项进行进一步总结,并分析链接笔记与普通的插入链接的区别。 1.几点注意事项 一、停靠状态下,手动键入和复制......
2021-06-25 290 OneNote,链接,笔记,如何,产生,与,插入,的,区别,
在讨论onenote的内置对象的ID属性之前,有必要先了解一个基础概念——GUID,全局唯一标识符。
COM,全称是ComponentObjectModel,即组件对象模型。COM是微软为提高软件开发效率而开发出的一种软件开发新技术。OLE、ActiveX及DirectX等都是基于COM建立起来的。
在COM规范中,客户程序不会直接访问COM组件,而是通过一个全局标识符进行对象的创建和初始化工作。在规范设计之初,设计人员需要考虑的问题是:如何定义全局标识符,才能确保其唯一性呢?通过GUID。GUID广泛应用于微软的产品中,例如,而微软系统的注册表、接口标识、数据库等对象中,随处可见GUID。
1.IP地址是如何保证唯一性的?
设计人员最先考虑的是IP地址的实现方式。
在TCP/IP网络协议中,用IP地址来标识每一台计算机,这种地址具有唯一性,这是互联网实现正常通信的基本前提。IP地址是一个32位的二进制数。为了确保唯一性,IP地址由权威机构InternetNIC在全球范围内进行统一分配。
而对于COM组件的开发和使用,显然不可能专门弄个管理机构来分配标识符,如果是那样就毫无开发效率可言了。于是微软采用了另一种方式:发明一种算法,每次都能产生全球唯一的标识符。
2.GUID的产生
没有管理机构,又该如何保证标识符的唯一性?COM规范采用128位的全局唯一标识符(即GUID,GloballyUniqueIdentifier),这是一个由特殊算法产生的随机数,不需要专门的管理机构。
既然是随机数,那就不可能绝对保证唯一性,但GUID重复的概率是极低的。《COM原理与应用》一书中指出,“从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。”
GUID的随机性可以从两方面得到保证:1.空间,对联网机器,取网络适配器的地址值,未联网机器则用其他算法产生;2.时间,同一机器在不同时间产生的标识符自然是不相同的。因此,在实际使用时,根本无需担心会产生重复的GUID。
3.GUID的格式
GUID的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”(32个x),其中每个x是0-F范围内的一个16进制数字。一个16进制是4个二进制,所以GUID是一个二进制长度为128位的数字标识符。
例如,F3786832-BC35-45D6-97A4-98B7F4A025F6,即为一个有效的GUID值。
标签: OneNote COM 组件 对象 模型 与 GUID- 全局 唯一
相关文章
上一篇中,已经详细介绍了 链接笔记的定义 。本文对链接笔记的相关注意事项进行进一步总结,并分析链接笔记与普通的插入链接的区别。 1.几点注意事项 一、停靠状态下,手动键入和复制......
2021-06-25 290 OneNote,链接,笔记,如何,产生,与,插入,的,区别,
因为我亲爱的小伙伴们,OneNote也是存在版本之分的。 且这个版本的差异普遍感觉弄不清。 这就直接导致我知乎上那篇原本平平无奇的回答变成了一些小伙伴很是羡慕的经典范式。 其实,每次......
2021-06-25 713 OneNote,版本,之分,傻傻分,不清楚,因,为我,
珍宝表格GemTableforOneNote主要是给OneNote提供合并单元格的功能。以弥补OneNote原生表格无法合并单元格的遗憾。 下面我们使用珍宝表格,并应用合并单元格来演示建立个简单的个人简历。 珍宝表......
2021-06-25 728 如,何在,OneNote,里,使用,珍宝,表格,应用,合并,
苹果版珍宝菜单 Gem Menu for Mac OneNote,提供有类似 Word 的导航窗格,它罗列出当前 OneNote 页面的所有的内容标题。 同时,按标题样式 1,2,3,4,5,6 相对应进行缩进区别。 珍宝菜单的导航窗格......
2021-06-25 976 如,何在,OneNote,中,使用,导航,窗格,来,快速,
我们在 OneNote 中编辑过表格后, 会发现我们表格里的列宽度都不一样长了. 如果想让它们一样长, 我们就不得不手动去调整, 使它们看起来一样长. OneNote Gem 现提供了一个功能 分布列, 先选中一个......
2021-06-25 83 OneNote,OneNote平均分布表格里的列