CN1283819A - 监控演示评价软件运行时间使用的方法 - Google Patents
监控演示评价软件运行时间使用的方法 Download PDFInfo
- Publication number
- CN1283819A CN1283819A CN00121951.0A CN00121951A CN1283819A CN 1283819 A CN1283819 A CN 1283819A CN 00121951 A CN00121951 A CN 00121951A CN 1283819 A CN1283819 A CN 1283819A
- Authority
- CN
- China
- Prior art keywords
- working time
- time
- computer
- software
- storage medium
- 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 157
- 238000012544 monitoring process Methods 0.000 title claims abstract description 15
- 230000008569 process Effects 0.000 claims description 22
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 claims description 7
- 230000008676 import Effects 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 4
- 238000009825 accumulation Methods 0.000 claims 23
- 230000001186 cumulative effect Effects 0.000 claims 10
- 238000004590 computer program Methods 0.000 claims 3
- 238000011156 evaluation Methods 0.000 abstract description 15
- 238000009434 installation Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000000151 deposition Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 229920002457 flexible plastic Polymers 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000035922 thirst Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/107—License processing; Key processing
- G06F21/1077—Recurrent authorisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
- G06F11/3423—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2135—Metering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2137—Time limited access, e.g. to a computer or data
Abstract
在执行软件程序期间监控CPU(“计算机处理单元”)的时钟信号。在周期性基础上执行程序的整个过程中,监控时钟信号,并更新经过的运行时间。经过的运行时间存储在隐式文件或软件注册(数据库)内的密钥中。即使在程序崩溃的情况下,周期性基础上更新运行时间保证准确的跟踪运行时间使用,允许用户重新启动该程序而不会有运行时间的损失。软件包可以继续运行,直至经过的运行时间超过预定的评价时间。
Description
本发明一般涉及计算机软件领域,具体涉及监控演示(“demo”)评价软件运行时间使用的方法。
在当今的商业环境下,允许潜在用户在购买新的软件包之前试用或评价该软件是非常有益的。通常,软件供应商给潜在用户提供演示或评价软件包,该软件包代表所购买的实际软件。给予用户一个预定的时间期间去评价该软件,在此之后,演示软件的使用必须终止,除非供应商给予该用户一个延长期或该用户购买实际的软件。
有时,演示软件是实际软件包的简化版本。就是说,演示软件缺少实际软件包中提供的某些功能。其作用是“诱饵”以怂恿用户购买。有时,可能需要提供实际软件包作为演示软件包。总之,用户接收实际软件的工作版本,必须小心以保证在不购买软件的情况下,在评价期间终止以后,用户不能保存和继续使用这个演示软件。
已提出过几种方法以限制演示软件的使用。通常,这些方法是使该软件在评价期间终止以后不能再使用(即,他们采用“演示超时”)。例如,一种方法是基于使用演示软件的次数而提供超时。这是通过确定使用演示软件开始之后的次数实现的。另一种方法是利用相对于软件包安装日期确定暂停使用。
这些方法不是没有缺点的。例如,暂停使用并不是根据实际的运行时间使用。就是说,这些方法并不监控或确定用户演示软件包的实际使用。在基于日期的方法中,用户可以安装演示软件包,但是,一直到以后的日期才有机会评价该软件。因此,用户的评价时间大大地减少了。此外,用户可以在运行演示程序的计算机上倒退系统日期,因此,欺骗该软件在超出演示期间之外运行。在基于软件包开始之后次数的方法中,用户可以启动该程序一次,让它连续地运行,不再重新启动,因此,延长了演示期间。与此相反,若程序系统发生崩溃,要求用户重新启动演示程序,则减少了使用时间。基于演示软件实际运行时间使用的演示暂停方法可以减轻这些缺点。所以,需要和渴望一种基于实际运行时间使用的监控演示软件使用的方法。
有时,要求供应商在原先的期间之外延长演示期间。往往,用户没有机会充分地评价演示软件包。通常,其中部分原因是由于用户缺乏使用软件包的经验。然而,用户有时候把注意力集中到其他的事情上,或根本不可能在分配的期间内评价该软件。于是,迫使用户与供应商联系,以便得到一个有新评价期间的新演示软件包。这就可能承担运输整个新副本演示软件的费用,并要求用户安装这个新副本。这对于供应商和用户来说都是不方便和低效率的。所以,需要和渴望一种简单,高效和方便的方式延长演示软件评价期间的方法。
本发明提供一种基于实际运行时间使用的监控演示软件使用的方法。
本发明还提供一种简单,高效和方便的方式延长演示软件评价期间的方法,而同时允许供应商监控和保持运行时间使用的统计数据。
本发明以上和其他的特征和优点是通过在执行软件程序期间监控CPU(“计算机处理单元”)的时钟信号获得的。在周期性基础上执行程序的整个过程中,监控时钟信号,并更新经过的运行时间。经过的运行时间存储在隐式文件或软件注册(数据库)内的密钥中。即使在程序崩溃的情况下,周期性基础上更新运行时间保证准确的跟踪运行时间使用,允许用户重新启动该程序而不会损失运行时间。软件包可以继续运行,直至经过的运行时间超过预定的评价时间;此时,在用户注册软件包之前,该软件包完全地或部分地被禁止。不同于隐藏跟踪文件或注册的方法是,利用万维网(World Wide Web)推入/拉出方法在软件供应商现场存储运行时间信息,允许供应商在每次使用付款的基础上改变评价期间。
根据以下给出本发明几个优选实施例的详细描述并参照附图,可以更清楚地了解本发明以上和其他的优点和特征,在这些附图中:
图1表示按照本发明建立跟踪文件的流程图形式典型方法;
图2表示本发明方法所采用的典型跟踪文件;
图3a和3b表示按照本发明一个实施例监控演示软件使用的流程图形式典型方法;
图4表示可以实行本发明方法的基于处理器的系统;
图5表示用户与软件供应商之间通过因特网的连接;和
图6表示按照本发明另一个实施例监控演示软件使用的流程图形式典型方法。
本发明适用于跟踪软件程序的实际运行时间使用,且特别适用于跟踪演示程序的实际运行时间使用,演示程序通常有受限制的评价时间。虽然,此处描述的本发明是参照演示软件程序或软件包,应当理解,本发明也适用于任何的软件应用程序,其中要求或需要监控运行时间使用。
图1表示按照本发明建立跟踪文件的流程图形式典型方法10。图2表示典型的跟踪文件。如图所示,跟踪文件包括三个项目:运行时间使用,终止符和寄存标识符(ID)。应当注意,寄存ID项目是任选的(以下描述)。运行时间使用项目包括用户累积的演示运行时间使用(即,经过时间)或它可以包括剩余的使用时间。例如,这个时间可以用秒或总时钟报时信号表示。终止符项目通常包括对应于运行时间使用项目的编码值(即,它是存储在第一项目中运行时间使用的函数)。在解码时,存储在终止符项目中的值必须与存储在运行时间使用项目中的值一致,否则程序执行被终止(以下给出更详细的解释)。寄存ID项目可以包括代表合法寄存ID的编码值。如上所述,寄存ID不必驻留在跟踪文件。相反,寄存ID可以硬编码到演示程序中。如在以下参照图3a和3b时更详细地描述的,本发明方法50所利用的跟踪文件内含信息跟踪演示软件程序的实际运行时间使用,并作出判定是否应该终止该程序。
再参照图1,在用户计算机上(或在供应商的站点,如以下参照图5所讨论的)安装演示软件程序时,要求建立跟踪文件。必须注意,用户安装接收演示程序的方式并不重要。例如,演示程序可以存储在软磁盘或CD-ROM(“只读光盘存储器”)上,通过因特网之类的网络,或任何其他适当媒体从服务器计算机下载。此外,演示程序可以是压缩文件,即,“zipped”或“stuffed”文件,需要利用实用程序解压缩或“unzip”它,或演示程序可以是可执行文件,在用户启动以后自动安装。文件的类型是不重要的,只要可以按照方法10与跟踪文件一起安装演示程序。然而,为了简化,术语“安装盘”指的是包含安装跟踪文件和演示程序所需文件的媒体。类似地,术语“安装程序”指的是利用安装盘与跟踪文件一起安装演示程序所需的可执行程序,实用程序,等等程序。
一旦用户有了安装盘,可以开始实施方法10。首先,在步骤12,用户通过执行安装盘中的安装程序启动演示程序的安装。在安装时,演示程序文件放入到用户硬驱动器或合适容量的其他存储媒体上正确目录中(步骤14)。安装程序还建立和初始化跟踪文件所需要的信息(步骤16)。然后,该信息存储在作为图2所示跟踪文件的隐式文件中(步骤18)。或者,该信息可以存储在本领域专业人员熟知的软件注册中密钥内。一个要求是存储的跟踪信息能够被演示程序访问(参照以下图3a和3b所描述的)。为了简化,余下的描述涉及跟踪文件,但是,应当明白,同样的描述也适用于注册。一旦建立了跟踪文件和安装好演示程序,就可以执行本发明的方法。
图3a和3b表示按照本发明一个实施例监控演示软件使用的典型方法50。我们要求,方法50中的步骤54至66和步骤100至108是在演示程序的启动/初始化过程之前或作为其中的一部分被执行。应当注意,方法50中的步骤54至66和步骤100至108可以作为演示程序的独立功能调用或与演示程序中其他的指令/功能一起被执行。首先,用户运行演示程序(步骤52)。在运行程序时,打开跟踪文件,运行时间和其他编码的跟踪参数从该文件中读出(步骤54)。所有编码的参数被解码。用于编码/解码参数的具体方法或工具是不重要的,可以利用任何商品化或专用的编码/解码方法。如以下所描述的,这些参数与跟踪文件互相交换,并不断地由方法50进行更新。
在步骤56,通过考察跟踪文件是否为有效的注册ID项目,该方法确定软件是否已注册。若该软件已注册,即,在跟踪文件中找到有效的注册ID值,则方法50进行到执行正常演示程序的步骤66。否则,方法50确定演示程序的访问是否已终止(步骤58)。这是通过比较解码的终止符项目与预定的终止码实现的。必须小心,防止随机存储器(RAM)中未加密的值被用普通的方式检查。若终止符与终止码一致,则演示程序的访问已终止。当程序访问已终止时,方法50进行到终止演示程序(和方法50)访问的步骤110。然而,若步骤58中确定程序访问没有终止,则方法50进行到步骤60。
其次,方法50检查是否用人工方法改变了跟踪文件(步骤60)。这是通过检查解码的终止符项目和运行时间使用项目值实现的。若这两个值不一致,则用户很可能用人工方法改变了运行时间使用项目。由于用户不知道终止符值是如何编码的,该用户就不能够以类似于运行时间使用项目的方法改变终止符,所以,很容易地检测到欺诈。应当注意,如果得到保证,步骤58和60可以组合,因为这两个步骤都与使用终止符项目有关。同样,如果需要,也可以利用两个分开的终止符项目。应当理解,把步骤58与步骤60分开,供应商可以区分开已运行完时间的诚实用户和不诚实用户,不诚实用户试图免费和在没有供应商同意情况下延长评价时间。
若步骤60确定已用人工方法改变了跟踪文件,则在步骤100中借助于跟踪文件终止程序运行时间访问,且在步骤102还终止目前执行的演示程序(和方法50)。就是说,与预定终止码相关的特定编码终止符写入到跟踪文件中,所以,在下一次执行方法50和演示程序时,该程序在步骤110被终止(如上描述)。否则,若步骤60确定跟踪文件没有被改变,则方法50通过检查运行时间使用项目计算到目前为止的运行时间使用(步骤62)。如上所述,存储在运行时间使用项目中的值可以是时钟信号,秒或任何其他的运行时间使用表示。因此,该项目可能需要转换或快速计算以确定到目前为止演示程序实际的运行时间使用。
在步骤64,确定运行时间使用是否到期。即,运行时间使用值是否大于预定的评价使用值。若确定运行时间使用还没有到期,则方法50进行到执行正常程序的步骤66。若确定运行时间使用已经到期,则在步骤104用户得到一个注册该程序的机会(即,购买该软件)。若在步骤104确定用户不要求注册该程序,则在步骤108终止演示程序(和方法50)的执行。
若在步骤104确定用户要求注册该演示程序,则该用户能够输入注册代码。在步骤106,把输入的代码与存储在演示程序或它的一个数据文件中的预定注册ID进行比较。若这两个代码一致,则注册ID的编码版本写入到跟踪文件(或供应商的站点),且方法50进行到执行正常程序的步骤66。若这两个代码不一致,则该方法进行到终止演示程序(和方法50)执行的步骤108。与连续的循环过程不同,终止操作减小了找到正确代码值之前用户输入任意编码值的机会。
应当理解,可以用不同的方法完成注册过程,不局限于以上描述的系列步骤。例如,本领域专业人员知道,可以利用软件保护器(dongles),智能卡,定时软件保护器,密钥盘,定时序列(无线电密钥)和磁条阅读器(例如,信用卡阅读器)实行注册。
参照图3b,连续跟踪/更新运行时间使用的嵌入式更新环路68是方法50的一部分。这个环路68嵌入在演示程序的基本主程序运行中。在步骤70,若演示软件没有注册,则环路68更新运行时间使用值,并把它写入到跟踪文件中。而且,此时终止符是代表运行时间使用值的编码值,该终止符也被更新,并写入到该文件中。通过访问执行程序的CPU时钟信号,运行时间使用被更新。访问时钟信号的方式取决于写成方法50和演示程序所用的软件语言。应当注意,使用的软件语言或编译程序是不重要的,只要能够容易地确定演示程序开始执行以后的CPU时钟信号或CPU时间。
在本实施例中,我们要求环路68在每秒的基础上(即,周期性地每秒执行一次)连续地更新跟踪文件。因此,把环路68并入到演示程序中,可以周期性地每秒执行它一次。应当注意,1秒是所要求的更新速率,但可采用其他任何的速率(快些或慢些),且本发明不局限于任何特定的更新速率。还可以利用分开的过程,目标或线程实施方法50,所以,它不会影响演示评价软件的时间极限部分。
在步骤74,确定使用运行时间是否已到期。即,运行时间使用值是否大于预定评价使用值。若确定运行时间使用没有到期,则方法50进行到步骤76的演示程序中主程序外壳/操作。有时,在主程序操作期间,确定用户是否希望借助于用户启动的请求注册演示程序(步骤78)。如上所述,环路68嵌入在演示程序内。因此,实际上在何时和何处执行步骤70至78是不重要的,只要这些步骤是在执行演示程序的一些基本操作期间被执行的,因此,可以使环路68准确地检测,确定和更新实际的运行时间使用。
若在步骤78中确定用户不希望注册该软件,则方法50在步骤70中继续,等待另一次通过环路68。若在步骤78确定用户希望注册该程序,则该用户就能输入一个注册代码。在步骤80,把输入的代码与演示程序中的预定注册ID进行比较。若这两个代码一致,则利用注册ID的编码版本更新跟踪文件,该编码版本根本上禁止环路68监控和更新运行时间使用。然后,该方法50在步骤70中继续,等待另一次通过环路68,但如以上所提到的,由于不再执行步骤72和74,环路68根本上被禁止。
若在步骤80确定输入的注册代码与预定的代码不一致,则方法50在步骤70中继续,等待另一次通过没有被禁止的环路68。而且,要求每秒执行该环路一次。请注意,可以增加一种检查,确定用户尝试注册演示软件的次数。若用户的尝试次数已超过预定的尝试次数,该程序被终止(即,若用户不正确地尝试注册演示超过预定的次数,则方法50可以在步骤92中继续)。与连续的循环过程不同,终止操作减小了找到正确代码值之前用户输入任意编码值的机会。
若在步骤74确定运行时间使用已经到期,则方法50进行到步骤90;在步骤90,确定用户是否希望注册演示程序。若用户不希望注册该程序,则方法50在步骤92中继续;在步骤92,终止演示程序(和方法50)的执行。若在步骤90确定用户希望注册该程序,则该方法50在步骤80中继续(如上所述)。
应当注意,方法50是执行演示程序的一部分,或称之为执行演示程序的功能。因此,用户的输入,例如,注册ID,应当适应于演示程序的形式。因此,它们可以是键盘,鼠标或其他类型的入口通路,且用户输入信息到方法50和演示中的方式是不重要的。
图4表示基于处理器的系统200,在该系统中可以执行本发明的方法50(图3a和3b)。计算机系统200包括通过总线220与输入/输出(I/O)装置210通信的中央处理单元(CPU)202。应当注意,只画出单条总线220,但是,本领域专业人员现在知道,它可以包括多于一条总线和总线桥。还画出第二个I/O装置214,但不是必需的。系统200还包括:非易失性存储器207,随机存储器(RAM)216,只读存储器(ROM)218,还可以包括:诸如软磁盘驱动器204和CD-ROM驱动器206的外围设备,它们也是通过总线220与CPU 202通信。必须注意,系统200的具体结构是不重要的,只要方法50可以在系统200中运行,各种计算机兼用装置的任何组合可以并入到系统200中。此外,实施方法50的CPU 202程序可以存储在CD-ROM 210,软磁盘208,硬驱动器或能够存储程序的任何其他媒体。在执行程序期间,在系统200中操作系统的控制下,该程序装入到RAM 216,而跟踪文件驻留在非易失性存储器207中。本领域专业人员知道,所有这些装置都与CPU 202通信。
本领域一般专业人员都明白,CPU 202完成本发明方法所要求的逻辑和数学运算,例如,数据操纵和比较,以及其他的算术和逻辑功能。本领域一般专业人员都明白,利用RAM 216存储实施本发明方法所要求的数据和程序指令,RAM 216可以包括:普通的随机存储器(RAM),大容量存储器,或二者的组合。如上所述,可以利用非易失性存储器207存储跟踪文件和在重新启动或电源故障之后保持其状态所要求的任何其他信息。本领域一般专业人员都明白,I/O装置212和214负责与系统200操作员的接口,例如,I/O装置可以是键盘,鼠标,显示器,等装置,或者与硬驱动器或其他装置(未画出)之类的外围数据装置一起接收或分配数据。
图5表示用户计算机系统200与软件供应商服务器计算机240之间通过因特网230的连接。这个连接是有用的,例如,用于传送演示程序或实际程序给用户。这个连接还可以是放置跟踪文件在供应商服务器计算机240上的机构。把跟踪文件放置在供应商服务器计算机240上,在用户希望购买更多的时间而没有购买整个软件包的情况下,可以容易地改变评价时间。在用户因系统崩溃或购买新计算机而重新安装该程序时,这种方法还可以继续跟踪已使用的时间。当用户从供应商请求更多的时间和供应商满足这个请求时,按照新同意的评价时间改变运行时间使用和跟踪文件的终止符项目,可以完成跟踪已使用的时间。这种改变可以在付款的基础上进行,因此,有效地使演示程序转变成双方之间的一种特许。类似地,图5所示的连接可以使软件更新和注册过程更加方便。
本领域专业人员知道,可以采用推入/拉出方法以保证跟踪文件准确地反映用户的运行时间使用。就是说,用户计算机系统200有本机的跟踪文件,所以,方法50能够正确地监控和更新运行时间使用,如果需要,可以禁止演示程序的执行。此外,供应商的服务器计算机240也可以包含跟踪文件副本,在因特网访问功能失效的情况下可以执行跟踪文件。通过周期性地从用户计算机系统200拉出(经因特网230)跟踪文件,可以更新供应商的跟踪文件。类似地,通过推入跟踪文件(经因特网230)到用户计算机系统200,可以发射供应商作出的任何更新给用户。这种推入/拉出操作是大多数因特网服务供应商(ISPs)以及软件集成和软件更新当今采用的常规操作。
图6表示按照本发明另一个实施例监控演示软件运行时间使用的流程图形式典型方法350。方法350中的大部分是与方法50(图3a和3b)相同的,所以,不再对此作进一步的讨论。然而,新的系列步骤,步骤75a至75e,插入在步骤74与76之间。当运行时间使用接近于评价时间限额时,这些新的步骤给用户提示。
首先,在步骤74,确定运行时间使用是否到期;在步骤75a,计算剩余的演示时间,即,评价时间限额减去实际运行时间使用。在步骤75b,确定剩余的演示时间是否小于或等于预定的剩余提示时间。例如,可以最初设置提示时间为1小时。提示时间随评价时间的长短而变化。就是说,若评价时间非常长,例如,1,000小时,则可以设置提示时间为50小时。类似地,若评价时间相对较短,则可以选取较短的提示时间。
若在步骤75b确定剩余时间不小于或等于提示时间,则方法50进行到步骤76(参照以上图3b所解释的)。若确定剩余时间小于或等于提示时间,则方法50进行到步骤75c。在步骤75c,给用户提示剩余时间。在步骤75d,还可以给用户提示注册演示程序。在步骤75e,如果需要,计算新的提示时间。计算新的提示时间是为了避免发生这样的情况,一旦原先的提示时间已到,不断地给用户提示该时间已用完。因此,应当设置提示时间为零以便有效地禁止提示(由于安排提示在运行时间使用已结束的时间),或设置提示时间为另一个不会使用户感到困惑的适当时间。一旦计算了新的提示时间,方法50进行到步骤76(参照以上图3b所解释的)。
应当理解,实施本发明方法所需要的软件指令可以驻留在大型计算机或服务器计算机上。然后,该指令可以通过计算机总线下载到用户计算机系统,而CPU可以执行实施本发明方法的指令。
必须注意,本发明的实施是作为在计算机系统上执行的程序。可以用不同的计算机语言写入本发明到不同的计算机系统中。本发明可以存储在任何合适的存储媒体上,例如,硬驱动器,软盘,CD-ROM,或已知的或待开发的其他永久性或半永久性存储媒体。本领域专业人员知道,体现本发明的程序也可以分成程序代码段,例如,从服务器计算机下载,或作为载波中的数据信号被发射。
虽然本发明的详细描述是结合当时已知的几个优选实施例,应当明白,本发明不受这些公开实施例的限制。更确切地说,本发明可以作这样一些改变,合并以上没有描述过的任意多个变化,改动,替换或相当的安排,但是,这些变化,改动,替换或相当的安排都是与本发明的精神和范围一致的。所以,本发明不是以上描述的这些内容,而仅仅受所附权利要求书的限制。
Claims (59)
1.一种监控执行软件应用程序的运行时间使用的方法,该软件应用程序有运行时间的截止时间,所述方法包括以下步骤:
输入代表执行软件运行时间的时间参数,该时间参数代表该软件开始它当前执行以来的运行时间;
利用输入的时间参数更新累积的运行时间使用;和
确定累积的运行时间是否超过运行时间的截止时间。
2.按照权利要求1的方法,其中所述方法还包括:若确定累积的运行时间已超过运行时间的截止时间,则禁止该软件应用程序的继续执行。
3.按照权利要求1的方法,其中所述方法还包括:若确定累积的运行时间已超过运行时间的截止时间,则提示软件应用程序的用户注册该软件应用程序。
4.按照权利要求3的方法,其中所述方法还包括:若用户没有注册该软件,则禁止该软件应用程序的继续执行。
5.按照权利要求3的方法,其中若确定了用户要求注册该软件,则所述方法还包括以下步骤:
输入注册标识码;
确认注册标识码;和
若注册标识码有效,则终止所述方法。
6.按照权利要求3的方法,其中若确定了用户要求注册软件,则所述方法还包括步骤:利用软件保护器注册该软件。
7.按照权利要求3的方法,其中若确定了用户要求注册软件,则所述方法还包括步骤:利用密钥盘注册该软件。
8.按照权利要求3的方法,其中若确定了用户要求注册软件,则所述方法还包括步骤:利用时间序列密钥注册该软件。
9.按照权利要求3的方法,其中若确定了用户要求注册软件,则所述方法还包括步骤:利用磁条阅读器注册该软件。
10.按照权利要求1的方法,其中所述确定步骤中的所述输入步骤是周期性地以预定速率进行的。
11.按照权利要求10的方法,其中所述预定速率约为每秒一次。
12.按照权利要求1的方法,其中所述方法把累积的运行时间使用存储在计算机可读存储媒体上的数据文件中。
13.按照权利要求12的方法,其中所述方法编码累积的运行时间使用,并把编码的累积运行时间使用存储在计算机可读存储媒体中。
14.按照权利要求13的方法,其中所述方法还包括以下步骤:
确定累积的运行时间使用是否已被用户改变;和
若所述累积的运行时间使用已被用户改变,则禁止该软件应用程序的继续执行。
15.按照权利要求14的方法,其中所述确定累积的运行时间使用是否已改变的步骤是通过累积的运行时间使用与编码的累积运行时间使用之间的比较完成的。
16.按照权利要求12的方法,其中计算机可读存储媒体是经网络连接到执行软件的计算机系统。
17.按照权利要求16的方法,其中网络是因特网。
18.按照权利要求17的方法,其中所述方法还包括步骤:当存在预定的条件时,延长截止时间。
19.按照权利要求18的方法,其中所述延长步骤包括:
改变存储的累积运行时间使用;和
从计算机存储媒体传送新存储的累积运行时间使用到执行软件应用程序的计算机系统。
20.按照权利要求17的方法,其中所述方法还包括步骤:当存在一个或多个预定的条件时,延长截止时间。
21.按照权利要求20的方法,其中一个或多个预定条件包括:接收延长命令。
22.按照权利要求1的方法,其中所述输入步骤是通过读出执行软件应用程序的计算机处理单元中的时钟完成的。
23.按照权利要求1的方法,其中所述方法是通过执行正在被监控的软件应用程序完成的。
24.按照权利要求1的方法,其中软件应用程序是演示软件应用程序。
25.一种计算机可读存储媒体,包含计算机可读代码,该代码用于运行计算机以实现监控执行软件应用程序的运行时间使用的方法,该软件应用程序有运行时间的截止时间,所述方法包括以下步骤:
输入代表执行软件运行时间的时间参数,时间参数代表该软件开始它当前执行以来的运行时间;
利用输入的时间参数更新累积的运行时间使用;和
确定累积的运行时间是否超过运行时间的截止时间。
26.按照权利要求25的计算机可读存储媒体,其中所述方法还包括:若确定累积的运行时间已超过运行时间的截止时间,则禁止该软件应用程序的继续执行。
27.按照权利要求25的计算机可读存储媒体,其中所述方法还包括:若确定累积的运行时间已超过运行时间的截止时间,则提示软件应用程序的用户注册该软件应用程序。
28.按照权利要求27的计算机可读存储媒体,其中所述方法还包括:若用户没有注册该软件,则禁止该软件应用程序的继续执行。
29.按照权利要求27的计算机可读存储媒体,其中若确定了用户要求注册该软件,则所述方法还包括以下步骤:
输入注册标识码;
确认注册标识码;和
若注册标识码有效,则终止所述方法。
30.按照权利要求27的计算机可读存储媒体,其中若确定了用户要求注册软件,则所述方法还包括步骤:利用软件保护器注册该软件。
31.按照权利要求27的计算机可读存储媒体,其中若确定了用户要求注册软件,则所述方法还包括步骤:利用密钥盘注册该软件。
32.按照权利要求27的计算机可读存储媒体,其中若确定了用户要求注册软件,则所述方法还包括步骤:利用时间序列密钥注册该软件。
33.按照权利要求27的计算机可读存储媒体,其中若确定了用户要求注册软件,则所述方法还包括步骤:利用磁条阅读器注册该软件。
34.按照权利要求27的计算机可读存储媒体,其中所述方法的所述确定步骤中所述输入步骤是周期性地以预定速率进行的。
35.按照权利要求34的计算机可读存储媒体,其中所述预定速率约为每秒一次。
36.按照权利要求25的计算机可读存储媒体,其中所述方法把累积的运行时间使用存储在第二计算机可读存储媒体的数据文件中。
37.按照权利要求36的计算机可读存储媒体,其中所述方法编码累积的运行时间使用,并把编码的累积运行时间使用存储在第二计算机可读存储媒体中。
38.按照权利要求37的计算机可读存储媒体,其中所述方法还包括以下步骤:
确定累积的运行时间使用是否已被用户改变;和
若所述累积的运行时间使用已被用户改变,则禁止该软件应用程序的继续执行。
39.按照权利要求38的计算机可读存储媒体,其中所述确定累积的运行时间使用是否已改变的步骤是通过累积的运行时间使用与编码的累积运行时间使用之间的比较完成的。
40.按照权利要求36的计算机可读存储媒体,其中第二计算机可读存储媒体是经网络连接到执行软件应用程序的计算机系统。
41.按照权利要求40的计算机可读存储媒体,其中网络是因特网。
42.按照权利要求40的计算机可读存储媒体,其中所述方法还包括步骤:当存在一个或多个预定的条件时,延长截止时间。
43.按照权利要求42的计算机可读存储媒体,其中所述延长步骤包括:
改变存储的累积运行时间使用;和
从第二计算机存储媒体发射新存储的累积运行时间使用到执行软件应用程序的计算机系统。
44.按照权利要求25的计算机可读存储媒体,其中所述输入步骤是通过读出执行软件应用程序的计算机处理单元中的时钟完成的。
45.按照权利要求25的计算机可读存储媒体,其中所述方法是通过执行正在被监控的软件应用程序完成的。
46.按照权利要求25的计算机可读存储媒体,其中软件应用程序是演示软件应用程序。
47.一种计算机系统,包括:
程控处理器,所述程控处理器用于输入代表执行软件应用程序运行时间的时间参数,时间参数代表该软件开始它当前执行以来的运行时间;利用输入的时间参数更新累积的运行时间使用;和确定累积的运行时间是否超过运行时间的截止时间。
48.按照权利要求47的系统,其中若确定累积的运行时间已超过运行时间的截止时间,则所述处理器禁止该软件应用程序的继续执行。
49.按照权利要求47的系统,其中若确定累积的运行时间已超过运行时间的截止时间,则所述处理器提示软件应用程序的用户注册该软件应用程序。
50.按照权利要求47的系统,其中若用户没有注册软件,则禁止该软件应用程序的继续执行。
51.按照权利要求47的系统,其中所述处理器把累积的运行时间使用存储在计算机可读存储媒体的数据文件中。
52.按照权利要求51的系统,其中所述文件是隐式文件。
53.按照权利要求51的系统,其中所述文件是软件注册中的密钥。
54.按照权利要求51的系统,其中所述处理器编码累积的运行时间使用,并把编码的累积运行时间使用存储在所述计算机可读存储媒体中。
55.按照权利要求54的系统,其中所述处理器还确定累积的运行时间使用是否已被用户改变,若所述累积的运行时间已被用户改变,则所述处理器禁止该软件应用程序的继续执行。
56.按照权利要求55的系统,其中通过累积的运行时间使用与编码的累积运行时间使用之间的比较,所述处理器确定累积的运行时间使用是否已被改变。
57.按照权利要求51的系统,其中所述存储媒体是经网络连接到所述计算机系统。
58.按照权利要求57的系统,其中网络是因特网。
59.一种从服务器计算机传送的计算机程序,所述计算机程序用于监控执行软件应用程序运行时间的截止时间,所述计算机程序包括:
第一程序代码段,用于输入代表执行软件运行时间的时间参数,时间参数代表该软件开始它当前执行以来的运行时间;
第二程序代码段,利用输入的时间参数更新累积的运行时间使用;和
第三程序代码段,确定累积的运行时间是否超过运行时间的截止时间。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US36123899A | 1999-07-27 | 1999-07-27 | |
US09/361,238 | 1999-07-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1283819A true CN1283819A (zh) | 2001-02-14 |
Family
ID=23421223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN00121951.0A Pending CN1283819A (zh) | 1999-07-27 | 2000-07-26 | 监控演示评价软件运行时间使用的方法 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1072979A3 (zh) |
JP (1) | JP2001100855A (zh) |
CN (1) | CN1283819A (zh) |
CA (1) | CA2313839A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100388210C (zh) * | 2004-01-13 | 2008-05-14 | 国际商业机器公司 | 通过硬件资源利用报告优化性能的方法和数据处理系统 |
CN102082694A (zh) * | 2011-03-04 | 2011-06-01 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用评价方法及应用服务器 |
CN101636964B (zh) * | 2007-01-17 | 2012-12-12 | 松下电器产业株式会社 | 以最大密钥更新率分配密钥更新的系统和方法 |
CN103713996A (zh) * | 2012-10-02 | 2014-04-09 | 德州仪器公司 | 使用下游相关进行调试跟踪流盖时间戳 |
CN104081299A (zh) * | 2012-02-29 | 2014-10-01 | 富士电机株式会社 | 可编程控制器、可编程控制器系统及可编程控制器的提供系统 |
CN109478052A (zh) * | 2016-08-01 | 2019-03-15 | 西门子股份公司 | 确定应用程序的执行时间 |
CN110659457A (zh) * | 2019-09-20 | 2020-01-07 | 安徽听见科技有限公司 | 一种应用授权的验证方法、装置及客户端 |
CN111046404A (zh) * | 2019-12-10 | 2020-04-21 | 四川思创优光科技有限公司 | 光纤激光器的加密方法、解密方法、加密系统及解密系统 |
CN114895746A (zh) * | 2022-06-14 | 2022-08-12 | 北京东土军悦科技有限公司 | 一种系统时间的同步方法及装置、计算设备、存储介质 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020019814A1 (en) * | 2001-03-01 | 2002-02-14 | Krishnamurthy Ganesan | Specifying rights in a digital rights license according to events |
US6938015B2 (en) | 2001-09-17 | 2005-08-30 | Intel Corporation | Method for providing database security |
DE10234469A1 (de) * | 2002-07-29 | 2004-02-12 | Siemens Ag | Verfahren zur Erfassung von Programmlaufzeiten in einem Datenverarbeitungsgerät |
US7234133B2 (en) | 2003-05-20 | 2007-06-19 | Sap Aktiengesellschaft | Software expiry before delivery |
EP1632834B1 (de) * | 2004-09-01 | 2007-11-07 | Agenda Informationssysteme GmbH | Verfahren zur Steuerung des Zugriffs auf ein Anwendungsprogramm |
EP1796000A1 (en) * | 2005-12-06 | 2007-06-13 | International Business Machines Corporation | Method, system and computer program for distributing software products in trial mode |
WO2007107905A2 (en) * | 2006-03-17 | 2007-09-27 | Koninklijke Philips Electronics N.V. | Protection of software from piracy |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5222134A (en) * | 1990-11-07 | 1993-06-22 | Tau Systems Corporation | Secure system for activating personal computer software at remote locations |
US5440631A (en) * | 1992-04-24 | 1995-08-08 | Fijitsu Limited | Information distribution system wherein storage medium storing ciphered information is distributed |
JP2856595B2 (ja) * | 1992-04-24 | 1999-02-10 | 富士通株式会社 | ソフトウェア記憶媒体、ソフトウェア読取装置及びソフトウェア管理システム |
JP3424305B2 (ja) * | 1994-02-17 | 2003-07-07 | 富士ゼロックス株式会社 | サービス課金方法および装置 |
US5689560A (en) * | 1994-04-25 | 1997-11-18 | International Business Machines Corporation | Method and apparatus for enabling trial period use of software products: method and apparatus for allowing a try-and-buy user interaction |
JPH086784A (ja) * | 1994-06-15 | 1996-01-12 | Nippon Telegr & Teleph Corp <Ntt> | ソフトウェア/著作物の無断複製使用防止システムおよび無断複製使用防止処理方法 |
JPH08194748A (ja) * | 1995-01-17 | 1996-07-30 | Hitachi Ltd | ソフトウェア試用管理システム |
JPH1091556A (ja) * | 1996-09-11 | 1998-04-10 | Nri & Ncc Co Ltd | ソフトウェア、データベース、コンピュータの利用情報取得方法 |
US6021492A (en) * | 1996-10-09 | 2000-02-01 | Hewlett-Packard Company | Software metering management of remote computing devices |
-
2000
- 2000-07-13 CA CA002313839A patent/CA2313839A1/en not_active Abandoned
- 2000-07-17 EP EP00306057A patent/EP1072979A3/en not_active Withdrawn
- 2000-07-26 CN CN00121951.0A patent/CN1283819A/zh active Pending
- 2000-07-27 JP JP2000226249A patent/JP2001100855A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100388210C (zh) * | 2004-01-13 | 2008-05-14 | 国际商业机器公司 | 通过硬件资源利用报告优化性能的方法和数据处理系统 |
CN101636964B (zh) * | 2007-01-17 | 2012-12-12 | 松下电器产业株式会社 | 以最大密钥更新率分配密钥更新的系统和方法 |
CN102082694A (zh) * | 2011-03-04 | 2011-06-01 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用评价方法及应用服务器 |
CN104081299A (zh) * | 2012-02-29 | 2014-10-01 | 富士电机株式会社 | 可编程控制器、可编程控制器系统及可编程控制器的提供系统 |
CN103713996A (zh) * | 2012-10-02 | 2014-04-09 | 德州仪器公司 | 使用下游相关进行调试跟踪流盖时间戳 |
US10901794B2 (en) | 2016-08-01 | 2021-01-26 | Siemens Aktiengesellschaft | Determining an execution time of an application program |
CN109478052A (zh) * | 2016-08-01 | 2019-03-15 | 西门子股份公司 | 确定应用程序的执行时间 |
CN109478052B (zh) * | 2016-08-01 | 2022-07-12 | 西门子股份公司 | 确定应用程序的执行时间的方法和装置 |
CN110659457A (zh) * | 2019-09-20 | 2020-01-07 | 安徽听见科技有限公司 | 一种应用授权的验证方法、装置及客户端 |
CN111046404B (zh) * | 2019-12-10 | 2022-05-13 | 四川思创激光科技有限公司 | 光纤激光器的加密方法、解密方法、加密系统及解密系统 |
CN111046404A (zh) * | 2019-12-10 | 2020-04-21 | 四川思创优光科技有限公司 | 光纤激光器的加密方法、解密方法、加密系统及解密系统 |
CN114895746A (zh) * | 2022-06-14 | 2022-08-12 | 北京东土军悦科技有限公司 | 一种系统时间的同步方法及装置、计算设备、存储介质 |
CN114895746B (zh) * | 2022-06-14 | 2023-11-07 | 北京东土军悦科技有限公司 | 一种系统时间的同步方法及装置、计算设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP1072979A3 (en) | 2002-09-18 |
CA2313839A1 (en) | 2001-01-27 |
EP1072979A2 (en) | 2001-01-31 |
JP2001100855A (ja) | 2001-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1283819A (zh) | 监控演示评价软件运行时间使用的方法 | |
EP2245533B1 (en) | Computer data product license installation / update confirmation | |
US5479612A (en) | Automated system and method to discourage access of unlicensed peripheral devices by a computer system | |
US20080300887A1 (en) | Usage Model of Online/Offline License for Asset Control | |
US20030181242A1 (en) | Method and apparatus for sotfware delivery and management | |
US20070174205A1 (en) | System, method and storage medium for license management | |
CN101331460A (zh) | 基于处理能力的实时基准对软件产品的使用进行计量的方法、系统和计算机程序 | |
CN101233486A (zh) | 用于激活驻留应用程序的方法、软件和设备 | |
WO2003034210A1 (en) | Limited time evaluation system for firmware | |
EP0870381A1 (en) | Try-before-you-buy software distribution and marketing system | |
EP1072973A3 (en) | Remote loading execution method, remote loading execution system, data processing apparatus, managing apparatus and computer readable recording medium | |
WO2009055040A1 (en) | Dynamic, secure software tagging for software asset management with respect to deployment, configuration, and usage | |
US20130167131A1 (en) | Computer operating system install time predictor | |
KR101431296B1 (ko) | 저장 장치에 저장된 컨텐츠의 인-플레이스 업데이트 방법 및 시스템 | |
US20130219190A1 (en) | Determine Authorization of a Software Product Based on a First and Second Authorization Item | |
CN102999349A (zh) | 一种软件升级方法 | |
GB2360376A (en) | Method and system for keeping files current in a network enabled computer | |
US6898555B2 (en) | Method for indicating the integrity of use-information of a computer program | |
JP4298736B2 (ja) | 情報処理装置、電子文書処理方法およびプログラム | |
JP2007058609A (ja) | データ処理装置、データ処理方法 | |
JP4319793B2 (ja) | 不正防止方法及び不正防止プログラム | |
US20090064089A1 (en) | System and Method for Autonomic Software Price Variation Via Application Virtualization and Streaming Technology | |
US20090144830A1 (en) | Secure digital content delivery system and method | |
JP2018072889A (ja) | 画像形成装置及びその制御方法 | |
Brown | Software portability |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |