CN110489085A - 一种word内容控件扩展存储数据的方法 - Google Patents
一种word内容控件扩展存储数据的方法 Download PDFInfo
- Publication number
- CN110489085A CN110489085A CN201910131024.3A CN201910131024A CN110489085A CN 110489085 A CN110489085 A CN 110489085A CN 201910131024 A CN201910131024 A CN 201910131024A CN 110489085 A CN110489085 A CN 110489085A
- Authority
- CN
- China
- Prior art keywords
- storage
- word
- content control
- blocks
- distribution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 11
- 230000006870 function Effects 0.000 claims abstract description 16
- 230000007246 mechanism Effects 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 239000000203 mixture Substances 0.000 claims description 3
- 238000004064 recycling Methods 0.000 claims description 3
- 230000007812 deficiency Effects 0.000 description 2
- 238000000151 deposition Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明公开了一种WORD内容控件扩展存储数据的方法。本发明将内容控件的有限属性指针化,与我们扩展开发的Word文档内部的存储管理器(突破256字符的限制)结合,指向记录管理器分配的存储信息,需要提取、删除、更新时,进行提取后解析再操作。极大扩展了内容控件的存储限制,使插件的多种功能都可以使用内容控件而能完整实现到位。
Description
技术领域
本发明涉及计算机应用技术领域,具体为一种WORD内容控件扩展存储数据的方法。
背景技术
在开发WORD插件过程中,许多功能如自动计算功能、样式锁定功能、表单填报等需要界定对象,并且要符合用户使用WORD的编辑习惯,不能干扰用户。
因此,根据WORD提供的对象选型对比,只有内容控件Word.ContentControl是唯一的选择。满足不干扰用户,满足WORD的自由编写的原则,而且能够存储一定的数据从而使插件可以控制其行为和内容成为可能。
Word的内容控件是Word本身提供的控件,没有专门对外部提供可以扩展的属性和存储机制。我们最终研究发现某一属性可以初步实现,但其属性的存储空间非常有限(不是指其编辑时的内容而是插件功能要使用的控制信息存储),对于我们的功能应用要求的数据存储量无法适应。
同时,Word中内部也没有任何存储管理器可供使用,我们使用Word的某些开放特性而开发了WORD文档内部的存储管理器,最终进行了创新扩展,使内容控件可以支持大量数据的存储,成为所有功能的重要基础支撑。
发明内容
针对现有技术的不足,本发明提供了一种WORD内容控件扩展存储数据的方法,它极大扩展了内容控件的存储限制,使插件的多种功能都可以使用内容控件而能完整实现到位,以克服现有技术的不足。
为实现以上目的,本发明通过以下技术方案予以实现:WORD内容控件扩展存储数据的方法,包括如下步骤:
1)使用微软VSTO技术开发WORD插件;
2)使用WORD的内容控件Word.ContentControl界定要计算的对象内容,用于不同功能场景下,使用对象内容的名称进行界定;
3)使用内容控件的其中属性PlaceholderText保存用于存储在存储管理区的信息;
4)需要访问内容控件控制信息时,则读取此属性并解析,再到WORD文档内部的存储管理器进行数据扩展的提取和解析,从而实现相应的功能。
所述的WORD的版本为2007以上。
1)使用微软VSTO技术开发WORD插件;
2)使用Word的Document.CustomDocumentProperties为基础数据存放处,存储类型为String类型,每个String存储最大限制是255字符;
3)Document.CustomDocumentProperties只对String类型的Name进行保存和提取,不能区分哪些Name可用或不可用的,也没有对大块数据的存储分配支持与回收等机制,因此必须设计存储管理器,以实现空间的分配和回收、大块数据的支持功能;
4)存储管理器的工作:
a)当外部申请分配时,申请类别名称和要存储内容及内容长度,存储管理器则计算需要多少个空闲块,然后查询此类别是否有可用的空闲块以及是否足够,若有足够的空闲块,则顺序提取空闲块的序号,返回给外部申请者;
b)若没有足够的空闲块,则存储管理器分配固定数量的空闲块,空闲块的序号从未使用的最大值开始赋值,然后从空闲块列表头部顺序分配出所需的空闲块序号序列;
c)存储管理器将要存储的数据进行分块,然后按分配的空闲块序列组成“类别”+空闲块序号的变量名称,在Document.CustomDocumentProperties中建立此变量,并且存入分块的数据;分配与存储完成;
d)外部申请者记录分配的类别和空闲块序列;当外部使用者不需要存储空间时,则向存储管理器传递释放操作以及记录的类别、分配的空闲块序列,存储管理器则将记录的类别和空闲块序列组合成变量名称,到Document.CustomDocumentProperties中删除此变量和释放其空间,然后将空闲块序号放到此类别的空闲块列表的尾部,则释放完成。
有益效果
与现有技术相比,在WORD中开发插件中,使用内容控件唯一可以操作的属性PlaceholderText可以存储有限数据(256字符),本发明将内容控件的有限属性指针化,与我们扩展开发的Word文档内部的存储管理器(突破256字符的限制)结合,指向记录管理器分配的存储信息,需要提取、删除、更新时,进行提取后解析再操作。极大扩展了内容控件的存储限制,使插件的多种功能都可以使用内容控件而能完整实现到位。
附图说明
图1为本发明的实施例的内容控件扩展存储关系图。
具体实施方式
本发明的实施例:WORD内容控件扩展存储数据的方法,包括如下步骤:
1)使用微软VSTO技术开发WORD插件;
2)使用WORD的内容控件Word.ContentControl界定要计算的对象内容,用于不同功能场景下,使用对象内容的名称进行界定;
3)使用内容控件的其中属性PlaceholderText保存用于存储在存储管理区的信息;
4)需要访问内容控件控制信息时,则读取此属性并解析,再到WORD文档内部的存储管理器进行数据扩展的提取和解析,从而实现相应的功能。
所述的WORD的版本为2007以上。
1)使用微软VSTO技术开发WORD插件;
2)使用Word的Document.CustomDocumentProperties为基础数据存放处,存储类型为String类型,每个String存储最大限制是255字符;
3)Document.CustomDocumentProperties只对String类型的Name进行保存和提取,不能区分哪些Name可用或不可用的,也没有对大块数据的存储分配支持与回收等机制,因此必须设计存储管理器,以实现空间的分配和回收、大块数据的支持功能;
4)存储管理器的工作:
a)当外部申请分配时,申请类别名称和要存储内容及内容长度,存储管理器则计算需要多少个空闲块,然后查询此类别是否有可用的空闲块以及是否足够,若有足够的空闲块,则顺序提取空闲块的序号,返回给外部申请者;
b)若没有足够的空闲块,则存储管理器分配固定数量的空闲块,空闲块的序号从未使用的最大值开始赋值,然后从空闲块列表头部顺序分配出所需的空闲块序号序列;
c)存储管理器将要存储的数据进行分块,然后按分配的空闲块序列组成“类别”+空闲块序号的变量名称,在Document.CustomDocumentProperties中建立此变量,并且存入分块的数据;分配与存储完成;
d)外部申请者记录分配的类别和空闲块序列;当外部使用者不需要存储空间时,则向存储管理器传递释放操作以及记录的类别、分配的空闲块序列,存储管理器则将记录的类别和空闲块序列组合成变量名称,到Document.CustomDocumentProperties中删除此变量和释放其空间,然后将空闲块序号放到此类别的空闲块列表的尾部,则释放完成。
上述说明示出并描述了发明的若干优选实施例,但如前所述,应当理解发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离发明的精神和范围,则都应在发明所附权利要求的保护范围内。
Claims (3)
1.一种WORD内容控件扩展存储数据的方法,其特征在于,包括如下步骤:
1)使用微软VSTO技术开发WORD插件;
2)使用WORD的内容控件Word.ContentControl界定要计算的对象内容,用于不同功能场景下,使用对象内容的名称进行界定;
3)使用内容控件的其中属性PlaceholderText保存用于存储在存储管理区的信息;
4)需要访问内容控件控制信息时,则读取此属性并解析,再到WORD文档内部的存储管理器进行数据扩展的提取和解析,从而实现相应的功能。
2.根据权利要求1所述的WORD内容控件扩展存储数据的方法,其特征在于:所述的WORD的版本为2007以上。
3.根据权利要求1所述的WORD内容控件扩展存储数据的方法,其特征在于:所述的WORD文档内部的存储管理器是指:
1)使用微软VSTO技术开发WORD插件;
2)使用Word的Document.CustomDocumentProperties为基础数据存放处,存储类型为String类型,每个String存储最大限制是255字符;
3)Document.CustomDocumentProperties只对String类型的Name进行保存和提取,不能区分哪些Name可用或不可用的,也没有对大块数据的存储分配支持与回收等机制,因此必须设计存储管理器,以实现空间的分配和回收、大块数据的支持功能;
4)存储管理器的工作:
a)当外部申请分配时,申请类别名称和要存储内容及内容长度,存储管理器则计算需要多少个空闲块,然后查询此类别是否有可用的空闲块以及是否足够,若有足够的空闲块,则顺序提取空闲块的序号,返回给外部申请者;
b)若没有足够的空闲块,则存储管理器分配固定数量的空闲块,空闲块的序号从未使用的最大值开始赋值,然后从空闲块列表头部顺序分配出所需的空闲块序号序列;
c)存储管理器将要存储的数据进行分块,然后按分配的空闲块序列组成“类别”+空闲块序号的变量名称,在Document.CustomDocumentProperties中建立此变量,并且存入分块的数据;分配与存储完成;
d)外部申请者记录分配的类别和空闲块序列;当外部使用者不需要存储空间时,则向存储管理器传递释放操作以及记录的类别、分配的空闲块序列,存储管理器则将记录的类别和空闲块序列组合成变量名称,到Document.CustomDocumentProperties中删除此变量和释放其空间,然后将空闲块序号放到此类别的空闲块列表的尾部,则释放完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910131024.3A CN110489085A (zh) | 2019-02-21 | 2019-02-21 | 一种word内容控件扩展存储数据的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910131024.3A CN110489085A (zh) | 2019-02-21 | 2019-02-21 | 一种word内容控件扩展存储数据的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110489085A true CN110489085A (zh) | 2019-11-22 |
Family
ID=68545754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910131024.3A Pending CN110489085A (zh) | 2019-02-21 | 2019-02-21 | 一种word内容控件扩展存储数据的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110489085A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6606317B1 (en) * | 1999-09-09 | 2003-08-12 | Harris Corporation | Dual key controlled content addressable memory for accessing packet switch data buffer for multicasting data packets |
CN1855881A (zh) * | 2005-04-28 | 2006-11-01 | 华为技术有限公司 | 动态共享存储器存储空间的实现方法 |
CN101263477A (zh) * | 2005-09-09 | 2008-09-10 | 微软公司 | 用于文档的xml数据存储的可编程性 |
CN102722519A (zh) * | 2011-03-28 | 2012-10-10 | 微软公司 | 使用增强的内容控件来创建结构化文档模板的技术 |
CN104462147A (zh) * | 2013-09-25 | 2015-03-25 | 天津书生投资有限公司 | 一种文档的存储方法 |
CN107340946A (zh) * | 2017-06-16 | 2017-11-10 | 贵州广思信息网络有限公司 | 一种大文档下统一管理内容控件的方法 |
CN108549621A (zh) * | 2018-03-19 | 2018-09-18 | 华迪计算机集团有限公司 | 一种基于bs架构无缝集成电子文档的方法及系统 |
-
2019
- 2019-02-21 CN CN201910131024.3A patent/CN110489085A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6606317B1 (en) * | 1999-09-09 | 2003-08-12 | Harris Corporation | Dual key controlled content addressable memory for accessing packet switch data buffer for multicasting data packets |
CN1855881A (zh) * | 2005-04-28 | 2006-11-01 | 华为技术有限公司 | 动态共享存储器存储空间的实现方法 |
CN101263477A (zh) * | 2005-09-09 | 2008-09-10 | 微软公司 | 用于文档的xml数据存储的可编程性 |
CN102722519A (zh) * | 2011-03-28 | 2012-10-10 | 微软公司 | 使用增强的内容控件来创建结构化文档模板的技术 |
CN104462147A (zh) * | 2013-09-25 | 2015-03-25 | 天津书生投资有限公司 | 一种文档的存储方法 |
CN107340946A (zh) * | 2017-06-16 | 2017-11-10 | 贵州广思信息网络有限公司 | 一种大文档下统一管理内容控件的方法 |
CN108549621A (zh) * | 2018-03-19 | 2018-09-18 | 华迪计算机集团有限公司 | 一种基于bs架构无缝集成电子文档的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1517885B (zh) | 关于利用原子性更新的中央高速缓冲存储器的方法和系统 | |
US8495109B2 (en) | Downloading file reception process | |
JP4681720B2 (ja) | 電子文書の管理方法及び管理システム | |
CN109492012B (zh) | 一种数据实时统计和检索的方法、装置及存储介质 | |
US6411974B1 (en) | Method to collate and extract desired contents from heterogeneous text-data streams | |
CN1331059C (zh) | 管理文件系统滤波器驱动器的文件名的系统和方法 | |
KR101224680B1 (ko) | 데이터베이스 내부에 표현된 파일 시스템 | |
CN101292242B (zh) | 管理存储在仓库内的资源之间的关系 | |
US7752226B1 (en) | Reverse pathname lookup by inode identifier | |
US20060101092A1 (en) | Computer system and method for managing file versions | |
CN101640587B (zh) | 数据同步方法及装置 | |
US6809748B2 (en) | Method and apparatus for setting a limitation of copy to generated data in a system having a plurality of information processing apparatuses connected to a network | |
CN101178726B (zh) | 数据文件解归档的方法和系统 | |
CN1996302A (zh) | 为联网的媒体服务器中所存储的内容管理书签信息的方法和装置 | |
US7716189B1 (en) | Method for preserving relationships/dependencies between data in a file system | |
EP1899868A2 (en) | Query based synchronization | |
CN1326008C (zh) | 许可创建装置、许可创建方法和计算机程序 | |
US7603387B2 (en) | Techniques to manage media files | |
CN112257005B (zh) | 一种表单组件生成方法及装置 | |
CN101374307B (zh) | 一种移动设备中更新数字内容信息的方法及装置 | |
CN111045994B (zh) | 一种基于kv数据库的文件分类检索方法及系统 | |
CN110489085A (zh) | 一种word内容控件扩展存储数据的方法 | |
CN100407204C (zh) | 一种标注计算机资源的方法及其系统 | |
US7100126B2 (en) | Electrical form design and management method, and recording medium | |
JP4249605B2 (ja) | クライアントサーバシステムおよびキャッシュ制御方法ならびにコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191122 |