CN100375016C - 用于管理应用程序中文件复制的方法 - Google Patents

用于管理应用程序中文件复制的方法 Download PDF

Info

Publication number
CN100375016C
CN100375016C CNB2004100082188A CN200410008218A CN100375016C CN 100375016 C CN100375016 C CN 100375016C CN B2004100082188 A CNB2004100082188 A CN B2004100082188A CN 200410008218 A CN200410008218 A CN 200410008218A CN 100375016 C CN100375016 C CN 100375016C
Authority
CN
China
Prior art keywords
version
versions
user
software application
electronic document
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.)
Expired - Fee Related
Application number
CNB2004100082188A
Other languages
English (en)
Other versions
CN1525315A (zh
Inventor
N·艾德尔斯坦恩
H·沙利巴
H·刘
S·J·雷森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1525315A publication Critical patent/CN1525315A/zh
Application granted granted Critical
Publication of CN100375016C publication Critical patent/CN100375016C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B15/00Layered products comprising a layer of metal
    • B32B15/20Layered products comprising a layer of metal comprising aluminium or copper
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B15/00Layered products comprising a layer of metal
    • B32B15/04Layered products comprising a layer of metal comprising metal as the main or only constituent of a layer, which is next to another layer of the same or of a different material
    • B32B15/08Layered products comprising a layer of metal comprising metal as the main or only constituent of a layer, which is next to another layer of the same or of a different material of synthetic resin
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B15/00Layered products comprising a layer of metal
    • B32B15/14Layered products comprising a layer of metal next to a fibrous or filamentary layer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B2307/00Properties of the layers or laminate
    • B32B2307/30Properties of the layers or laminate having particular thermal properties
    • B32B2307/304Insulating
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B2307/00Properties of the layers or laminate
    • B32B2307/50Properties of the layers or laminate having particular mechanical properties
    • B32B2307/582Tearability
    • B32B2307/5825Tear resistant
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B2437/00Clothing
    • B32B2437/04Caps, helmets
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99954Version management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

公开了一种用于管理电子文档的第一和第二版本的方法。该方法中,识别电子文档的第一和第二版本,并且启动同步事件。应用程序接口访问所述第一和第二版本,比较与各版本相关的信息,产生结果并把结果报告给第一软件应用程序。第二软件应用程序按照第二软件应用程序的特性而产生用户界面,其中电子文档与第二软件应用程序相关联,且用户界面被显示在显示设备上。

Description

用于管理应用程序中文件复制的方法
相关申请
本专利申请涉及一般指定的待批美国专利申请号10/376,873,于2003年2月28日提交,代理摘要号MSFT-1586,题为“Method and System for ManagingMultiple File States For Replicated Files”。
技术领域
本发明涉及一种用于管理电子文档的多种版本的方法,尤其涉及在同步事件期间使用有关应用程序功能来协调文件版本的方法。
背景技术
网络化计算机环境中的通常实践是使一个计算机用户与网络上的另一用户合作一电子文档。这种网络可以是局域网(LAN)、广域网(WAN)、因特网等等。在这种合作中,每个用户可以通过使用软件应用程序来创建和编辑电子文档,软件应用程序有:普通应用软件、或者专门为合作对象的文件类型设计的软件、等等。
通过把电子文档的主版本维持在将在文件上合作的所有用户可访问的位置处,而使合作变得可能。在传统的网络化计算机环境中,可能存在一个服务器计算机以及一个或多个用户计算机。服务器维持各个用户计算机之间的通信链路,并且可以被各个用户计算机访问,因此可以存储并控制由用户合作的文件的主版本。当合作一电子文档时,用户首先访问服务器上文件的主版本,然后把该文件复制到用户的计算机。然后,用户可以应用程序允许用户可用的任何方式来改变该文件,从而作用于该文件。例如,如果应用程序是一文字处理器、电子表格、数据库和/或其他,应用程序可以提供用于执行像编辑、复制、删除等任务的装置。在任何改动完成时,如果用户希望保留对文件的这些改动,那么用户就可以保存对用户计算机上存储的文件版本的变化。在其他系统中,比如不存在服务器计算机的系统,主版本可以被存储在用户计算机上。
为了通过服务器与其他用户合作,有变化版本存储在用户计算机上的用户必须把计算机上的文件版本与服务器上的文件主版本同步。同步同一个电子文件的多个版本的最简单的形式,就是确保一旦被同步,所有的版本就是相同的。这样,执行同步的用户会使参与合作的其他用户访问最近改动的文件。按照惯例,同步由一同步工具(utility)来执行。同步工具一般与应用程序分开,并且在许多情况下是用户计算机的操作系统的一部分。常规的同步工具在预定的时间、或者根据操作系统的请求而执行同步。
在常规的同步中,同步工具会使用与工具能理解的拷贝有关的任何信息,把用户文件版本与文件的主版本相比较。一般而言,这种信息限于每种版本的上一次更新的日期和/或时间。如果日期和/或时间是相同的,同步工具就确定两种版本是相同的,因此是同步的,并且不需要进一步的行为。然而,如果日期和/或时间之间存在差异,则同步工具向与驱动同步事件的计算机相关联的用户提供一用户界面。用户界面通常向用户提供一简要通知说明存在差异,每个文件版本的这种上一次更新的日期和/或时间,以及对来自用户的指令的请求,所述指令关于用户希望保持文件的哪个拷贝。如果用户选择保持用户版本,同步工具就用用户版本覆盖主版本,从而使用户版本成为服务器上的主版本。如果用户希望保持主版本,则不再采取任何动作,或者用主版本覆盖用户版本。在某些用户界面中,给予用户一个选项来放弃同步,而不是选择哪种版本成为主版本。
上述常规的同步具有显著的缺点。由于常规的同步工具限制了关于电子文档的功能,因此由常规工具所产生的用户界面在提示用户选择动作过程时仅仅向用户给出有限的信息量。因此,这种有限的信息量会使这些用户作出与要采取的动作过程有关的无通知的且可能不正确的判决。例如,第一用户可以改变前面被同步的用户文件版本,然后常规的同步工具在某些点启动一同步事件。当被常规的用户界面通知时,用户可以看见用户版本在主版本以后被更新,因此决定覆盖主版本。然而,常规用户界面给出的信息未通知用户主版本是否在用户开始改变用户版本后保持不变。这导致一种有问题的情况,其中第二用户可以对另一用户版本作出改变,然后在第一用户的同步之前把该用户版本与主版本同步。第一用户的版本比较近——在后面被更新——但是主版本已经经第二用户的改变,该第二用户在第一用户最初从服务器拷贝文件时还不存在。结果,一旦第一用户完成同步,第二用户对主版本的改变就丢失。
上述情况因为常规的同步工具缺乏与文件有关的应用中固有功能的全部范围而造成,因此工具不能在同步事件期间使用该功能。因此,工具只能向用户提供与电子文档的不同版本有关的非常有限的信息量,比如对上述每个文件版本的上一次更新的日期和/或时间。
由常规同步工具的有限功能所造成的另一个缺点是在同步期间缺乏用户可用的多个行为过程。例如,在上述示例中,用户界面仅给出三个选项:用用户拷贝来更新主拷贝、用主拷贝来更新用户拷贝、或者放弃。
常规同步的还有一个缺点源于缺乏这种工具与这种应用程序的集成。例如,如上所述,常规的同步工具是用户或服务器计算机的操作系统的一部分。因此,同步进程以及任何可应用的用户界面通常在应用程序用户体验以外实施。这会在对操作系统不熟悉得用户中引起混淆,同样也会在对应用程序不熟悉的用户中引起混淆。此外,由于缺乏集成,同步可能由同步工具在对于发生这种事件不是最佳的时刻启动。常规同步工具的附加缺点是这种工具不能被用作软件应用程序的组件。例如,通过使用常规方法,计算机编程者不能创建第一软件应用程序来协调电子文档的多种版本,所述第一软件应用程序使用一同步工具,该同步工具能使用对于电子文档适当的第二应用程序。因此,需要一种有效的装置,使用有关软件应用程序功能来解决同步期间文件拷贝间的冲突。
发明内容
考虑到上述内容,本发明提供了把应用程序接口与软件应用程序集成的方法,所述软件应用程序允许应用程序请求并控制文件同步进程,而同时保留在应用程序用户体验中。本发明提供了用于管理电子文档的第一和第二版本的方法。在该方法中,识别电子文档的第一和第二版本,并且用工作在第一计算机上的第一软件应用程序启动同步事件。应用程序接口访问第一和第二版本,比较与各个版本相关联的信息,产生一结果并把该结果报告给第一软件应用程序。第二软件应用程序按照第二软件应用程序的特性而产生一用户界面,其中电子文档与第二软件应用程序相关联,用户界面显示在显示设备上。
本发明还提供了第二软件应用程序,用于产生同步选项并且通过用户界面给出该选项,并且把它显示在显示设备上。第二软件应用程序还可以接收一选项选择,并且相应地同步电子文档的第一和第二版本。本发明还提供了:第一软件应用程序和第二软件应用程序可以是相同的软件应用程序。应用程序可以向用户提供与第一和第二版本有关的任何信息量,用户可以输入任何数量或类型的同步选择。一实施例中,用户可以创建第三版本,第三版本包括第一或第二版本的任何一个、或两者的任何部分或不包含其中的任何部分。应用程序可以在任何时间启动同步,比如在用户请求时。在下面的描述中提出了本发明的附加特性和优点。
附图说明
结合附图可以更好地理解上述发明内容、以及下面的优选实施例的详细描述。为了说明本发明,在图中示出本发明的示例性实施例;然而,本发明不限于这里公开的特定方法和工具。附图中:
图1是示出其中可实现本发明各方面的示例性计算环境的框图;
图2是说明第一计算机、网络和第二计算机之间关系示例的功能图;
图3是示出按照本发明一个实施例的同步进程的流程图;以及
图4是说明按照本发明一个实施例启动同步进程的方法的流程图。
具体实施方式
概述
本发明提供了把应用程序接口与软件应用程序集成的方法,所述软件应用程序允许应用程序请求并控制文件同步进程,而同时保留在应用程序用户体验中。本发明提供了用于管理电子文档的第一和第二版本的方法。在该方法中,识别电子文档的第一和第二版本,并且用工作在第一计算机上的第一软件应用程序启动同步事件,用于把第一计算机上的第一版本与第二版本同步。应用程序接口访问第一和第二版本,比较与第一和第二版本中每一个相关联的信息,并且产生一结果。比较结果被报告给第一软件应用程序。使第二软件应用程序按照第二软件应用程序的特性而产生一用户界面,其中电子文档与第二软件应用程序相关联,用户界面显示在显示设备上。
本发明还提供了第二软件应用程序,用于产生同步选项并且要由用户界面给出该同步选项,并且把同步选项显示在显示设备上。第二软件应用程序还接收一选项选择,并且按照该选项选择同步电子文档的第一和第二版本。本发明还提供了:第一软件应用程序和第二软件应用程序可以是相同的软件应用程序,因此所有的步骤可由单个应用程序来执行。
应用程序可以向用户提供与第一和第二版本有关的任何信息量,用户可以输入任何数量或类型的同步选择。一实施例中,用户可以创建第三版本,第三版本包括第一或第二版本的任何一个、或两者的任何部分或不包含其中的任何部分。应用程序可以在任何时间启动同步,比如在用户请求时。
示例性计算环境
图1说明了可实现本发明的适当的计算系统环境100的一示例。计算系统环境100仅是适当的计算环境的一例并且并非意图限制本发明的使用范围或功能。计算环境100不应被解释为具有与示例性操作环境100中所述的组件的任一或组合有关的从属性或要求。
本发明可与许多其他通用或专用的计算机系统环境或配置一起操作。适用于本发明的公知计算系统、环境和/或配置的示例包括、但不限于:个人计算机、服务器计算机、手提或便携式设备、多处理器系统、基于微处理器的系统、机顶盒、可编程用户电子设备、网络PC、小型计算机、大型计算机、包括任一上述系统的分布式计算环境、及其他。
本发明可以用计算机可执行指令的一般内容来描述,比如由计算机执行的程序模块。一般而言,程序模块包括例程、程序、对象、组件、数据结构等,它们执行特定任务或实现特定的抽象数据类型。本发明还可以实际用于分布式计算环境中,其中由通过通信网络或其他数据传输媒介连接的远程处理设备来执行任务。在分布式计算环境中,程序模块及其他数据可能位于包括存储器存储设备的本地和远程存储媒介中。
参照图1,用于实现本发明的示例性系统包括形式为计算机110的通用计算设备。计算机110的组件可以包括、但不限于:处理单元120、系统存储器130、及把包括系统存储器在内的各种系统组件耦合至处理单元120的系统总线121。系统总线121可能是多种类型总线结构的任一种,包括存储器总线或存储控制器、外围设备总线、及使用任一多种总线结构的本地总线。通过示例但非限制,这种结构包括:工业标准结构(ISA)总线、微通道结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准联盟(VESA)本地总线、及外围组件互连(PCI)总线(也称为Mezzanine总线)。
计算机110一般包括多种计算机可读媒介。计算机可读媒介可以是能由计算机110访问的任何可用媒介并且包括易失性和非易失性的媒介、可移动和不可移动媒介。通过示例但非限制,计算机可读媒介可能包括计算机存储媒介和通信媒介。计算机存储媒介包括易失性和非易失性的、可移动和不可移动的媒介,它们以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据这样的信息的任意方法或技术来实现。计算机存储媒介包括、但不限于:RAM、ROM、EEPROM、闪存或其他存储器技术、CDROM、数字化通用光盘(DVD)或其他光盘存储器、磁带盒、磁带、磁盘存储器或其他磁性存储设备、或用于存储期望信息并能由计算机110访问的任何其他媒介。通信媒介一般在诸如载波或其他传输机制这样的已调数据信号中包含计算机可读指令、数据结构、程序模块或其他数据,并且包括任何信息传递媒介。术语“已调数据信号”意指其一个或多个特性以对信号内信息进行编码的方式被设置或被改变的信号。通过示例但非限制,通信媒介包括诸如有线网络或直接线连接这样的有线媒介、以及诸如声音、RF、红外这样的无线媒介及其他无线媒介。上述的任意组合应该包含在计算机可读媒介的范围内。
系统存储器130包括计算机存储媒介,其形式为易失性和/或非易失性的存储器,比如ROM 131和RAM 132。基本输入/输出系统133(BIOS)一般存储在ROM 131内,它包含在例如启动期间帮助在计算机110内的组件间传输信息的基本例程。RAM132一般包含数据和/或程序模块,它们可以被立即访问并且/或者当前由处理单元120在其上操作。通过示例但非限制,图1说明了操作系统134、应用程序135、其他程序模块136和程序数据137。
计算机110还可以包括其他可移动/不可移动的、易失性/非易失性的计算机存储媒介。仅仅通过示例,图1说明了对不可移动、非易失性磁性媒介进行读写的硬盘驱动器140、对可移动、非易失性磁盘152进行读写的磁盘驱动器151、以及对可移动、非易失性光盘156进行读写的光盘驱动器155,比如CD RAM或其他光学媒介。示例性操作环境中可用的其他可移动/不可移动、易失性/非易失性的计算存储媒介包括、但不限于:磁带盒、闪存卡、数字化视频光盘、数字视频磁带、固态RAM、固态ROM、及其他。硬盘驱动器141一般通过如接口140这样的不可移动的存储器接口与系统总线121相连,而磁盘驱动器151和光盘驱动器155一般通过如接口150这样的可移动存储器接口与系统总线121相连。
上面讨论并在图1中说明的驱动器和它们的相关计算机存储媒介为计算机110提供了计算机可读指令、数据结构、程序模块和其他数据的存储。在图1中,例如,说明硬盘驱动器141用于存储操作系统144、应用程序145、其他程序模块146和程序数据147。注意到这些组件或者可与操作系统134、应用程序135、其他程序模块136和程序数据137相同,或者与它们不同。这里为操作系统144、应用程序145、其他程序模块146和程序数据147给出不同数字以说明它们至少是不同的拷贝。用户可以通过诸如键盘162和指示设备161这样的输入设备把命令和信息输入到计算机110中,指示设备161通常称为鼠标、轨迹球或触板。其他输入设备(未示出)可以包括麦克风、游戏杆、游戏板、卫星式转盘、扫描仪及其他。这些和其他输入设备通常通过与系统总线耦合的用户输入接口160而与处理单元120相连,但也可能用其他接口和总线结构连接,比如并行端口、游戏端口或通用串行总线(USB)。监视器191或其他类型的显示设备也通过诸如视频接口190这样的接口与系统总线121相连。除了监视器之外,计算机还可以包括其他外围设备,比如扬声器197和打印机196,它们可以通过输出外设接口190连接。
计算机110可以工作在网络化环境中,该环境使用到诸如远程计算机180这样的一个或多个远程计算机的逻辑连接。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其他公共网络节点,并且一般包括上述相关于计算机110描述的许多或全部元件,尽管图1中仅说明了存储器存储设备181。所述的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但还可以包括其他网络。这种网络环境在办公室、企业范围计算机网络、企业内部网和互联网中是常见的。
当用于LAN网络环境中时,计算机110通过网络接口或适配器170与LAN 171相连。当用于WAN网络环境中时,计算机110一般包括用于在诸如因特网这样的WAN 173上建立通信的调制解调器172或其他装置。调制解调器172可以是内部或外部的,它可以通过用户输入接口160或其他适当机制与系统总线121相连。在网络化环境中,相对计算机110所述的程序模块或其部分可以被存储在远程存储器存储设备中。通过示例但非限制,图1说明了驻留在存储器设备181上的远程应用程序185。可以理解,所示网络连接是示例性的,也可以使用在计算机间建立通信连接的其他装置。
示例性的分布式计算框架或结构
考虑到个人计算和因特网的趋同现象,已经且正在研发各种分布式计算框架。个人和商业用户同样都有用于应用程序和计算设备的无缝可共同操作的和web使能的接口,使计算活动日益变为面向web浏览器或面向网络。
例如,微软公司的.NET平台包括服务器、如基于web的数据存储这样的构件块(building-block)服务、以及可下载的设备软件。一般而言,.NET平台提供了(1)使计算设备的全部范围一起工作并且自动地更新并同步在它们之上的用户信息,(2)通过广泛使用XML而非HTML而允许web站点增加交互性能,(3)联机服务,特征是为了管理诸如电子邮件等各种应用程序或者诸如Office.NET等软件,从中心起始点向用户提供产品和服务的用户化访问和传递,(4)集中的数据存储,这会提高访问信息的效率和容易性,以及信息在用户和设备间的同步,(5)集成诸如电子邮件、传真和电话等各种通信媒介的能力,(6)对于开发商而言,能够创建可重复使用的模块,从而提高了生产率并且降低了编程差错数,以及(7)许多其他的跨平台集成特性。
虽然这里的示例性实施例是结合驻留在计算设备上的软件而描述的,然而本发明的一个或多个部分也可以通过以下来实现:操作系统、API、或者协同处理器和请求对象间的“中间人”对象,以便这些服务通过所有.NET的语言和服务来执行、被支持并且被访问,并且也在其他分布式计算框架中得以执行、支持和访问。
示例性实施例
当把一个电子文档形成为不止一个版本时,按照本发明,应用程序接口可以被配置成允许与文件相关联的软件应用程序来控制同步多个版本的进程。在一个实施例中,应用程序可以自动地启动同步,而在另一个实施例中,应用程序可以根据用户输入而启动同步。在另一实施例中,应用程序向用户给出由应用程序功能所提供的同步选项,并且允许用户选择选项并且用应用程序功能来执行任务。在还有一实施例中,第一应用程序启动同步,而第二应用程序向用户给出同步选项。
现在参照图2,第一计算机210包括与存储设备218进行有效通信的第一处理器220。第一计算机210可以是通用台式机或便携式计算机、工作站、专用计算设备以及/或者其他。类似地,第一处理器220可以是通用计算机处理器、专用处理器、处理器的网络及其他。显示设备230与第一计算机210操作上相关联。显示设备230可以是向用户给出选项及其他的任何装置,例如监视器、扬声器等等。显示设备230与第一计算机210的这种操作管理可以由有线或无线的连接装置作出。虽然图2中示出显示设备230在第一计算机210内,然而显示设备230可以位于与第一处理器220有效通信的任何地方,以包括远程位置或其他。
存储设备218可以是硬盘驱动器、CD-ROM、磁盘、DVD、RAM和/或其他。类似于显示设备230,存储设备218可以位于与第一处理器220有效通信的任何地方。这种情况下的有效通信可以是有线的、无线的、或者两者的组合。存储设备218内包含电子文档的第一版本212。这个第一版本212可以是任何类型的电子文档,比如字处理文档、电子表格、数据库和/或其他。
第一应用程序208和第二应用程序214可以存储在存储设备218中。第一应用程序208和第二应用程序214可以是任何类型的计算机可执行指令,比如字处理器、电子表格、编程的脚本、专用软件或其他。在第一应用程序208和第二应用程序214都存在的实施例中,如下所述,仅仅第二应用程序214需要与电子文档兼容。或者,如下面将讨论的,第一应用程序208和第二应用程序214可以是相同的应用程序。第一应用程序208和第二应用程序214中的一个或两个也可以位于存储设备218以外,因为任一应用程序只需与第一计算机210有效通信。
应用程序接口216是任何类型的计算机可执行指令,适用于为了同步而检验并比较电子文档的两个或多个拷贝,并且可以是为同步电子文档的两个或多个拷贝而特别设计的单独软件、作为另一应用程序的组件而工作的软件工具、第一或第二应用程序208、214等等的集成组件。应用程序接口216还可以执行与同步有关或无关的附加任务。第一版本212、第一应用程序208、第二应用程序214以及应用程序接口216可以驻留在相同的存储设备218中,或者在任何数量的不同存储设备218内。
第二计算机222包括第二处理器224和存储设备228,后者包括上述电子文档的第二版本226以及第一版本212。如上所述,存储设备228可以位于与第二计算机222有效通信的任何位置,包括远程位置等等。同样,在一实施例中,存储设备228和存储设备218可以是相同的存储设备。操作上连接第一和第二计算机210、222的是网络218。网络218可以是适用于这种有效通信的任何通信网络,比如LAN、WAN、无线网络等等。可以理解,可以把任何数量的第一计算机210和第二计算机222连接到网络218。
现在参照图3,在步骤311中,同步进程开始。在一个实施例中,第一应用程序208启动同步进程,第二应用程序214实现同步进程。在另一实施例中,第一应用程序208和第二应用程序214是单个应用程序,其中单个应用程序既启动又实现同步。虽然下面图3的讨论描述了涉及第一应用程序208和第二应用程序214两者的进程,然而可以理解,单个应用程序可以单独执行由第一应用程序208和第二应用程序214所执行的所有步骤。
会使第一应用程序208启动同步进程的任何数量的情况比如:第一版本212的打开、关闭、保存等等;在识别电子文档的第一和第二版本时;根据用户请求手动地启动;以定时间隔启动;在用户登录到系统等等之上后。此外,第一应用程序208可以利用附加条件或者可以使用代替条件,比如仅仅在存在某些数量的版本时才启动同步。下面结合图4更详细地说明一个实施例中同步事件的启动。为了启动该进程,第一应用程序208使应用程序接口216访问第一版本212和第二版本226。访问第一版本212和第二版本216可以用任何计算装置来执行,比如通过浏览与每个版本相关的信息、通过使用搜索功能找到每个版本、通过使用由第一应用程序208所提供的标识信息来定位每个版本,等等。
第一应用程序208可以为接口216提供与第二版本206有关的任何数量的标识信息,比如文件名、位置、地址和/或其他。接口216适用于活动地定位第二版本226,或者具有仅允许观看第一应用程序208、第一版本212等所指定的位置的有限功能。同样,接口216可以用于执行任何数量的附加任务,这些附加任务甚至与同步进程无关。步骤313中,应用程序接口216定位第二版本226,并且检验同步状态。应用程序接口216通过比较第一版本212与第二版本226的信息来确定状态,比如上一次更新的时间和/或日期等等。同步状态还可以用除上述信息之外或代替上述信息的标准来确定。如果所述信息与第一应用程序208所指定的信息和/或标准相匹配,第一和第二版本212、226就具有同步的状态。如果信息不一致,则第一和第二版本212、226没有同步的状态,这样的不一致性就说明可能对这些版本212、226之一作出改变。或者,如果应用程序接口216检测到一个错误、未提供的条件、第一应用程序208已经指定为终止同步的原因的条件,则接口216就继续到步骤330。在步骤330中,接口216把条件通知第一应用程序208,第一应用程序208相应地进行,可以包括任何类型的动作或不动作。
步骤315中,应用程序接口216可以根据步骤313的同步判决的结果采用两种动作过程之一。如果应用程序接口216已确定第一版本212和第二版本226是同步的,那么接口216就继续到步骤325。步骤325中,应用程序接口向第一应用程序208报告第一版本212和第二版本226是同步的。这种报告向第一应用程序208指明目前不必要有任何进一步的同步活动,因为第一版本212包括电子文档最近的版本。该报告还指出用户可以使用第一应用程序208或第二应用程序214来改变第一版本212。
步骤323中,同步进程结束。在该步骤中,第一应用程序208可以停止作用,比如如果这种同步进程在第一应用程序208正在关闭电子文档的第一版本212时发生。因此在这种情况下,一旦发生同步,第一应用程序208就不再执行任何功能,并且可以由用户手动地终止或自动地终止。在另一实施例中,第一应用程序208在打开第一版本212时启动同步进程。在这种情况下,应用程序不会在这种同步事件完成时终止,而是会允许用户使用第一应用程序208的功能开始改变第一版本212,如果该功能可用。
然而在步骤315中,应用程序接口216已经确定第一版本212和第二版本226不同步,接口216继续到步骤317。步骤317中,应用程序接口216向第一应用程序208和/或第二应用程序215报告第一版本212和第二版本226不同步。该报告使第二应用程序215根据用户输入开始同步第一版本212和第二版本226,如下面结合步骤319和321所讨论的。
步骤319中,第二应用程序214通过把用户界面显示在显示设备230上而向用户给出一用户界面。这种用户界面的形式可以是文本和/或图形窗口、音频提示等等,用户界面的任何这种配置都与本发明的实施例相一致。在给出这种用户界面时,第二应用程序214可以用第二应用程序214的功能等向用户给出一个或多个选项。例如,如果第二应用程序214是一个字处理器,那么第二应用程序214就可以在第二应用程序214的字处理用户环境中向用户给出同步选项,比如在有这种第一版本212的页面视图的编辑窗口内等等。同样,第二应用程序214可以用颜色、声音、图形等高亮表示出第一版本212和第二版本226之间的差异,使用户能更好地作出同步判决。第二应用程序214还可以提供附加信息,比如改变了任一版本212、226的各用户的标识,并且可以仅允许一个用户来改变版本212、226,如果用户具有这么做的许可,比如以安全性许可等形式。第二应用程序214使用户能把版本212、226合并到第三拷贝中,以便结合两种版本212、226中的变化。附加选项的形式还可以是从第二应用程序214的功能导出的引导,比如推荐的动作过程等。可以理解,选项可以是由第二应用程序214使用应用程序214的功能参照第一版本212和第二版本226而产生的任何选项。
步骤321中,第二应用程序214结束并处理用户输入。这种用户输入可以包括关于这种同步的任何信息量。例如,用户输入可以选择用户希望保留的电子文档的第一版本212或第二版本226的任何一个的特定改变。在另一个实施例中,用户输入可以包括用户希望完全保留的任一第一版本212或第二版本226的选择。在还有一个实施例中,用户输入可以包括用第二应用程序214的功能对第一和/或第二版本212、226作出的编辑,在完成时使第一版本212和第二版本226同步。可以理解,用户输入包括可由第二应用程序214作出的任何输入,用于选择或用户的使用,并且包括与本发明实施例相一致的任何输入。
还可以理解,步骤319和321可以重复,因为这种用户界面可以取决于用户输入而被重新显示和/或刷新。例如,用户界面可以由第二应用程序214根据用户输入而被重新配置。例如,如果用户选择选择第一版本212和第二版本226之间多个差异之一,且第二应用程序214向用户重新显示用户界面以反映这种选择,那么会发生这种重新配置。步骤319和321可以重复任意次数,或者根本不重复,任一情况都与本发明的实施例相一致。同样,第二应用程序214可以向第一应用程序208或向接口216报告同步的任何结果。由第二应用程序214所报告的结果可以是与同步相关的任何信息,比如选项选择、同步结果等等。
当触发事件发生时,第二应用程序214可以继续到步骤323,同步结束处。这种触发事件可以在任何时间发生,比如在用户已完成协调第一版本212和第二版本226之间的所有差异时、在用户指示第二应用程序214在预定时间放弃或终止同步进程而不完成同步时、等等。步骤323中,同步结束。然后,如上结合步骤325所述,第一应用程序208或第二应用程序214可以在步骤323采取与其中发生同步的环境相一致的任何动作。
现在参照图4,按照本发明的一个实施例示出步骤311的详细图。如上结合图3所述,在步骤311中,第一应用程序208启动同步进程。图4说明了这种启动步骤的更详细的实施例,其中第一应用程序208在打开电子文档的第一版本212后启动这种同步进程。如上所述,第一应用程序208可以在任何时间启动这种同步进程,比如在打开、保存或关闭第一版本212时、在设定的或可变的间隔处、在用户输入后、等等。
步骤411中,第一应用程序208打开电子文档的第一版本212。这种打开最常见地发生在用户输入以打开该第一版本212之后,但是用于启动第一版本212的这种打开的任何装置都与本发明的实施例相一致。步骤413中,第一应用程序208确定第一版本212是否有相关的第二版本226。第一应用程序208在步骤411中完全打开第一版本212后继续到步骤413,或者可以在这种打开进程期间的任何点处继续到步骤413,例如包括在步骤411中打开第一版本212之前。同样,可以采用任何方法来使第一应用程序208作出这种判决。例如,诸如电子标志(stamp)等信息可以与第一版本212相关联,从而使第一应用程序208作出这种判决。相反,第一应用程序208为了这种判决可以搜索操作上耦合到网络218的任何或全部计算设备,比如第二计算机222。可以理解,第一应用程序208可以使用任何确定第二版本226存在的方法,而同时保持与本发明的实施例相一致。
如果在步骤413中第一应用程序208未找到第二版本226,第一应用程序208就确定第一版本212是该电子文档的仅有拷贝,并且继续到步骤417。步骤417中,第一应用程序208正常地处理第一版本212。这种正常处理可以是第一应用程序208一般对与第一版本212相同格式的电子文档所执行的任何类型的处理,可能按照任何用户输入来执行。例如,在图4中,当第一应用程序208按照步骤311启动这种同步进程时,第一应用程序208正在打开第一版本212。在发现不需要同步后-由于不存在第二版本226-第一应用程序208完成第一版本212的打开并且相应地继续。
如果在步骤413中,第一应用程序208发现第二版本226,第一应用程序208就继续到步骤415。步骤415中,第一应用程序208联系应用程序接口216以开始同步第一版本212和第二版本226。在联系了应用程序接口216以后,这种同步进程继续到步骤313,如上结合图3所讨论的。
这样,给出了用于管理应用程序中的文件复制的方法和装置。虽然已经结合各图的优选实施例描述了本发明,然而应该理解,可以使用其他类似的实施例,并且可以对所述实施例作出修改或添加以执行与本发明相同的功能而不背离本发明。例如,本领域的技术人员会认识到,在本申请中描述的发明可以应用于任何计算设备或环境,无论有线或无线,并且可以应用于通过通信网络连接的任何数量的这种计算设备,并且在网络上交互作用。而且,应该强调,构想了多种计算机平台,包括手提设备操作系统和其他特定的操作系统,尤其是在无线网络化设备的数目继续增加的情况下。更进一步的是,本发明可以在多个处理芯片或设备中实现,存储可能在多个设备上受到影响。因此,本发明不应限于任何单个实施例,而应被理解为符合所附权利要求最宽泛的范围。

Claims (16)

1.一种用于管理电子文档的第一和第二版本的方法,所述方法包括:
用第一软件应用程序启动一同步事件,从而把第一计算机上的第一版本与第二版本同步;
使应用程序接口访问所述第一和第二版本;
把与所述第一和第二版本的每一个相关的信息相比较,以判断所述第一和第二版本是否同步,并根据所述判断来产生结果;
把所述结果报告给第一软件应用程序;
响应于所述结果,使第二软件应用程序按照第二软件应用程序的特性产生一用户界面,其中所述电子文档与第二软件应用程序相关联;
使用第二软件应用程序打开电子文档的第一版本和第二版本;
使用用户界面给出同步选项,其中所述同步选项由第二软件应用程序提供;
从用户界面接收用户输入;以及
按照从所述用户界面接收的所述用户输入,使用所述第二软件应用程序自动同步第一和第二版本。
2.如权利要求1所述的方法,其特征在于,所述比较步骤的结果是第一和第二版本的同步状态。
3.如权利要求1所述的方法,其特征在于,所述第一版本被存储在第一计算机上,所述第二版本被存储在第二计算机上,所述第一和第二计算机由通信网络操作地连接。
4.如权利要求1所述的方法,其特征在于,所述同步第一和第二版本的步骤包括:用电子文档的第二版本覆盖电子文档的第一和第二版本。
5.如权利要求1所述的方法,其特征在于,所述同步第一和第二版本的步骤包括:用电子文档的第三版本覆盖第一和第二版本,所述第三版本包括电子文档的第一版本的一部分。
6.如权利要求1所述的方法,其特征在于,所述同步第一和第二版本的步骤包括:用电子文档的第三版本覆盖第一和第二版本,所述第三版本包括电子文档的第二版本的一部分。
7.如权利要求1所述的方法,其特征在于,所述同步第一和第二版本的步骤包括:按照从用户界面接收到的输入把所述第一和第二版本合并到第三版本中,并且用所述第三版本覆盖所述第一和第二版本。
8.如权利要求1所述的方法,其特征在于,所述给出同步选项的步骤还包括在用户界面内显示第一和第二版本。
9.如权利要求1所述的方法,其特征在于,所述同步第一和第二版本的步骤包括:按照用户输入覆盖所述第一和第二版本。
10.如权利要求1所述的方法,其特征在于,所述启动同步事件的步骤在第一软件应用程序检测到与电子文档的第一版本相关的信息时发生,所述信息表示电子文档的第二版本。
11.如权利要求1所述的方法,其特征在于,所述启动同步事件的步骤在第一软件应用程序打开电子文档的第一版本时发生。
12.如权利要求1所述的方法,其特征在于,所述启动同步事件的步骤在第一软件应用程序把电子文档的第一版本保存到第一计算机的存储设备时发生。
13.如权利要求1所述的方法,其特征在于,所述启动同步事件的步骤在第一软件应用程序识别出第一版本和第二版本时发生。
14.一种用于管理电子文档的第一和第二版本的方法,所述方法包括:
从第一软件应用程序接收第一请求,以访问并比较所述第一和第二版本;
访问所述第一和第二版本;
比较与所述第一和第二版本的每一个相关联的信息;
确定所述第一和第二版本是否同步并且产生结果;
把比较结果报告给所述第一软件应用程序;
响应于所述结果,使用与电子文档相关联的第二软件应用程序来打开电子文档的第一和第二版本;
使用所述第二软件应用程序提供的用户界面给出同步选项;
通过用户界面接收用户输入;以及
按照通过所述用户界面接收的所述用户输入,使用所述第二软件应用程序来自动覆盖第一和第二版本。
15.如权利要求14所述的方法,其特征在于,所述接收请求的步骤还包括:接收与所述第一和第二版本相对应的标识信息。
16.如权利要求14所述的方法,其特征在于,所述第一版本被存储在第一计算机上,所述第二版本被存储在第二计算机上,且所述第一和第二计算机由通信网络操作地连接。
CNB2004100082188A 2003-02-28 2004-02-27 用于管理应用程序中文件复制的方法 Expired - Fee Related CN100375016C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/376,738 US7389309B2 (en) 2003-02-28 2003-02-28 Method for managing file replication in applications
US10/376,738 2003-02-28

Publications (2)

Publication Number Publication Date
CN1525315A CN1525315A (zh) 2004-09-01
CN100375016C true CN100375016C (zh) 2008-03-12

Family

ID=32771505

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100082188A Expired - Fee Related CN100375016C (zh) 2003-02-28 2004-02-27 用于管理应用程序中文件复制的方法

Country Status (20)

Country Link
US (1) US7389309B2 (zh)
EP (1) EP1452975B1 (zh)
JP (1) JP2004265420A (zh)
KR (1) KR101099297B1 (zh)
CN (1) CN100375016C (zh)
AU (1) AU2004200456A1 (zh)
BR (1) BRPI0400363A (zh)
CA (1) CA2458019C (zh)
CO (1) CO5550077A1 (zh)
EG (1) EG24738A (zh)
IL (1) IL160354A0 (zh)
MX (1) MXPA04001927A (zh)
MY (1) MY140256A (zh)
NO (1) NO331932B1 (zh)
NZ (1) NZ531280A (zh)
PL (1) PL365550A1 (zh)
RU (1) RU2349952C2 (zh)
SG (1) SG125107A1 (zh)
TW (1) TWI335519B (zh)
ZA (1) ZA200401307B (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7051053B2 (en) * 2002-09-30 2006-05-23 Dinesh Sinha Method of lazily replicating files and monitoring log in backup file system
US8010491B2 (en) * 2003-02-28 2011-08-30 Microsoft Corporation Method for managing multiple file states for replicated files
US9026578B2 (en) 2004-05-14 2015-05-05 Microsoft Corporation Systems and methods for persisting data between web pages
US7634519B2 (en) * 2004-12-17 2009-12-15 International Business Machines Corporation Bypassing an intermediate synchronization server of a three tiered synchronization system
US7440978B2 (en) * 2005-01-14 2008-10-21 Microsoft Corporation Method and system for synchronizing multiple user revisions, updating other strategy maps in the databases that are associated with the balanced scorecard
US7552187B2 (en) * 2005-06-22 2009-06-23 Tele Atlas North America, Inc. System and method for automatically executing corresponding operations on multiple maps, windows, documents, and/or databases
US7945531B2 (en) * 2005-09-16 2011-05-17 Microsoft Corporation Interfaces for a productivity suite application and a hosted user interface
US20070067354A1 (en) * 2005-09-16 2007-03-22 Microsoft Corporation Productivity suite to line of business synchronization mechanism
US8019727B2 (en) * 2007-09-26 2011-09-13 Symantec Corporation Pull model for file replication at multiple data centers
US7941399B2 (en) 2007-11-09 2011-05-10 Microsoft Corporation Collaborative authoring
US8825758B2 (en) 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US8301588B2 (en) 2008-03-07 2012-10-30 Microsoft Corporation Data storage for file updates
US8352870B2 (en) 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8429753B2 (en) 2008-05-08 2013-04-23 Microsoft Corporation Controlling access to documents using file locks
US8825594B2 (en) 2008-05-08 2014-09-02 Microsoft Corporation Caching infrastructure
US8417666B2 (en) 2008-06-25 2013-04-09 Microsoft Corporation Structured coauthoring
US8346768B2 (en) 2009-04-30 2013-01-01 Microsoft Corporation Fast merge support for legacy documents
US10482638B2 (en) 2011-11-11 2019-11-19 Microsoft Technology Licensing, Llc Collaborative commenting in a drawing tool
US20130124956A1 (en) * 2011-11-11 2013-05-16 Microsoft Corporation Coauthoring in a Drawing Tool
US9298391B2 (en) * 2012-12-19 2016-03-29 Dropbox, Inc. Application programming interfaces for data synchronization with online storage systems
US9398090B2 (en) 2013-01-07 2016-07-19 Dropbox, Inc. Synchronized content library
US20140258373A1 (en) * 2013-03-11 2014-09-11 Say Media, Inc. Systems and Methods for Managing and Publishing Managed Content
US9336228B2 (en) * 2013-12-18 2016-05-10 Verizon Patent And Licensing Inc. Synchronization of program code between revision management applications utilizing different version-control architectures
US10270871B2 (en) 2014-04-08 2019-04-23 Dropbox, Inc. Browser display of native application presence and interaction data
US9218407B1 (en) 2014-06-25 2015-12-22 Pure Storage, Inc. Replication and intermediate read-write state for mediums
CN104991781B (zh) * 2015-07-23 2018-11-16 北京金山安全软件有限公司 应用软件内部功能推荐方法及装置
CN105117228B (zh) * 2015-08-27 2018-09-25 北京金山安全软件有限公司 一种加载悬浮窗的方法、悬浮窗加载装置及电子设备
US11971860B2 (en) 2015-12-28 2024-04-30 Dropbox, Inc. Embedded folder views
US10620811B2 (en) * 2015-12-30 2020-04-14 Dropbox, Inc. Native application collaboration
US11036712B2 (en) 2016-01-12 2021-06-15 Microsoft Technology Licensing, Llc. Latency-reduced document change discovery
CN105824627A (zh) * 2016-03-15 2016-08-03 网易(杭州)网络有限公司 确定用户界面变更的方法及装置
US10382502B2 (en) 2016-04-04 2019-08-13 Dropbox, Inc. Change comments for synchronized content items
CN106201457A (zh) * 2016-06-24 2016-12-07 乐视控股(北京)有限公司 一种基于应用场景展示操作界面的方法及装置
US11526533B2 (en) * 2016-12-30 2022-12-13 Dropbox, Inc. Version history management
US11741300B2 (en) * 2017-11-03 2023-08-29 Dropbox, Inc. Embedded spreadsheet data implementation and synchronization
RU2706482C1 (ru) * 2018-07-25 2019-11-19 федеральное государственное бюджетное образовательное учреждение высшего образования "Российский государственный университет им. А.Н. Косыгина (Технологии. Дизайн. Искусство)" Способ репликации информации в базах данных
CN110045949A (zh) * 2019-05-10 2019-07-23 上海紫翊网络科技有限公司 一种同一项目不同分支工程的预制件合并方法及装置
US20220180320A1 (en) * 2020-12-04 2022-06-09 Kinaxis Inc. Rule-based systems and methods for customizing complex business solutions

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278979A (en) * 1990-12-20 1994-01-11 International Business Machines Corp. Version management system using pointers shared by a plurality of versions for indicating active lines of a version
JPH07141363A (ja) * 1993-11-19 1995-06-02 Casio Comput Co Ltd 文書編集方法
US5671428A (en) * 1991-08-28 1997-09-23 Kabushiki Kaisha Toshiba Collaborative document processing system with version and comment management
US5835911A (en) * 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
JP2000099378A (ja) * 1998-09-18 2000-04-07 Hitachi Information Systems Ltd ファイル管理システムとファイル管理方法およびそのプログラムを記録した記録媒体
JP2000293519A (ja) * 1999-04-05 2000-10-20 Nec Corp 文書処理装置
CN1278627A (zh) * 1999-06-17 2001-01-03 国际商业机器公司 用于自动同步分布文档的版本的方法和装置

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3588206T2 (de) * 1984-11-14 1999-07-08 Canon Kk Bildverarbeitungssystem
JPH04181423A (ja) * 1990-11-16 1992-06-29 Fujitsu Ltd バージョン管理方式
US5806078A (en) * 1994-06-09 1998-09-08 Softool Corporation Version management system
US5694596A (en) * 1995-05-25 1997-12-02 Kangaroo, Inc. On-line database updating network system and method
US5881292A (en) * 1996-09-26 1999-03-09 Microsoft Corporation Dynamic versioning system for multiple users of multi-module software system
WO1998040807A2 (en) * 1997-02-27 1998-09-17 Siebel Systems, Inc. Migrating to a successive software distribution level
US6314565B1 (en) * 1997-05-19 2001-11-06 Intervu, Inc. System and method for automated identification, retrieval, and installation of multimedia software components
US6182073B1 (en) * 1997-05-20 2001-01-30 Intel Corporation Integrated information browsing and multiple-participant application with a persistency control configured to monitor and to prevent attempts to replace data within the information browser
JP3567696B2 (ja) * 1997-09-24 2004-09-22 松下電器産業株式会社 ソフトウェアダウンロードシステム
JPH11143754A (ja) * 1997-11-05 1999-05-28 Hitachi Ltd バージョン情報・構成情報表示方法および装置およびバージョン情報・構成情報表示プログラムを記録したコンピュータ読み取り可能な記録媒体
US6041333A (en) 1997-11-14 2000-03-21 Microsoft Corporation Method and apparatus for automatically updating a data file from a network
US6052531A (en) * 1998-03-25 2000-04-18 Symantec Corporation Multi-tiered incremental software updating
JP2000081999A (ja) * 1998-09-07 2000-03-21 Hitachi Software Eng Co Ltd 文書出力システム
US6804663B1 (en) * 1998-09-21 2004-10-12 Microsoft Corporation Methods for optimizing the installation of a software product onto a target computer system
US6341291B1 (en) * 1998-09-28 2002-01-22 Bentley Systems, Inc. System for collaborative engineering using component and file-oriented tools
US6324544B1 (en) 1998-10-21 2001-11-27 Microsoft Corporation File object synchronization between a desktop computer and a mobile device
US6560655B1 (en) 1999-06-22 2003-05-06 Microsoft Corporation Synchronization manager for standardized synchronization of separate programs
US6513084B1 (en) 1999-06-29 2003-01-28 Microsoft Corporation Arbitration of state changes
US6529921B1 (en) 1999-06-29 2003-03-04 Microsoft Corporation Dynamic synchronization of tables
JP2001034517A (ja) * 1999-07-19 2001-02-09 Toshiba Corp ファイルレプリケーションシステム
US6516339B1 (en) * 1999-08-18 2003-02-04 International Business Machines Corporation High performance client/server editor
US6256773B1 (en) 1999-08-31 2001-07-03 Accenture Llp System, method and article of manufacture for configuration management in a development architecture framework
US6449624B1 (en) 1999-10-18 2002-09-10 Fisher-Rosemount Systems, Inc. Version control and audit trail in a process control system
JP4077172B2 (ja) * 2000-04-27 2008-04-16 富士通株式会社 ファイルレプリケーションシステム、ファイルレプリケーション制御方法及び記憶媒体
US20010039548A1 (en) * 2000-04-27 2001-11-08 Yoshitake Shinkai File replication system, replication control method, and storage medium
US6845383B1 (en) * 2000-06-19 2005-01-18 International Business Machines Corporation System and method for managing concurrent scheduled or on-demand replication of subscriptions
US6658330B2 (en) * 2000-12-29 2003-12-02 General Electric Co. Method and system for upgrading software for controlling locomotives
US20030167318A1 (en) * 2001-10-22 2003-09-04 Apple Computer, Inc. Intelligent synchronization of media player with host computer
US7350191B1 (en) * 2003-04-22 2008-03-25 Noetix, Inc. Computer implemented system and method for the generation of data access applications

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278979A (en) * 1990-12-20 1994-01-11 International Business Machines Corp. Version management system using pointers shared by a plurality of versions for indicating active lines of a version
US5671428A (en) * 1991-08-28 1997-09-23 Kabushiki Kaisha Toshiba Collaborative document processing system with version and comment management
JPH07141363A (ja) * 1993-11-19 1995-06-02 Casio Comput Co Ltd 文書編集方法
US5835911A (en) * 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
JP2000099378A (ja) * 1998-09-18 2000-04-07 Hitachi Information Systems Ltd ファイル管理システムとファイル管理方法およびそのプログラムを記録した記録媒体
JP2000293519A (ja) * 1999-04-05 2000-10-20 Nec Corp 文書処理装置
CN1278627A (zh) * 1999-06-17 2001-01-03 国际商业机器公司 用于自动同步分布文档的版本的方法和装置

Also Published As

Publication number Publication date
NO20040834L (no) 2004-09-01
KR101099297B1 (ko) 2011-12-26
EG24738A (en) 2010-07-05
TW200424868A (en) 2004-11-16
EP1452975A3 (en) 2007-10-24
KR20040077538A (ko) 2004-09-04
EP1452975A2 (en) 2004-09-01
US20040172425A1 (en) 2004-09-02
SG125107A1 (en) 2006-09-29
MXPA04001927A (es) 2005-04-25
MY140256A (en) 2009-12-31
BRPI0400363A (pt) 2004-12-28
CA2458019A1 (en) 2004-08-28
CA2458019C (en) 2012-12-04
CO5550077A1 (es) 2005-08-31
EP1452975B1 (en) 2013-12-25
RU2004105884A (ru) 2005-08-10
IL160354A0 (en) 2004-07-25
JP2004265420A (ja) 2004-09-24
US7389309B2 (en) 2008-06-17
ZA200401307B (en) 2005-10-26
RU2349952C2 (ru) 2009-03-20
TWI335519B (en) 2011-01-01
NZ531280A (en) 2005-08-26
CN1525315A (zh) 2004-09-01
PL365550A1 (en) 2004-09-06
AU2004200456A1 (en) 2004-09-16
NO331932B1 (no) 2012-05-07

Similar Documents

Publication Publication Date Title
CN100375016C (zh) 用于管理应用程序中文件复制的方法
US7310653B2 (en) Method, system, and product for maintaining software objects during database upgrade
US9378118B2 (en) Graphical model for test case viewing, editing, and reporting
US6698018B1 (en) System and method of multiple-stage installation of a suite of applications
US7805735B2 (en) System and method of representing data entities of standard device applications as built-in components
CN100377099C (zh) 为复制文件管理多个文件状态的方法
CN110147369A (zh) 多重租赁数据库系统中的数据分离和写入重新定向
US20070088707A1 (en) Method for providing extensible software components within a distributed synchronization system
US20100031244A1 (en) Software updating device and computer-readable storage medium storing software updating program
CN101523358A (zh) 文件系统目录的快速、可靠同步
US20080077605A1 (en) Automatic discovery of application settings' storage locations
US20100115254A1 (en) Synchronization in Multiple Environments
EP1723521A2 (en) An executable application configuration system
CN110209735A (zh) 数据库备份方法、数据库备份装置、计算设备和存储介质
Rashid et al. Aspect-oriented, model-driven software product lines: The AMPLE way
US7574711B2 (en) System for replaying and synchronizing patterns on a client and external data source devices
US8789038B2 (en) Information processing device, information processing method, and computer readable medium with function disabling
US6473771B1 (en) Method of integrating application programs to form or modify suite, and a suite integration toolkit to perform same
CN114816676A (zh) 用于实现低代码开发平台多租户部署的系统及方法
JP2016066355A (ja) Webアプリケーション生成システム、Webアプリケーション生成システムの制御方法、Webアプリケーション生成システムのプログラム、Webアプリケーション生成装置、Webアプリケーション生成装置の制御方法、およびWebアプリケーション生成装置のプログラム
US20180196664A1 (en) Modularized application framework
US8368909B2 (en) Recording medium, information processing apparatus and function simulation method of image processing apparatus
US8161520B1 (en) Methods and systems for securing a system in an adaptive computer environment
JP6482698B2 (ja) ネットワークデバイス、ネットワークデバイスの制御方法、及びプログラム
Bott et al. Windows 7 inside out

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150429

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150429

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080312

Termination date: 20200227