用于自动启动和访问网络地址和应用程序的系统和方法

文档序号:6375135阅读:259来源:国知局
专利名称:用于自动启动和访问网络地址和应用程序的系统和方法
技术领域
本发明涉及自动启动(launching)网络地址和应用程序。更具体而言,本发明涉及一种系统和方法,用于自动启动一个或多个应用程序和/或一个或多个网络地址以及自动登录到在获得访问某些数据或网页之前需要用户验证数据的网站。
背景技术
近年来,对计算设备、因特网和万维网的使用已显著增加。因此,用户往往有帐户并可访问许多网络地址,例如在获得访问网站之前需要输入某些用户验证信息或某些特权数据的网站。举例来说,用户验证信息通常包括诸如用户名之类的用户标识、密码以及可选地一个特定问题的答案,所述答案是用户先前已经回答过的而其他用户未必知道。用户通常使用许多不同的用户名和密码访问许多不同的网络地址,而很难记住用于访问每个不同网络地址的用户验证信息。
另外,计算设备的用户经常启动许多用于访问数据文件的应用程序和许多用于访问许多网络地址的浏览器。用户通常为他们希望打开的每个可能的数据文件手动地启动应用程序,并为他们希望访问的每个网络地址手动启动多个浏览器。手动地启动每个文件、网络地址和登录的过程会是一个非常麻烦和耗时的过程,并且经常导致用户失败。
大多数现代操作系统包括某种在开机时自动启动选择的用户级的应用程序的能力,也就是在操作系统已导入、加载必要的驱动程序等的时候。然而,在开机时的这种自动启动只对不需要用户动作的应用程序起作用,所述用户动作例如是输入诸如用户的登录名、密码等之类的特定的访问信息。
目前,可获得与上述问题的各个方面相关的多个产品和服务。例如,一种这样的服务是“Yodlee”,其在网站http//www.yodlee.com上可获得。然而,Yodlee需要用户手动地启动对Yodlee网站的访问,然后从Yodlee支持站点的列表中一次一个地选择用户想要访问的每个网站,以及需要用户输入秘密的和个人的信息,并将该信息存储在与用户计算机分离的远程计算机服务器上。许多用户由于侵犯了他们的隐私而反对Yodlee,并对于与用于销售和其他目的的第三方共享他们的个人信息十分担心。另一种这样的产品是“Gator”,其在http//www.gator.com上可获得。然而,Gator比Yodlee需要用户手动地处理更多的访问和登录步骤,遭受许多相同的隐私顾虑,并且也可以将某一“spyware”安装在例如用户的计算设备上,以跟踪用户的动作并通过网络将它们报告给第三方。在因特网范例中,spyware实质上是安装在某人的计算机上以收集有关用户及其动作的信息,并在用户不知道的情况下将其传递给广告商或其他感兴趣的第三方的程序。
另外,其全文被并入本文中以供参考的美国专利No.5,995,965,除了其包括通过插入智能便携式设备如智能卡启动的自动访问之外,还涉及以上所讨论的技术。
因此,所需要的是一种系统和方法,用于同时自动启动对一个或多个用户选择的网络地址和/或计算应用程序的访问,同时需要最小限度的用户输入或动作。本发明提供了这样的一种系统和方法。

发明内容
在本发明的一个实施例中,用户只需要在开始自动启动之前输入密码或个人身份号码(PIN)或生物测定(biometric)信息。该系统和方法以一种安全和保密的方式运行,并且将用户的个人和秘密信息只存储在用户自己的计算设备上,而不是存储在远程服务器上。另外,该系统和方法提供自动启动应用程序的能力,以使它们访问由特定应用程序产生的特定数据文件。例如,微软Excel应用程序能够自动被启动以打开一个或多个特定Excel数据文件,并且该系统和方法能够使用户自动登录到使用相同系统的一个或多个个人在线账户(例如电子邮件账户、股票经纪账户)。而且进一步,该系统和方法自动向某些网络地址提供用户验证数据(如果必要的话),例如用户名和密码,并通过计算机网络通信。
本发明一方面包括一种用于自动启动一个或多个应用程序的计算机化的系统,该系统包括用于检索一个或多个存储的网络地址的检索模块,用于启动一个或多个应用程序以访问一个或多个存储的网络地址的应用程序启动模块,以及一个登录模块,用于在没有用户输入的情况下通过将用户验证数据提供在登录输入栏中来自动使用户登录到网络地址。本发明另外包括这样的系统,其中应用程序启动模块进一步启动一个或多个应用程序以访问一个或多个用户数据文件。本发明另外包括这样的系统,其中用户选择的一个或多个网络地址包括一个或多个网站统一资源定位器(URL)。
本发明的另一方面包括一种自动启动一个或多个应用程序的方法,该方法包括检索一个或多个存储的网络地址,启动一个或多个应用程序以访问该一个或多个存储的网络地址,以及在没有用户输入的情况下自动使用户登录到网络地址,如果需要的话包括将用户验证数据提供在登录输入栏中。本发明另外包括这样的方法,其中应用程序启动模块进一步启动一个或多个应用程序以访问一个或多个用户数据文件。本发明另外包括这样的方法,其中用户选择的一个或多个网络地址包括一个或多个网站URL。本发明另外还包括这样的方法,其中该方法在系统启动时执行。本发明另外还包括这样的方法,其中该方法进一步包括在检索一个或多个存储的网络地址之前输入用户的用户验证信息。


图1是一个示例网络和计算机设备配置的系统图,根据本发明的自动启动和登录系统可以在其中运行。
图2是本发明优选操作的主要步骤的流程图。
图3说明启动控制窗。
具体实施例方式
广义来讲,本发明包括用户计算机中的计算机可执行的软件模块,所述软件模块自动开始(启动)一组过程,包括输入任何需要的访问数据,例如用户名、密码等,以及可选地根据需要激活与过程相关的数据文件。所述过程可以是网页浏览器、应用程序等。本发明允许对被自动启动(同时从用户的角度)的过程在类型和数量上的大幅度改变;事实上,用户能够使用常规输入(例如键盘或语音输入、鼠标或触摸板移动等)手动启动的任何过程或过程组都能够被指定使用本发明进行自动启动。
在本发明的优选实施例中,该系统同时自动启动对一个或多个用户选择的网络地址和/或计算应用程序的访问,而同时需要最小限度的用户输入或动作。该系统和方法以安全和保密的方式运行;用户的个人和秘密信息优选地不是存储在远程服务器上,而是只存储在用户自己的计算设备上,例如个人计算机(PC)、个人数字助理(PDA)、网络使能的蜂窝电话、机顶盒、嵌入式系统或其他有线或无线计算设备。
另外,该系统和方法提供自动启动应用程序的能力,以使它们可选地访问由特定应用程序产生的特定数据文件以及可选地为应用程序提供验证信息。例如,微软Excel应用程序能够自动被启动以打开一个或多个特定Excel用户数据文件,如果访问文件需要的话,包括任何验证数据,例如密码。而且进一步,该系统和方法自动向某些网络地址提供用户验证数据(如果需要的话),例如用户名和密码,并在计算机网络上进行操作,所述计算机网络例如是局域网(LAN)、广域网(WAN)、拨号连接、企业内部互联网、因特网、公共或专用网络、虚拟个人网络(VPN)或任何多个其他类型的计算机网络。
在一个实施例中,该系统和方法提供一种基于客户端的解决方案,其中用户的数据(包括网络地址,例如网站统一资源定位器,也就是URL,需要的任何访问和验证数据等。)通过本地计算设备存储或存储在本地计算设备上。在这个实施例中,自动登录特点可以通过栏域(field)检测、匹配(或从远程服务器或甚至从本地存储文件中下载登录信息)并填写栏域中的数据,以及通过自动发送用户登录事件来实现,所述用户登录事件例如是键入“回车”或点击计算机鼠标。
上述实施例提供了许多有利的特点和能力。例如,一个这样的特点包括大大地增强用户保密性,因为个人和秘密数据未存储在远程服务器上而代之以存储在用户的计算设备上。另一个有利的特点包括用户对用户数据的控制,因为用户保存并控制她自己的数据,而不是让第三方组织访问该数据。
在替代实施例中,该系统和方法提供一种基于服务器的解决方案,其中用户的数据(如果需要的话包括网络地址,例如网站URL,以及如果需要的话包括用户登录验证数据,例如用户名和密码)存储在远程服务器上。该实施例虽然仍提供自动启动和登录一个或多个网络地址而需要最小限度的用户输入的优点,但不提供将用户的个人和秘密信息存储在用户的计算设备上的保密性优点。
访问某一网络地址需要的用户验证数据将通常包括用户名和密码。然而,验证数据也可能包括下述的任何组合数字认证,数字签名,生物测定信息,例如指纹、视网膜或其他眼部扫描、语音识别、或其他能够被检测和验证的可测量的身体特性。
在另一个实施例中,可能需要用户验证信息的一个或多个网络地址可以被同时访问,并且之前本地存储在他们使用的计算设备上或存储在远程服务器上的URL和用户的验证信息(再次,如果需要的话)被自动地输入和提交到网络地址。一旦登录过程结束,则用户获得对网络地址的访问。用户不必为各个网络地址手动输入任何需要的验证信息,并且不必向服务器手动地提交任何需要的验证信息以获得对网络地址的访问。用户也不需要提供任何手动输入,例如按键或鼠标点击,以启动和打开一个或多个网络地址。
根据本发明的系统和方法为用户提供了能够同时访问多个网络地址和其他应用程序(也就是说,不需要中问的用户动作)的便利,为用户节省了不得不记住和手动输入特定网络地址的时间和工作,并且当需要必要的验证信息来访问网络地址时,避免了不得不手动提交验证信息的工作。
图1说明用于实施本发明优选实施例的主要硬件和软件组件。如同大多数计算机一样,用户的计算机既包括系统硬件100又包括系统软件110。系统硬件将包括一个或多个处理器101,某种形式的非易失性存储器,例如一个或多个磁盘102,以及一个或多个设备,例如将计算机连接于网络160的网络接口卡(NIC)103。诸如键盘105和鼠标106的标准输入设备通常也以常规方式被连接到系统硬件。其中计算机是诸如PDA或蜂窝电话之类的设备,非易失性存储设备和输入设备当然是这样的系统中那些标准的设备。
根据本发明任何给定使用的需要,也可以将便携式数据存储设备108的阅读器107连接到用户的计算机。便携式数据存储设备108可以完全是无源的,例如一个简易的软盘、磁条卡等,或者它可以是至少部分有源的,例如能够包括计算机可执行代码的智能卡。显示器(看得见,听得见,或两者的结合)109也将连接到系统硬件;而且,这当然是公知的。
通常是高速RAM的存储器120也包括在用户的计算机中。尽管通常被认为是系统硬件100的一部分,但是存储器120在图1中被单独示出,以使得更容易理解本发明软件组件的功能。
系统软件110将包括某种形式的操作系统112,其操作和功能都是公知的。值得注意的是,几乎所有包括执行代码的处理器的设备也将包括某种形式的系统级内核,所述内核用作用户级应用程序和包括处理器本身的物理系统资源之间的接口。例如,甚至网络使能的蜂窝电话也包括一个接受用户指定的地址或文件名并根据适当的协议将它们提交至其无线网络的程序。如在这个应用中所使用的,术语“操作系统”包括所有这种系统级的资源分配软件层。
本发明示例为在单个标准个人计算机中实现,因为预期这是将本发明包括在内的最普遍的配置。然而,任何类型的计算机系统都可以受益于本发明。在这种情况下,“计算机”包括便携式设备,例如“个人数字助理”和甚至现代蜂窝电话,其中许多都有诸如网页浏览、游戏等之类的功能;更大的系统例如服务器、大型计算机等;以及其他系统例如电视机顶盒。
此外,图1中所示的许多硬件和/或软件组件可以是分布式的或分离的。例如,存储器120可能是在通过因特网远程连接的服务器中,或者它可能是可移动存储介质,例如闪存卡、“记忆棒”、智能卡等。
成千上万的不同类型和名称的应用程序120中的任何一种都可以加载到用户的计算机中。通常,定义每个这样的应用程序的代码和数据都存储在非易失性存储器(例如磁盘102)中,直到操作系统112将其全部或部分加载至存储器120中用于执行。为了通过网络165访问和查看内容,通常在用户的计算机中将包括一个或多个浏览器132。
操作系统112通常将浏览器当作任何其他应用程序。但是,浏览器132被单独示于图1中以强调本发明的独特功能,即自动启动和“登录”在一个或多个远程服务器160上的普通应用程序和站点,所述服务器不仅可以存储(host)网页内容(例如网站和页面162)、数据库等,也存储诸如用户和成员账户入口(protal)之类的组合。
本发明包括自动启动(包括如所需要的自动登录)实用或应用程序150,该实用或应用程序又包括各种模块151-158,其中某些是可选的,这些模块实现了本发明的不同特点,并在下面进行描述。所有或其中任何一个模块151-158都可以简单地实施为可执行代码的较大实体之内的子例行程序,所述可执行代码总体上构成了自动启动应用程序150。由以下对这些模块中每个的功能的描述,熟练的程序员将能够创建模块151-158。自动启动应用程序能够以任何通常方式被安装到用户的计算机中,例如通过加载CD-ROM盘、通过下载等。
在本发明的操作期间,通过从磁盘加载信息或作为用户的直接输入的结果,将各种类型的信息加载到存储器120中。图1中说明了三种存储器结构122、124、126启动列表122,其包括识别使用本发明将要自动启动哪个过程的信息;网络地址如URL的列表124,浏览器或其他网络访问软件能够将其用于访问远程存储的内容(例如,存储于其中一个服务器160中);以及一组访问和验证数据126,例如用户名、密码、数字密钥等。所示例的存储器结构122、124、126中的每个通常都存储为磁盘上或某一其他非易失性存储介质上的一个或多个文件,并接着在自动启动应用程序本身被启动的时候被加载到存储器中。所有的结构122、124、126(以及本发明使用的任何其他参数)都可以存储为单个文件,只要该文件以检索存储的信息的模块152已知的方式被构造。
用于自动启动和访问的信息类型当然将取决于将要启动的应用程序的类型。例如,如果没有网站将被自动访问,则没有必要检索网络地址。
图2是显示根据本发明的系统的主要动作的流程图。本发明的主要过程步骤是步骤200本发明是自启动的。这可以自动或手动完成。对于自动启动,自动启动模块150可以包括在操作系统所使用的标准启动列表中。也可能将根据本发明的自动启动模块包括作为系统软件自身的一部分,以使其与其他系统级过程一起在引导期间加载。假定连接了适当的硬件,则自动启动也能够通过某种其他方式来激活,例如通过插入钥匙或智能卡、通过成功的指纹或视网膜扫描、通过语音识别等。
对于手动启动,可以在用户的桌面或系统托盘上、或在工具条上、或在某一列表中产生图标;当操作系统检测到用户对该图标(或程序名称)的选择时,则其将启动自动启动应用程序150,就像它是任何其他程序一样。也可需要输入用户名和/或密码(或使用生物测定输入的成功验证等)来激活根据本发明的自动启动应用程序。因此,优选地包括起动模块151作为对操作系统112的接口并解释用户的手动输入以激活自动启动程序。
步骤205一旦被启动,自动启动程序需要了解将要被启动的是什么,以及如何将其启动。本发明可以用于自动启动任何数量(包括没有)的浏览器或浏览器实例,以及任何类型和数量(也包括没有)的其他应用程序。值得注意的是,并不是所有自动启动的应用程序都需要对用户来说是“可见的”;相反地,诸如在在后台运行的抗病毒或性能监控软件之类的应用程序也可以利用本发明而被自动启动。
用户经常希望自动启动一个或多个非浏览器的应用程序,例如字处理程序、电子制表软件等。尽管每个这样的应用程序都可以打开是“空白的”,但是通常对于用户更有帮助的是应用程序以某些加载的和“现成的”相关数据文件开始。例如,用户可能希望他最后打开的文件将与应用程序一起打开。因此,任何想要的数据文件的定位器(文件名称和/或地址)优选地与启动列表122中的各个应用程序一起保存。值得注意的是将要打开的数据文件可以是远程存储的;在这种情况下,定位器将包括所需的网络地址。
类似地,尽管很可能在没有任何自动网络访问的情况下启动浏览器,但是当一个或多个网站或网页也被自动访问时本发明是最有用的。因此,启动列表122包括允许操作系统促使浏览器被自动启动的信息(通常是登录地址)。因此,地址(例如URL)组124也优选地以任一用于将这些地址与浏览器相关的标准数据结构存储于存储器中。某些浏览器,例如微软的因特网浏览器在任何给定时间都只有一个远程地址“激活”,因而如果一个人想要有多个网页出现在屏幕上,则必须打开多个浏览器实例。诸如Opera之类的其他浏览器允许在一个单个浏览器实例中访问多个网页(URL)并将其打开。两种类型的浏览器都可以利用本发明而被自动启动。
本发明也可以用于自动启动包括浏览器的应用程序,其地址或其他定位器记录在远程数据库中。可以以类似于访问特定网页的方式实现对这种数据库记录的访问。这里“数据库”的概念包括如用户账户信息之类的这种站点/结构,其相应的启动信息通常包括网络地址和识别至少一个远程存储的数据文件的描述符。
总之,不预先假定网络连接的应用程序(例如字处理器)通常与将要打开的一个或多个数据文件(例如文档)相关联;访问网站不仅预先假定某种形式的浏览器或类似的接口软件,而且预先假定站点的某个标识符(例如URL);访问数据库记录预先假定某种形式的记录或文件标识符;等等。简言之,可以利用本发明自动启动的每个类型的过程通常(但不是必要的)也具有某些与其相关的其他次要信息以便重建用户更喜欢的工作环境。总的来说,用于识别文档、网络地址、记录等的信息称为“相关的启动数据”。
步骤210在许多情况下,不输入用户指定的或其他安全信息,应用程序或数据文件或网页就不能被启动或打开或访问。通常这种信息包括用户名、密码或其他验证代码、数字签名、或甚至诸如指纹之类的生物测定信息。对于利用本发明要被自动访问的每个应用程序、文件、网页等,相应的访问/验证数据优选地以任何适合的数据结构126存储于存储器中。
在通过网络160能够对任何事物访问之前,当然必须要对网络打开连接。存在两个普通类型的连接,即需要特定用户动作的连接,例如拨号调制解调器,以及“一直连接”(在系统导入时由操作系统自动启动)的连接,例如DSL、电缆连接等。在启动诸如浏览器之类的任何涉及网络的应用程序之前,在自动启动程序内的网络连接模块153优选地确定用户的计算机是否具有激活的连接,以及包括何种类型的连接。可以使用已知的软件技术来完成这项工作。如果需要用户动作来建立网络连接,则网络连接模块153优选地指示用户接口157(参照下面)来调用合适的登录窗口,其通常由操作系统生成。
注意到像任何其他程序一样,打开网络连接通常包括运行用户级的程序。例如,大多数现代操作系统允许用户定义和配置任何数量的网络连接。然后一个图标或至少一个名称与每个配置的连接相关联。连接配置可以(但不必要)包括存储诸如用户名和密码之类的访问信息。为了启动连接,用户点击相应的图标,从列表中选择连接等等,于是操作系统像启动任何其他程序一样启动连接程序。已知的操作系统信号也可用于用户级的程序,以使它们知道存在激活且可用的网络连接,无论它是手动打开的还是一直连接的。
当受保护的应用程序、网页等被启动或访问时,它通常将产生(在其自身或通过操作系统中的实用程序)至少一个具有用户要填充和提交的具有登录数据输入栏的窗口或屏幕。建立网络连接的程序通常也产生这种窗口,以便首先建立网络连接。当然,总是需要用户填充这种信息将会使自动启动的概念失效;因此,优选地包括栏域检测模块157以检测这种输入栏域的形式(或只是需要输入数据),并且优选地包括“自动填充”模块154以自动输入和提交所需数据。值得注意的是,许多受保护的程序(包括控制网络连接的那些程序)已经使用户能够检查方框或指示输入的用户名和密码应该被记住以供将来使用。本发明进一步采取这样一个步骤—不仅自动“填充”和提交信息,而且需要该信息的应用程序也可以在没有特定用户动作的情况下被启动。
一旦从启动列表122中识别了所有要打开的应用程序(包括浏览器),则所有需要的文件标识符(和/或网络地址)已被检索,并且所有访问信息(如果有的话)已被正确地输入(这是可以延迟到需要为止的步骤),启动模块155被激活,该启动模块155将启动信息提交给操作系统,操作系统又加载所选择的应用程序和文件、以及浏览器和定位器(例如URL)。换句话说,为了打开想要的浏览器和其他应用程序,用户需要执行的所有步骤和所有数据输入都由启动模块自动执行,该启动模块通过其标准的应用程序接口将相应的输入提交给操作系统。
根据为此而包括的任何协议,操作系统接着利用从存储区域124检索的任何相关的网络地址来访问网络160。一些所选择的网站(或数据库或账户站点等)可能需要登录信息。以下载的html(或其他,例如Java)代码的形式向浏览器表示该需要,并且这种需要是可由用户级的过程如栏域检测模块156检测到的。自动填充模块154接着检测每个栏域需要什么登录信息,并将需要填充至栏域的具有正确验证和/或访问数据的密钥(或其他输入)序列提交至操作系统,所述验证和/或访问数据在存储区域126中可获得。一旦所有这样的信息被提交至每个网络地址,则用户计算机的状态就好像他已经手动地激活了所有需要的应用程序和文件、浏览器和网站。
步骤215在这一点上,用户可以使用已经自动为她打开的任何文件和站点来开始一个工作段(session)。接着,根据本发明的自动启动程序150可以只监控用户的动作或保持空闲直到用户调用(例如,通过点击为此而设定的图标),以便改变在存储区域122、124、126中存储的自动启动信息。
步骤220用户当然可以选择与计算机一起终止她的工作,或者停止本发明而继续其他工作。由于自动启动程序是用户级的过程,所以如果用户选择关闭计算机,则操作系统将停止并卸载该过程,就像任何其他过程一样。作为选择,用户能够以任何普通的方式专门地关闭自动启动程序,例如通过选择程序并点击标准“关闭”按钮(通常在激活窗口的右顶端示为“X”)或者点击由自动启动程序自身为此专门显示的图标或按钮。如果关闭了,则该程序将到达其当前段的操作的终点250。
步骤225假定用户想更新他的自动启动列表或参数。使用任何传统的方法,例如点击图标,用户接着可以打开用户接口157以显示控制窗口。图3中示例了这种控制窗口300的一个例子。如所示,除了诸如那些最小化、关闭和调用帮助例行程序之类的标准窗口图标之外,接口157显示了当前选择用于可能的自动启动的所有应用程序、网络地址等的列表305。
各种图标、按钮等都包括在内以提醒用户每个列出的过程的状态。例如,诸如小火箭之类的符号306示于每个过程的邻近处,以表示该过程利用本发明被设置为自动启协。也可以包括锁定图标307以表示该站点也被设置为自动登录(例如,利用用户名和密码)。优选地,包括邻近于列出的过程的标准单选按钮308或类似的图形设备,以指示哪个过程当前被选择以用于编辑或其他更新。值得注意的是,过程可以被列于控制窗口300中,但不标记为自动启动;图3中一个这样的过程示为“预算文件”。例如,先前为自动启动选择的过程可能已被取消选定。如果用户想要完全删除它,则他可以选择它并点击“删除”。
更新自动启动简档(profile)可以以两种方式中的一种(或两种)来实现手动或通过自动检测假定用户想编辑信息,例如用于访问网站或用于指定哪些文件要与字处理程序一起打开。用户通过从列表305选择过程的名称来编辑一个过程(例如网站或应用程序)记录,例如,通过查看邻近单选按钮或利用鼠标或类似的光标控制设备点击按钮。在图3中,用户已经选择了更新与他的电子邮件账户有关的信息。接着用户接口157可以产生并促使显示一个标准的对话框,在其中用户可以对诸如标题、URL、用户名、密码和所选择网站的自动启动/自动登录状态之类的这种验证和访问数据作出修改。
通过选择过程并点击诸如“删除”之类的按钮,可以从自动启动列表305中删除列出的过程。对该决定随后的确认使相应项也从启动列表122中删除。
图3中示例的“移动”按钮控制一个优选的特征,其中用户能够改变被列出和被自动启动的过程的顺序。优选地包括“执行(Go)”按钮以手动地打开当前所选择的过程。在其他情况中也具有以上这两个特点,并且可以利用已知技术来实现。
优选地,包括诸如“我的网页”和“我的应用程序”之类的按钮以使用户更容易了解本发明的特点,尽管它们是可选的;根据本发明给定应用的需要,当然也可以包括用于其他特点的按钮。点击“我的网页”和“我的应用程序”按钮使得基于网站或非网络的应用程序分别地显示于当前的显示列表305中。
步骤230包括在本发明优选实施例中的有利特点是在涉及向自动启动列表添加新过程时本发明的便利性和灵活性。添加过程可以是完全自动的、人工执行的、或者两者都是。
用于向自动启动列表122添加过程的本发明的优选实施例经由模块158使用自动捕获。假定用户已经打开了一个应用程序(具有任何想要的数据文件)和/或网页,并假定用户想把该过程环境(程序加上任何相关的打开的数据文件和/或网络地址)添加到启动列表122。换句话说,假定正在运行的过程是当前激活的,所显示的过程连同任何数据文件一起也是当前正在运行的。例如,用户当前可以利用具有三个打开的文档的字处理程序工作。因而所述程序就是激活的过程,而所述文档就是相关的启动信息。
值得注意的是,定义环境的数据对于使用操作系统的已知命令和查询的用户级应用程序而言是可访问的。根据本发明,用户可以仅仅通过点击“添加”按钮(或某一类似的图标)将过程及其相关的启动信息添加到自动启动列表中。因此,本发明提供了(但不需要)“一次点击”的添加过程的特点;然而,也可能需要用户通过额外的窗口来确认想要的添加。接着捕获模块从正在运行的过程的当前状态提取所有需要的参数以打开过程(通常是可执行文件名称和地址)以及当前相关的数据文件(通常通过文件名)。如果可获得的话,则模块也可以捕获打开过程所需要的任何登录信息。如果不能容易地获得,则如果诸如栏域检测模块156之类的其他模块被编程为跟踪用户输入以识别手动输入的登录信息,捕获模块也能够提取该信息。
接着优选地,将当前正在使用的过程添加至当前显示的列表305中,以使得在提取的参数被输入到数据结构122、124、126以供下次根据本发明激活自动启动程序时使用之前,用户有机会改变主意。可选地,或者另外,用户接口157能够向用户显示一个确认窗口,该确认窗口要求用户确认当前过程是否应被列入控制窗口300中以及该过程在接下来启动自动启动程序150本身时是否应该被自动启动。一旦接受,则捕获模块158将捕获的数据输入到存储器中的适当的数据结构122、124、126中。
用户可以将自动捕获所提取的信息保持不变,或他可以对其进行编辑。例如,用户可能想要改变在“标题”栏域中当前网站记录的名称并指定一个名称以使他在多个账户的情况下能够更容易区分该名称与其他名称。
实现手动过程添加也是可能的。在这种情况下,当用户点击添加按钮时,传统窗口会被打开以允许用户手动地选择在自动启动列表122中包括的程序。标准操作系统例如保存用户可选择程序的最新列表(例如,在“开始”菜单上的微软窗口“所有程序”选项)。用户可以接着使用传统文件浏览以及“附加(attach)”命令选择程序以及适当类型的数据文件。值得注意的是,上述优选的自动捕获特点(在其中当前环境被捕获)避免了手动选择的不便和高得多的出错率例如,在电子制表程序中打开数据文件保证具有兼容的文件类型。
当然,在任何时候用户都可以通过点击“取消”按钮来放弃输入的改变。然而,点击“保存”则指示捕获模块将改变输入到存储器中。通过点击“关闭”,用户可以关闭所显示的自动启动控制窗口并继续利用当前运行的过程工作。
步骤235和240本发明的优选实施例不需要特定的用户动作—例如打开控制窗口300—以启动自动启动过程捕获。例如,假定用户第一次(以任何已知的方式跟踪)登录有密码保护的网站(或应用程序),或登录当前在启动列表122中包括的站点。这可以以任何已知的方式检测。
如果最近激活的过程对于根据本发明的自动启动应用程序150来说是新的,则接着应用程序(通过接口157)能够产生一个窗口以给用户机会通过点击适当的按钮或检查常规框来将该新过程添加到过程列表305和/或启动列表122中。参数输入和捕获可以如之前一样实现(参看步骤230)。
图2中所示的流程图并不完全;而是其他步骤也可以包括在根据本发明的自动启动实用程序的操作中。例如,实用程序优选地包括某些错误处理机制。例如,假定自动启动应用程序150是通过插入智能卡而自身启动的。存储在卡上的文件路径可能不再有效,或事实上,所列出的应用程序不再驻留于智能卡所插入的计算机上。因此,任何已知的机制被包括在自动启动应用程序150中以通知用户所列出用于自动启动的过程无论什么时候都不能被启动。例如,除了警告窗口之外,或者代替警告窗口,自动启动应用程序150可以向任何不可启动的过程给出一个特定的指示,例如控制窗口300中的特殊阴影,以及指示问题的某一消息。
如上所述,并不是在根据本发明的自动启动过程中使用的所有模块和数据结构都需要驻留于相同的计算机中。例如,也可能将启动列表122以及网络地址组和访问与验证数据组124和126保存在一个安全的远程服务器上,例如在公司的系统管理员或用户预订的服务的控制之下的一个服务器。
权利要求
1.一种用于启动在具有操作系统的计算机中的过程的方法,包括存储用于至少一个要被启动的过程的启动数据的启动列表;对于每个过程,存储启动过程所需的任何访问和验证信息以及相关的启动数据,所述相关启动数据识别与要被启动的任何过程相关的次要信息;当检测到启动事件时自动检索在启动列表中用于每个过程的启动数据,以及用于每个过程的相关启动数据;以及自动启动在启动列表中每个过程的执行,以及自动检索每个启动的过程并将其与对应的次要信息相关联。
2.如权利要求1所述的方法,其中至少一个要被启动的过程包括访问至少一个远程站点,进一步包括通过网络自动访问远程站点,每个远程站点的网络地址包括该过程的次要信息。
3.如权利要求1或2所述的方法,进一步包括自动检测当前运行的过程的标识信息及其当前的次要信息;以及根据用户的确认,自动存储访问信息和当前的次要信息,用于随后在检测到启动事件时自动进行启动。
4.如权利要求1-3中任何一项所述的方法,进一步包括自动检测当前正由用户手动启动的过程的识别信息;根据用户的确认,自动存储当前正由用户手动启动的过程的识别信息作为访问信息,用于随后在检测到启动事件时自动进行启动。
5.如权利要求1-4中任何一项所述的方法,其中次要信息包括访问和验证信息,例如密码;以及自动启动每个过程的执行的步骤包括自动提交次要信息。
6.如权利要求1所述的方法,包括同时自动启动两个或多个过程,也就是说,不需要中间的用户动作。
7.如权利要求6所述的方法,包括自动地和同时地启动访问网络内容的过程和只访问本地存储的文件的过程。
8.一种用于启动在具有系统硬件(100)、系统软件(110)和存储器(120)的计算机中的过程的系统,包括用于至少一个要被启动的过程(130;132)的启动数据的启动列表(122);启动过程所需的任何访问和验证信息的存储组(126),以及识别与要被启动的任何过程相关的次要信息的相关启动数据组;自动启动软件模块(150),其包括计算机可执行代码,当检测到启动事件时自动检索在启动列表中用于每个过程的启动数据,以及用于每个过程的相关启动数据;以及自动启动在启动列表(122)中每个过程的执行,以及自动检索每个启动的过程并将其与相应的次要信息相关联。
9.如权利要求8所述的系统,其中至少一个要被启动的过程包括访问至少一个远程站点(162);系统硬件包括网络连接设备(103),其形成计算机与网络(160)之间的接口;存储器(120)包括网络地址的列表(124);自动启动软件模块(150)包括计算机可执行代码,用于通过网络(160)自动访问远程站点,每个远程站点的网络地址包括该过程的次要信息。
10.如权利要求8或9中所述的系统,其中自动启动软件模块(150)进一步包括计算机可执行的用于自动检测当前运行的过程的标识信息及其当前的次要信息;以及根据用户的确认,用于自动地将访问信息和当前的次要信息存储于存储器(120)中,以备随后在检测到启动事件时自动进行启动。
11.如权利要求8-10中任何一项所述的系统,进一步包括至少一个连接到系统硬件(100)的输入设备(105,106,107,108),用于用户的手动输入;自动启动软件模块(150)还包括计算机可执行代码,用于自动检测当前正由用户手动启动的过程的识别信息;以及根据用户的确认,自动将当前正由用户手动启动的过程的识别信息作为访问信息存储于存储器(120)中,以备随后在检测到启动事件时自动进行启动。
12.如权利要求8所述的系统,其中自动启动软件模块(150)同时自动地启动两个或多个过程,也就是说,不需要中间的用户动作。
13.如权利要求8所述的系统,其中自动启动软件模块(150)自动启动通过网络(160)访问内容的过程和只访问本地存储的文件的过程。
全文摘要
提供一种系统和方法,用于同时自动启动一个或多个计算机可执行过程(例如网络浏览器和其他应用程序),同时需要最小限度的用户输入或动作。该系统和方法运行安全且保密,并提供自动启动过程的能力,以使它们访问与每个过程相关的特定用户数据文件或网络地址,即使这种访问需要输入诸如密码之类的验证或访问信息。
文档编号G06F9/46GK1732452SQ200380107508
公开日2006年2月8日 申请日期2003年10月24日 优先权日2002年10月25日
发明者贝蒂纳·埃克斯珀顿 申请人:贝蒂纳·埃克斯珀顿
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1