基于状态的计算机帮助实用应用的制作方法

文档序号:6656536阅读:151来源:国知局
专利名称:基于状态的计算机帮助实用应用的制作方法
技术领域
本发明一般涉及计算机帮助实用应用。
背景技术
为了确定什么数据输入或设置是完成计算机上进程(process)所必需的,一些计算机帮助应用显示文本以供用户阅读。当例如用户在特定显示的控件上移动指针(例如鼠标指针)时其他帮助应用显示帮助信息。但是按本文更高要求地认识到的,文本文件常常使用户产生混淆,并且基于指针的帮助功能不向用户指示接下来要执行的步骤。
通过使用计算机帮助功能,用户可以与客户服务中心联系,与能够指导用户逐步完成特定进程并解释用户必须执行的各种数据输入选择的工作人员协作。遗憾的是,此类客户服务中心对于用户来说常常是难以联系的(例如因为呼叫量高)并且操作成本昂贵。基于上文更高要求的观察,提出本发明。

发明内容
帮助应用通过提供与数据输入步骤序列中每个步骤关联的信息以实时方式协助用户完成逐步进程。帮助应用通过确定该序列中用户需要帮助的特定步骤来提供基于上下文的功能。帮助应用通过基于用户在一个或多个特定步骤中的操作进行转移来提供基于上下文的功能。
因此,公开一种帮助实用应用,该帮助实用应用在计算平台上执行。帮助实用应用包括用于多个动作的编码的指示(instruction),这些动作包括显示与第一用户交互情况关联的第一指示显示框。如果需要的话,第一指示显示框可以包括与要通过第一数据输入域输入的数据关联的文本指示。该方法动作还包括自动显示第二指示显示框,该第二指示显示框与第二用户交互方案关联,其中该第二指示显示框包括与要通过第二数据输入域输入的数据关联的文本指示。第二指示显示框的自动显示基于通过第一数据输入域的数据输入的完成。
在一些实施例中,与要通过第二数据输入域输入的数据关联的文本指示基于通过第一数据输入域已经输入的数据。帮助实用应用的方法动作还可以包括显示以可视方式将指示显示框与数据输入域关联的一个或多个指示符。
在另一个方面,计算机帮助实用应用包括用于确定客户设置应用的状态的组件、以及用于以实时方式确定与该设置应用相关的下一个步骤的组件。提供用于响应以实时方式进行确定的部件、在下一个步骤中输入数据时呈示帮助信息的组件。
在本发明的第二方面的非限定性实现中,用于确定状态的组件将正在显示给用户的客户进程(client process)窗口与帮助指示相关联。帮助实用应用可以使用脚本,该脚本包含可能需要帮助的客户应用的步骤。与客户应用中的步骤相关的帮助实用应用所关联的信息可以包括如下项的一个或多个显示指示的文本或向用户显示的询问、标识当前步骤的窗口或控件、对可以运行测试以确定下一个步骤应该是什么的功能的描述、以及基于客户应用的状态来指示跳到脚本的各种其他部分中的哪里的转移/派生信息。还可以运行测试以确定计算机硬件和/或软件(例如无线卡)的各种状态和/或能力。
在本发明的第二方面的另一个非限定性实现中,帮助实用应用使用插入到客户应用的消息队列中的钩子自动步进到脚本中的不同部分。该钩子搜索在执行预定动作时发生的标准窗口消息的子集。预定的动作可以包括窗口状态信息和对控件的用户动作。
或者,帮助实用应用可以使用探视(peeking)机制来自动步进到脚本中的不同部分,该探视机制按一定间隔触发,提前探视以确定用户是否已前进到客户进程的下一个步骤。探视机制可以通过确认用户操纵的按钮和/或确认已经关闭的旧窗口或当前窗口和/或确认已经打开的新窗口来前进到帮助实用应用的下一个步骤。
在再一个方面中,一种用于向用户呈示计算机帮助的方法,包括提供运行与至少一个客户应用相关的至少一个脚本的帮助实用应用。该方法还包括基于用户在客户应用中所在的位置,确定用户在客户应用中应该执行的下一个步骤。基于此,该方法标识脚本中的对应部分用于向用户显示帮助信息。
参考附图,可以最佳地理解本发明的有关其结构和操作的细节,其中相似的引用编号指代相似的部分,其中


图1是本发明体系结构的框图;图2是整个逻辑的流程图;图3和4是说明可以如何标识应用窗口的示意图;图5-7是图示根据本发明一个实施例的用户界面显示和关联的帮助应用功能的示意图;以及图8和9是图示根据本发明另一个实施例的用户界面显示和关联的帮助应用功能的示意图。
具体实施例方式
本文描述的实施例是说明多种实施例的。某些公知的功能和特征已从该描述中省略,以便更清晰地描述本发明。根据本文描述,以本领域技术人员所公知的多种方式执行编码,且它是例行程序。
最开始参考图1,示出计算设备10,它可以使用目前的帮助实用应用。计算设备10可以是任何适合的设备,例如桌上型计算机或膝上型计算机(例如索尼公司出品的VAIO计算系统)、游戏计算机系统、或便携式计算平台(例如,掌上型计算机、个人数字助理、蜂窝电话机等)。如图所示,计算设备10可以包括一个或多个输入装置12(例如但不限于键盘、小键盘、鼠标、游戏杆、跟踪球等)以及一个或多个输出装置14(例如但不限于监视器、打印机、网络等)。可以使用输入装置12将信息输入到计算设备10的处理器16,并且可以将来自处理器16的数据显示在输出装置14上(包括下文描述的显示屏)。如果需要的话,处理器16可以使用无线通信系统18、例如但不限于蓝牙、wi-fi、其他rf(例如CDMA、TDMA、GSM)或其他通信系统来与其他计算机通信。
根据本发明,处理器16可以访问软件实现的帮助实用应用20从而以实时形式向使用设备10的用户提供逐步的协助。作为非限定性示例,帮助实用应用20可以用于协助设置客户进程,例如用于控制无线通信系统18的无线通信系统应用22。
图2示出本发明的整体逻辑。由框24处开始,帮助实用应用20首先确定可能需要帮助指示的客户进程22的状态。在一个实现中,帮助实用应用20通过提示用户回答一个或多个询问然后检查用户对询问的应答来确定此状态。在另一个实现中,帮助实用应用20使用编码的函数来确定计算平台的状态。
对于后一种实现更具体来说,函数库可以包括在帮助实用应用20中以测试计算设备10中的某些状态并返回将告知帮助实用应用20转移到哪里的值。例如,如果检测到特定的错误,则帮助实用应用20将转移到帮助实用应用20的指示用户如何校正问题的部分。如果不存在错误,则帮助实用应用跳过对应的步骤。在任何情况中,这些函数无需编译,而是在运行时加载和卸载。
在确认计算设备10的状态时,帮助实用应用20可以标识例如客户进程22正在显示的特定窗口,并基于此来确定系统状态,并由此确定就用户必须执行的当前和下一个活动要向用户呈示什么相关帮助信息。许多操作系统提供称为“FindWindow(查找窗口)”机制,它将查找窗口提供的标题或类,当这足以唯一地标识当前窗口时,帮助实用应用将该窗口与相关的帮助信息相关。但是如本文所认识到的,特定窗口的标题和类可以是可变的,或太普通以致于无法唯一地标识窗口。在此情况中,帮助实用应用20使用窗口的附加特征。
为了更好地理解,参考图3和4,其中示出示范非限定性的窗口26,它可能具有标题名28或可能没有标题名28。附加特征可以包括窗口标签30,窗口标签30包含对于窗口26是唯一的文本字符串32。因此,附加特征可以包括从上至下的文本序列、控制ID和/或类-类型。例如,在无线设置窗口的其中之一中,当客户进程是通信系统应用22时,窗口的名称可以变化,具体取决于用户何时插入他的卡、他拥有多少张卡等,但是窗口具有文本字符串“使用窗口来配置我的无线网络设置”。因为另一个具有此相同字符串和相同从上至下级别的窗口的改变是次要的,所以使此特征与窗口26相关以标识窗口26。如果需要的话,为了增加唯一标识窗口的置信度,可以在单个窗口中使用多个锁存,例如还可以使用与文本字符串32一起出现的按钮34来标识窗口26。其他窗口标识特征可以不使用整个文本字符串,而是包括组合、级别、控制ID的散列。或者,可以将整个序列拆分成可以标识组合并由此标识窗口26的唯一的32位(或64位、128位等)的值。
回到图2,一旦帮助实用应用20确定特定进程的状态,则在框36,帮助实用应用20自动确定用户的下一个动作应该是什么。因此对于用户正在执行的特定进程中的每个步骤,帮助实用应用20可以转移到该进程中与该场合相适的不同部分。
更确切来说,包含需要帮助的客户应用22的进程步骤的帮助实用应用20可以使用脚本(例如使用XML编写的)。帮助实用应用20中与客户应用22中的每个步骤相关的帮助信息(称为stepinfo对象)可以包含如下信息的组合。stepinfo对象可以包含显示指示的文本或向用户显示的询问以及标识当前步骤的计算机上的窗口或控件如图5-7所示并且下文将对此作更充分的论述。stepinfo对象还可以包括对可以运行测试以确定下一个步骤应该是什么和要在何时显示它的函数的描述,以及充分将程序结合到正在监控的不同类型的窗口中的调节器(modifier)。而且,stepinfo对象可以包括转移/派生信息,该转移/派生信息基于系统的状态指示要跳转到该脚本的不同的其他部分。
因此,可以确定帮助实用应用应该自动步进到下一个进程和/或应该何时更改设置进程。不是让用户在下文进一步论述的帮助实用应用的动态设置窗口与对应的客户应用22窗口之间来回切换,而是可以确定用户何时已移到下一个步骤或他已更改的环境。这可以通过两种机制来实现。可以在帮助实用应用20正在其中呈现信息的当前客户应用22窗口的消息队列中插入钩子,此钩子查找执行共同动作时出现的标准窗口消息的子集。这些可以包括窗口状态信息(最小化、最大化、已关闭、已激活)以及用户对某些控件执行的动作(例如单击按钮)。可以使用的第二种机制是探视机制,该机制按间隔时间触发,提前“探视”以确定用户是否已前进到客户进程22中的下一个步骤。该探视机制可以通过查找已经被激活的用户交互元素、已经被关闭的旧窗口或当前窗口以及已经被打开的新窗口来前进到帮助实用应用的下一个步骤。
一旦确定了用户的下一个动作应该是什么,以及系统的当前状态是什么,则在框38显示如下文中进一步阐述的帮助信息。
现在参考图5-7,窗口100显示在例如图1所示的监视器14上。窗口100与客户进程22关联,客户进程22是例如用于配置WINDOWS操作系统内的无线网络设置的应用。在为说明目的示出的非限定性实施例中,窗口100可以包括三个域102、104和106,它们均要求用户输入的数据。这些域以及下文描述的一些相似域能以多种方式、例如直接输入和下拉菜单来接收数据。此类域也是对输入数据的其他方式、例如选择复选框或单选按钮的说明。
如图5所示,如果生成窗口100的应用准备在第一域102中接收数据,则帮助实用应用20生成包含文本指示的指示显示框108。指示显示框108中的文本指示告知用户要在第一域102中输入什么。为了进一步协助用户,指示符110可以从指示显示框108延伸到第一域102以强调指示显示框108中的文本指示与第一域102关联。在一些示例中,可以显示两个或两个以上指示显示框108,以便例如解释下拉菜单中呈示的多个可能选择。
一旦用户在第一域102中输入数据,则帮助实用应用20可以检查输入的数据以确定它是否正确。如果正确的话,则帮助实用应用20步进到与第二域104关联的数据。如果在第一域102中输入的数据是不正确的,则帮助实用应用20可以例如使用最初显示的文本指示或进一步提示用户输入正确数据的修订指示来重复显示指示显示框108。在一些实施例中,帮助实用应用20不检查第一域102中输入的数据(或第二和第三域104、106中输入的数据,下文对此予以描述)。
当用户在第一域102中输入数据(如图6的许多X所示)之后,第二域104准备接受数据。如图6所示,帮助实用应用20从显示屏移除指示文本框108以及其关联的指示符110,然后它显示包含另一组文本指示的指示显示框112。指示显示框112中的文本指示(未示出)告知用户要在第二域104中输入什么。为了进一步协助用户,指示符114可以从指示显示框112延伸到第二域104以强调指示显示框112中的文本指示与第二域104关联。
当用户在第二域104中输入数据(如图7的许多X所示)之后,第三域106准备接受数据。如图7所示,帮助实用应用20从显示屏移除图6所示指示文本框112以及其关联的指示符114,然后它显示包含另一组文本指示的另一指示显示框116。指示显示框116中的文本指示(未示出)告知用户要在第三域106中输入什么。为了进一步协助用户,指示符118可以从指示显示框116延伸到第三域106以强调指示显示框116中的文本指示与第三域106关联。
图5-7所示的显示屏是可以与根据本发明的逐步帮助功能结合使用的多种显示屏的说明。可以与两个或两个以上窗口一起使用该功能。
更确切来说,现在参考图8和9,可以与对于图5-7所示的窗口100所描述的相似的方式显示窗口200。如上所述,帮助实用应用20显示指示显示框206及其关联的指示符208以协助用户在第一域202中输入数据。但是不同于图5-7示范说明的实施例,如图9所示,用户正在完成的客户进程22可以要求通过第二窗口210中所含的域来输入数据。因此,用户正在完成的进程显示第二窗口210以替代窗口200或作为窗口200的附加窗口。由于第一域202中输入了特定数据(如图中许多X所示),所以可能显示该第二窗口210。例如如果在第一域202中输入了替代数据,则第二窗口210中显示的域可能是不同的。作为窗口210的显示的结果,帮助实用应用20显示包含协助用户在窗口210的域214中输入数据的文本指示(未示出)的指示显示框212,并且如果期望的话,指示符216可以从指示显示框212延伸到域214以进一步协助用户在域214中输入数据。如果窗口210域是不同的,则指示显示框212中的文本将与替代域关联。
因此,帮助实用应用20提供帮助用户输入必要的数据的上下文if-then功能特征。即,域202中的一次数据输入触发窗口210的一个实施例及其域214,然后提示帮助实用应用20在显示指示框212中显示一个指示集。或者,域202中的第二次数据输入触发窗口210的第二实施例及其域214,然后提示帮助实用应用20在显示指示框212中显示第二指示集。
帮助实用应用20以与上文描述的相似的方式继续协助用户完成窗口210的其他域中所需的数据。在协助用户完成窗口210之后,帮助实用应用20可以继续协助用户完成用户正在完成的进程所需的进一步输入,例如返回到窗口200、打开要求数据输入的另一个窗口或结束该进程。
因此根据本发明,用户在他或她完成例如在计算机中设置应用的进程时接收逐步的实时帮助。此外,该帮助是上下文相关的,因为帮助实用应用20确定已经完成了什么动作(如果有的话),并开始下一个必需的步骤的帮助功能。并且,帮助基于例如用户先前的数据域输入的if-then条件来转移。帮助实用应用20的该功能与提供帮助文件(常常在用户选择“帮助”控件的情况下在单独的窗口中显示的)以供用户阅读的系统或用户在特定控件上移动鼠标的情况下显示弹出帮助窗口的系统形成对照。
虽然本文图示并详细描述的特定“基于状态的计算机帮助实用应用”完全能够实现本发明的上文描述的目的,但是要理解的是它是本发明的当前优选实施例,并且因此作为通过本发明广义地构想的主题的典型表示,本发明的范围完全涵盖本领域技术人员会显见到的其他实施例,以及本发明的范围仅由所附权利要求来限定,其中除非明确声明外,以单数形式引用元素不意味着“有且仅有一个”,而是意味着“一个或多个”。对于设备或方法来说,并不一定要解决本发明尝试要解决的每个问题,才被本发明的权利要求所涵盖。而且,无论本文公开内容中的元素、组件或方法步骤是否在权利要求中明确引述,该元素、组件或方法步骤都不意味着要对公众开放使用。在本文没有明确定义的情况下,权项将提供不与本说明书和文档历史相背的所有普遍性和惯用含义。
权利要求
1.一种在计算平台(10)上执行的帮助实用应用(20),所述帮助实用应用(20)是用于多个动作的编码的指示,所述动作包括;显示与第一次用户交互关联的第一指示显示框(108),所述第一指示显示框(108)包括与要在第一数据输入域(102)中输入的数据关联的文本指示;以及自动显示与第二次用户交互关联的第二指示显示框(112),所述第二指示显示框(112)包括与要通过第二数据输入域(104)输入的数据关联的文本指示;其中所述第二指示显示框(112)的自动显示基于通过所述第一数据输入域(102)的数据输入的完成。
2.如权利要求1所述的帮助实用应用(20),其特征在于,与要通过所述第二数据输入域(104)输入的数据关联的文本指示基于通过所述第一数据输入域(102)已经输入的数据。
3.如权利要求1所述的帮助实用应用(20),所述动作还包括显示第一指示符(110),所述第一指示符(110)以可视方式将所述第一指示显示框(108)与所述第一数据输入域(102)关联;以及显示第二指示符(114),所述第二指示符(114)以可视方式将所述第二指示显示框(112)与所述第二数据输入域(104)关联。
4.如权利要求1所述的帮助实用应用(20),其特征在于,所述第一数据输入域(102)在第一窗口中显示,所述第二数据输入域(104)在第二窗口中显示。
5.一种帮助实用应用,包括用于确定客户设置应用的状态的组件(24);用于以实时方式确定与所述设置应用相关的下一个步骤的组件(36);用于响应以实时方式进行确定的组件、在下一个步骤中输入数据时呈示帮助信息的组件(38)。
6.一种用于向用户呈示计算机帮助的方法,包括提供帮助实用应用(20),所述帮助实用应用运行与至少一个客户应用(22)相关的至少一个脚本;基于用户在所述客户应用(22)中的位置,确定所述用户应该在所述客户应用(22)中进行的下一个步骤;以及基于此,标识所述脚本中的对应部分用于向所述用户显示帮助信息。
7.如权利要求6所述的方法,其特征在于,与所述客户应用(22)中的步骤相关的所述帮助实用应用所关联的信息包括如下项的两个或两个以上显示指示的文本或向所述用户显示的询问、标识当前步骤的窗口或控件、对可以运行测试以确定下一个步骤应该是什么的功能的描述、基于所述客户应用(22)的状态来指示要跳转到所述脚本的各种其他部分中的哪里的转移/派生信息、以及设备状态的确定。
8.如权利要求7所述的方法,其特征在于,所述帮助实用应用(20)使用插入到所述客户应用(22)的消息队列中的钩子自动步进到所述脚本的不同部分,所述钩子搜索执行预定动作时出现的标准消息的子集。
9.如权利要求7所述的方法,其特征在于,所述预定动作包括如下项的至少其中之一窗口状态信息和对用户交互控件的用户动作。
10.如权利要求7所述的方法,其特征在于,所述帮助实用应用(20)使用探视机制自动步进到所述脚本的不同部分,所述探视机制按一定间隔触发,提前探视以确定所述用户是否已经前进到客户进程中的下一个步骤。
11.如权利要求10所述的方法,其特征在于,所述探视机制通过如下操作的至少其中之一前进到所述帮助实用应用(20)的下一个步骤确认用户操纵了按钮、确认已关闭了旧窗口或当前窗口以及确认已经打开了新窗口。
全文摘要
帮助实用应用(20)通过提供与数据输入步骤序列中的每个步骤关联的信息来以实时方式协助用户完成逐步进程。帮助实用应用(20)通过确定用户需要帮助的序列中的特定步骤来提供基于上下文的功能。帮助实用应用(20)还通过基于用户在一个或多个特定步骤中输入的数据来执行分支以提供基于上下文的功能。
文档编号G06F3/00GK1989481SQ200580025323
公开日2007年6月27日 申请日期2005年7月12日 优先权日2004年7月29日
发明者F·L·-D·林, F·D·V·卡洛 申请人:索尼电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1