CN1790265B - 便携式应用程序 - Google Patents

便携式应用程序 Download PDF

Info

Publication number
CN1790265B
CN1790265B CN2005101250306A CN200510125030A CN1790265B CN 1790265 B CN1790265 B CN 1790265B CN 2005101250306 A CN2005101250306 A CN 2005101250306A CN 200510125030 A CN200510125030 A CN 200510125030A CN 1790265 B CN1790265 B CN 1790265B
Authority
CN
China
Prior art keywords
portable
portable applications
memory apparatus
applications
application program
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
CN2005101250306A
Other languages
English (en)
Other versions
CN1790265A (zh
Inventor
A·T·休斯
P·C·巴
A·Y·尼沙诺瓦
D·A·亚洛夫司基
J·A·伊斯特
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 CN1790265A publication Critical patent/CN1790265A/zh
Application granted granted Critical
Publication of CN1790265B publication Critical patent/CN1790265B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44584Portable applications, i.e. making applications self-contained, e.g. U3 standard
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

一种便携式存储设备包括接口以及一个或多个闪存。这一个或多个闪存存储一个或多个可执行文件,它们可由该设备所耦合到的主计算机执行,即使这一个或多个可执行文件包括访问环境设置的指令,也不改变主计算机上的任何环境设置。此外,在激活过程期间,应用程序被绑定到便携式存储设备。

Description

便携式应用程序
技术领域
本发明涉及存储器设备和应用程序,尤其涉及便携式应用程序。
背景技术
计算机已经在我们的生活普及,可以在我们的家庭和工作场所,以及诸如图书馆、机场、咖啡店等越来越多的各种公共场所找到它的身影。因为人们越来依赖计算机,他们在任何地方使用计算机的期望可能也在日益增长。例如,当用户在家或办公室以外的地方旅游时,他们常常期望访问那些他们习惯于从家庭或办公室访问的程序和/或数据。但是,这存在着问题,因为用户无法指望程序可在远离他们的家或办公室的计算机上使用,更无法指望他们所需的数据可在远离他们的家或办公室的计算机上使用。
可用来解决这些问题的一个解决方案是让用户购买并在旅行途中随身携带便携式计算机。但是,便携式计算机有其它的问题,因为它们可能过大过重而不便在旅行途中随身携带,过于昂贵而不利于购买,并且可能使用户成为偷窃的目标。
可用来解决这些问题的另一个解决方案是让用户在旅行时随身携带硬盘驱动器。这一解决方案也可能有问题,因为打开硬盘驱动器并断开到其计算机的连接,以及将硬盘驱动器安装到另一个计算机上需要相当大的力气;使得他们的计算机没有硬盘驱动器,从而通常无法使用;产生兼容性问题,因为要使硬盘驱动器在另一个计算机上工作可能需要大量重新配置;并且可能产生法律问题,因为用户可能不被允许打开和篡改公共场所的计算机。
可用来解决这些问题中的至少一部分的另一个解决方案是将数据存储到通用串行总线(USB)闪存设备中。这些USB闪存设备变得越来越常见,它们插在计算机上的USB端口中。这类USB设备允许用户将数据从一个计算机转移到USB设备,然后将该USB设备***另一个计算机并访问该USB设备上的数据。但是,此类USB设备仅仅解决了问题的一部分,因为它们通常仅仅用来存储数据。如果用户所使用的计算机没有正确的程序,那么数据通常不能以有用的形式供用户访问。
可用来解决这些问题中的至少一部分的另一种解决方案是让用户在旅行途中随身携带盘(通常是CD或DVD)上的程序,如果程序在他或她所使用的计算机上不可用,那么用户可将该程序安装到该计算机上。但是,此解决方案仅仅解决了问题的一部分,因为此类盘上通常没有存储用户的数据。此外,此解决方案还有其它问题,因为盘在某种程度上来说是易碎的,并且在旅行期间可能受到损坏,将程序安装到计算机上的过程可能是很耗费时间的(如果程序与计算机上运行的其它程序不兼容,则可能耗费更多时间),用户在计算机上可能没有足够使用权限来安装程序,此类多计算机上的安装常常违反程序的许可协议,并且计算机的所有者(特别是在公共场合)通常不想要人们将其自己的程序安装到计算机上。此解决方案的又一个问题是,当用户从计算机上卸载程序时,各种从未用过的注册信息、数据等常常被遗留。
因此,有一种改进的方法,让用户从一个计算机移到另一个计算机,并可轻易地访问他们所需的程序及可选地他们所需的数据将会是有利的。
发明内容
本文描述便携式应用程序。
根据某几个方面,便携式存储设备包括接口以及一个或多个存储元件。这一个或多个存储元件存储一个或多个可执行文件,这些文件可由该设备所耦合的主计算机执行,且即使这一个或多个可执行文件包括访问环境设置的指令,也不会改变主计算机上的任何环境设置。
根据另外几个方面,应用程序被绑定到存储一个或多个可执行文件的便携式存储设备,执行这些可执行文件将运行该应用程序。
根据另外几个方面,接收将便携式应用程序安装在耦合到计算机的便携式存储设备上的请求。便携式应用程序的一个或多个可执行文件被写到便携式存储设备中,关于便携式应用程序的信息被写到便携式存储设备上的专用存储中。
附图说明
全文使用相同标号来引用相同的组件和/或特征。
图1所示是可使用便携式应用程序的示例性环境的框图。
图2更详细地示出一种示例性便携式存储设备。
图3所示是一种用于执行便携式应用程序的示例性过程的流程图。
图4所示是一种用于激活便携式应用程序的示例性过程的流程图。
图5所示是一种用于将便携式应用程序安装在便携式存储设备上的示例性过程的流程图。
图6示出可使用本文所述的便携式应用程序的通用计算机环境。
具体实施方式
本文描述便携式应用程序。一个或多个应用程序被安装在便携式存储设备上。当便携式存储设备被***或者耦合到一计算机,该设备上所安装的便携式应用程序被自动检测,并可随同用户可能存储在该设备上的任何数据供用户使用。便携式应用程序不改变计算机上的任何环境设置,并且数据文件仍然保持在便携式存储设备上。用户从而可访问他或她所需要的应用程序,与此同时在他或她结束计算机的使用之后,不会导致环境设置的改变,也不会遗留任何数据文件。
图1所示是可使用便携式应用程序的示例性环境的框图。环境100包括便携式存储设备102和主计算机104。便携式存储设备102可被耦合到主计算机104以及多个其它计算机(图1中未示出),并可轻易地从其移除。便携式存储设备102可使用各种协议中的任何一种与主计算机104通信。例如,设备102可使用诸如USB版本1.0或版本2.0等通用串行总线(USB)连接,或使用诸如IEEE 1394a或1394b等IEEE 1394连接(有时称为固件),或使用个人计算机存储卡国际协会(PCMCIA)连接耦合到计算机104。或者,设备102可使用各种其它公有或私有的连接协议中的任何一种耦合到计算机104。
用来将设备102耦合到计算机104的连接协议通常是“即插即用”连接协议。即插即用连接协议指允许主计算机自动检测并将其自身配置成访问连接到该主计算机的***设备的协议。当***设备被***到计算机104,计算机104可自动标识并安装在计算机104上运行所需的任何设备驱动器或其它模块,以使在计算机104上运行的程序能访问***设备。
便携式存储设备102包括接口106以及一个或多个存储元件108,而计算机104包括处理器120、***存储器122(例如,随机存取存储器(RAM))、以及接口124。接口106和124允许设备102和计算机104根据连接协议相互传递信号。这些信号可以是数据信号和/或命令信号。
一个或多个存储元件108可由一个或多个各种不同类型的存储元件(诸如一个或多个闪存、一个或多个硬磁盘驱动器(例如,微驱动器)、一个或多个光盘驱动器、等等)组成。一个或多个存储元件108包括应用程序部分110和数据部分112。应用程序部分110可存储一个或多个便携式应用程序,它们可由计算机104的处理器120执行。便携式应用程序是被设计成从存储元件108运行、并且即使应用程序包括访问***设置的请求也不会改变主计算机104上的任何环境设置的应用程序。如以下将更详细讨论的,便携式应用程序通常也被绑定到便携式存储设备102。
数据部分112可存储一个或多个应用程序的数据。存储在部分112中的数据可供存储在部分110中的便携式应用程序和/或其它应用程序使用。
计算机104的处理器120与***存储器122和接口124通信以执行包括存储在存储元件108中的应用程序在内的应用程序。存储在应用程序部分110中的每一个应用程序都是可由处理器120执行(称为执行或运行该应用程序)的一个指令集。这些指令可由处理器120直接从存储元件108加载并执行,或者可在由处理器120加载和执行以前被转移到***存储器122中。还可在由处理器120执行这些指令以前将这些指令从存储元件108转移到计算机104中的一个或多个高速缓存存储器中。
可通过将便携式存储设备102***到计算机104,来将其耦合到计算机104。此设备102到计算机104的耦合可以是直接连接或间接连接。便携式存储设备102可被直接连接到计算机104,诸如设备102上的插孔或连接器被***到计算机104上的插孔或连接器。便携式存储设备102还可被间接地连接到计算机104,诸如通过一条或多条电缆或延长线路、一个或多个其它控制器(例如,USB集线器)、一个或多个其它***设备等方式。计算机104和便携式存储设备102之间的耦合可以是有线和/或无线的耦合。便携式存储设备102被称为便携式,因为它被设计成可由终端用户轻易地耦合到一个或多个计算机104,并可轻易地从其去耦合,并且可由用户轻易地运送。
当便携式存储设备102被耦合到计算机104时,计算机104自动检测设备102的存在。此检测是作为例如即插即用连接协议的一部分来执行的。一旦被检测到,便携式存储设备102即可被计算机104上执行的应用程序和操作***访问,以进行数据存储和应用程序执行。
在便携式存储设备102被检测到以后,计算机104自动访问设备102,并可运行存储在应用程序110部分中的任何应用程序,和/或给予计算机104的用户运行存储在应用程序部分110中的任何应用程序的选择。数据部分112也可被计算机104访问,以允许计算机104检索存储在部分112中的任何数据,以及将新的数据存储到部分112中。
许多当今的操作***包括适当的设备驱动器以允许访问便携式存储设备。如果当便携式闪存设备102被耦合到计算机104时这些设备驱动器未被安装,则安装这些设备驱动器(例如,作为即插即用控制协议的一部分)。但是,应当注意,不需要在主计算机104上安装任何其它的设备驱动器或其它驱动器或软件以使便携式存储设备102上的便携式应用程序被执行。例如,不需要在主计算机104上安装专属于任何特定便携式应用程序的、或便携式应用程序通用的驱动程序。
图2更详细地示出一种示例性便携式存储设备。便携式存储设备102包括接口106以及一个或多个存储元件108。存储元件108包括自动运行模块160、一个或多个应用程序文件162、专用存储164、专用本地概况166、以及数据区168。数据区168包括在图1的数据部分112中,而应用程序文件162包括在图1的应用程序部分110中。自动运行模块160通常包括在应用程序部分110中,尽管模块160或可包括在数据部分112中。专用存储164和专用本地概况166通常都包括在数据部分112中,尽管存储164和概况166或可包括在应用程序部分110中。
应当注意,便携式存储设备102不包括用于执行便携式应用程序的处理器。便携式存储设备102不是便携式或手持式计算机,相反,便携式存储设备102是存储设备。但是,在某几个实施例中,便携式存储设备102可包括为安全目的或加密使用的处理器,但该处理器并非用于执行存储在便携式存储设备102上的便携式应用程序。
自动运行模块160被执行以访问存储在便携式存储设备102上的应用程序。自动运行模块160是用哪些应用程序被存储在便携式存储设备102上的知识,或者用如何确定哪些应用程序被存储在便携式存储设备102上(诸如通过访问包括该信息的数据文件,扫描存储元件108以寻找应用程序模块,等等)、以及如何执行这些应用程序的知识来编程的。自动运行模块160随即可向便携式存储设备102所耦合到的主设备上的操作***标识哪些应用程序162应被加载并执行,以执行所期望的应用程序。所期望的应用程序可由例如用户选择,或可被自动编程到自动运行模块160中。
自动运行模块160可选地现实用户界面,该用户界面向用户呈现用于与便携式存储设备102交互的各种选择。这些选择可包括,例如,存储在便携式存储设备102上并可由用户运行的的应用程序列表,以及存储在便携式存储设备102上并可由用户访问(例如,读取、删除、复制、等等)的数据文件列表。用户界面还可担当用户拖放文件图标、以将对应文件复制到便携式存储设备102中的目的地。用户界面还可支持浏览功能,从而控制便携式存储设备102所耦合到的主设备上的操作***,以允许用户访问便携式存储设备102以及主设备的其它存储设备、甚至经由一个或多个网络耦合到主设备的其它存储设备上的不同文件夹或目录。
自动运行模块160还允许特定文件类型与设备102的特定便携式应用程序相关联。例如,一类文件可以是文件名以“.doc”结尾的文件,它们可与文字处理便携式应用程序相关联,而另一类文件可以是文件名以“.xls”结尾的文件,它们可与电子数据表便携式应用程序相关联。特定文件类型到特定便携式应用程序的关联可在自动运行模块160内,在专用存储164中、或者设备102上的其它地方维护。特定文件类型与特定便携式应用程序的关联是由设备102(例如,由自动运行模块160使用存储在专用存储164中的数据),而不是由设备102所耦合的主设备实现的。
将特定文件类型与特定便携式应用程序相关联允许自动运行模块160在相关联类型的文件被用户选择时(例如,由用户双击表示文件的图标、由用户使用键盘来导航到表示文件的图标或文件名,等等)自动运行正确的便携式应用程序。例如,如果文件名以“.doc”结尾的文件与文字处理便携式应用程序相关联,那么如果用户选择“MyReport.doc”,则自动运行模块160可自动运行文字处理便携式应用程序并将MyReport.doc文档加载到文字处理便携式应用程序中。
将特定文件类型与特定便携式应用程序相关联还允许自动运行模块160以其用户界面的部分的形式呈现表示特定类型文件的特定图标。例如,可为所有文件名以“.doc”结尾的文件显示标识文字处理便携式应用程序的特定图标。为特定文件类型显示的特定图标可在自动运行模块160内、在专用存储164中、或在设备102上的其它地方维护。
在某几个实施例中,自动运行模块160由便携式存储设备102所耦合到的主设备的操作***自动加载并执行。在这些实施例中,主设备上的操作***被配置成在检测到便携式存储设备被耦合到主设备时随时自动搜索自动运行模块160。例如,操作***可搜索存储元件108或存储元件108上特定的一个或多个文件夹或文件目录,以寻找具有特定名称(诸如“Autorun.inf”)的自动运行模块,访问存储元件108的特定已知位置,等等。当找到自动运行模块160时,操作***执行自动运行模块160中的指令。
或者,能以其它方式启动自动运行模块160的执行。例如,主设备的用户能以常规方式通过操作***访问便携式存储设备102,而不是在便携式存储设备102被耦合到主设备时自动运行模块160。用户随即可通过导航存储在存储元件108上的所有目录或文件并选择要执行的文件名或图标(例如,通过双击文件名或图标)来定位对应于自动运行模块160的文件名或图标。
在一些替换实施例中,用户(或者另一个应用程序或操作***)可手动地导航存储在存储元件108上的所有目录或文件夹以标识要执行的便携式应用程序,而不是使用自动运行模块160。例如,如果主计算机104在运行操作***中的一种,则用户可使用
Figure S051C5030620051129D000072
操作***浏览器来手动搜索存储元件108中的所有文件夹。
应用程序文件162包括用于运行便携式应用程序的若干指令,以及用于运行便携式应用程序的任何相关联的数据文件,其中这些指令可被组织成一个或多个应用程序模块。应用程序文件162是存储在便携式存储设备102上的可执行文件,以及便携式应用程序其它相关联的文件。为了运行便携式应用程序,由主计算机执行这些可执行文件中的一个或多个。各种不同应用程序中的任何一种都可作为便携式存储设备102上的便携式应用程序被包括。此类应用程序的例子包括文字处理应用程序、电子数据表应用程序、数据库应用程序、演示应用程序、参考应用程序、游戏应用程序、电子邮件(email)客户程序、等等。这些应用程序可以是被设计成安装在台式计算机上并在其上运行的相同应用程序的便携式版本。例如,可有
Figure S051C5030620051129D000073
Word文字处理应用程序的便携式版本。便携式版本与其对应的台式版本相比功能可能有所减少。例如,应用程序中的某个功能在便携式应用程序中可能不让其自身工作,诸如要求扩展名被注册到主设备的***注册表中(这将改变环境设置,而便携式应用程序不作此类改变,如以下将详细讨论)的功能等。
许多操作***使用***信息存储来维护计算机上运行的操作***以及计算机上安装的应用程序的数据。在操作***家族中,此类***信息存储通常被称为***注册表。***注册表可存储,例如设备和应用程序配置设置、文件类型(例如,基于其扩展名)与特定应用程序的关联、用户偏好、性能调整参数、等等。通常,在计算机上安装应用程序期间,有关应用程序的配置设置的各种信息被写到***信息存储中。相反,对于便携式存储设备102上的便携式应用程序而言,此类设置不被写到***信息存储中。
为使便携式应用程序与其它应用程序通信,而无须在***信息存储中维护关于便携式应用程序的信息,便携式应用程序利用环境的运行时查询。环境的运行时查询指一种应用程序可发布有关其它哪个(些)应用程序提供特定功能的查询的技术。响应于此类查询,如果一便携式应用程序提供该功能,则该便携式应用程序用标识如何调用该功能的信息响应于该查询。此查询通常通过操作***来代理,因此不是一个应用程序直接查询另一个应用程序,而是应用程序查询操作***,后者进而查询其它应用程序并将该查询的结果返回给该应用程序。因此,可查询应用程序以获得关于如何调用该特定功能的信息,而不是检查***信息存储以寻找有关如何调用便携式应用程序的特定功能的信息。
尽管关于便携式应用程序的数据不被写到***信息存储中,但是便携式应用程序本身可被设计成访问信息存储,包括将数据写到信息存储中,及从信息存储中读取数据。为了适应此类访问,在便携式存储设备102上包括专用存储164。专用存储164维护便携式应用程序的设置信息——通常在主计算机的***信息存储中维护的设置信息被改为在专用存储164中维护。可为每个便携式应用程序维护单独的专用存储164,或者可为便携式应用程序集合或一组便携式应用程序维护单个专用存储164。
每个便携式应用程序都被设计成访问专用存储164,而不是主计算机上的***信息存储。因此,便携式应用程序可能写到信息存储中的任何数据是作为便携式应用程序文件被写到同一便携式存储设备102上的专用存储164中,因此主计算机上的***信息存储不会被写入用于任何便携式应用程序的配置或其它数据。在主计算机包括***注册表的某些实现中,因为便携式应用程序访问专用存储164而不是***注册表,所以专用存储164还可被称为专用注册表。
便携式应用程序可被设计成以不同方式访问专用存储164而不是主计算机上的***信息存储。在某些实施例中,主计算机上的***信息存储包括应用程序编程接口(API),它具有可由应用程序调用以访问***信息存储的多个接口。此访问可包括,例如从信息存储中读取值,将值写到信息存储中,将值从信息存储中删除,在信息存储中修改值,等等。专用存储164包括具有类似接口的类似的API,这些接口通常和***信息存储的接口执行相同的功能,但它们具有不同的名称,并且在专用存储164、而不是在***信息存储上操作。在某些实现中,便携式应用程序调用这些专用存储接口,而不是***信息存储接口。
在其它实现中,便携式应用程序通过中介访问专用存储接口。单个中介可作为一个便携式应用程序,或者便携式应用程序集合或一组便携式应用程序的中介。便携式应用程序中想要访问存储的各个功能和指令与中介所给出的API交互。中介进而与专用存储所给出API交互。这一具有中介的结构对程序设计者而言可能是有帮助的,因为设计者可设计应用程序功能和指令,而无须考虑该应用程序会是访问***信息存储的非便携式应用程序,还是访问专用存储的便携式应用程序,从而设计两个中介(一个用于访问专用存储的便携式应用程序,另一个用于访问***信息存储的非便携式应用程序)。
在某些情况中,便携式应用程序可能需要或想要从存储中检索先前没有存储在专用存储164中的信息。在此类情况中,便携式应用程序(或中介)可访问主计算机上的***信息存储以读取所需信息。此类信息通常不是专属于一个或多个便携式应用程序的信息,而是关于主计算机的一般信息。便携式应用程序(或中介)被设计成知道对于便携式应用程序所需的特定信息而言,是应访问***信息存储以获取该特定信息,还是应访问专用存储164以获取该特定信息。但是,注意,要被写到存储中、或从存储中删除的任何信息不会被写到***信息存储中或从***信息存储中删除。
或者,当便携式存储设备102被耦合到主计算机时,该主计算机的***信息存储中的信息可被复制到专用存储164中,尽管已经在专用存储164中的任何数据不会被此复制所覆盖。因此,在此替换实施例中,不应出现便携式应用程序访问先前没有存储在专用存储164中的信息的情况。在其它替换实施例中,专用存储164可用默认值来预编程或配置,这些默认值被使用,直至它们为便携式应用程序所覆盖。
类似与专用存储164,便携式存储设备102还包括专用本地概况166。专用本地概况166存储便携式存储设备102的用户的本地概况,该本地概况存储各种用户设置和偏好信息。通过保存此类信息,便携式存储设备102允许用户定制他或她的体验,并且即使他或她可能在多个不同的主计算机上使用该便携式存储设备102,该定制仍被保持。可为每个便携式应用程序维护单独的专用本地概况166,或者可为便携式应用程序集合或一组便携式应用程序维护单个专用本地概况166。
使用专用本地概况166,而不是通常在主计算机上找到的本地概况来存储此类信息。类似于专用存储164,专用本地概况166由便携式应用程序可选地经由代表便携式应用程序的中介来访问,基于便携式应用程序所请求的动作,所请求的数据被适当地检索、写入、删除、修改、等等。专用本地概况166以及任何中介可给出类似于以上关于专用存储164的讨论的API。
在某些实施例中,在被读取的数据不在专用本地概况166中的情况下,对本地概况的读访问被定向(例如,由中介)到存储在主计算机上的本地概况。或者,存储在主计算机上的本地概况可被复制到专用本地概况166,尽管专用本地概况166中已经存在的任何设置的数据不会被此复制过程所覆盖。在其它替换实施例中,专用本地概况166可用默认值来预编程或配置,这些默认值被使用,直至它们被便携式应用程序所覆盖。
因此,通过在便携式存储设备102上维护应用程序文件以及应用程序数据、信息存储数据和本地概况数据,不需要对主计算机作任何永久性改变。当执行、或为了执行便携式存储设备102上的便携式应用程序时,不对主机上的计算机***信息存储或主计算机上的本地概况作任何改变。存储在主计算机的***信息存储和本地概况中的信息可被称为主计算机上的环境设置,当执行便携式应用程序时不对此环境作任何改变。此外,应用程序文件以及数据文件存储在便携式存储设备102上,因此没有任何应用程序文件或数据文件被写到主计算机中。
在某些实施例中,当执行便携式应用程序时,没有任何文件或环境设置被写到主计算机中。如果便携式应用程序在执行期间的确利用任何临时文件,则这些临时文件被存储在便携式存储设备102上,而不是主***上。在替换实施例中,在便携式应用程序执行期间,一个或多个临时文件可被写到主计算机中。在执行期间将临时文件写到主计算机中的便携式应用程序在该应用程序执行被终止时,删除那些临时文件,作为关闭其自身的一部分。或者,便携式应用程序可依靠诸如主计算机上的操作***等另一个组件,在便携式应用程序停止运行时,或在有规律或无规律的时间间隔来删除那些临时文件。
此外,在某些实施例中,便携式存储设备102可能具有特定的主计算机,与之同步数据文件。此“起始”或“基础”主计算机上、或者便携式存储设备102上的应用程序将检测便携式存储设备102何时被耦合到该起始或基础主计算机,然后检查是否已对数据区168中的数据文件作出任何修改(例如,基于数据文件的最后修改日期和时间,或者任何数据文件的添加或删除)。任何新文件,或最后修改日期和时间晚于起始或基础主计算机上的最后修改日期和时间的任何文件随即被复制到起始或基础主计算机上。用户可选地被提示认证他或她想要这一同步发生。
图3所示是一种用于执行便携式应用程序的示例性过程200的流程图。过程200由便携式存储设备所耦合到的主计算机执行。过程200可在软件、固件、硬件、或其组合中实现。
开始,主计算机检测便携式存储设备(动作202)。如以上所讨论,此检测在便携式存储设备被***或者耦合到主计算机时被自动执行。
主计算机随即标识便携式存储设备上的便携式应用程序(动作204)。如以上所讨论,此标识可由主计算机自动执行,或可由导航到便携式存储设备的用户手动执行。随后可选地向用户呈现运行所标识的便携式应用程序的选择(动作206)。如以上所讨论,可向用户显示用户界面,以允许用户选择他或她想要运行哪个(些)便携式应用程序。或者,主计算机可自动选择运行便携式存储设备上便携式应用程序中的一个或多个。
所标识的便携式应用程序随即在主计算机上运行,而不改变主计算机上的任何环境设置(动作208)。如以上所讨论,在便携式存储设备上维护专用存储和专用本地概况,因此在便携式应用程序的执行期间,不需要对存储在主计算机上的***信息存储或概况作任何改变。
回到图2,一些应用程序制造商用来确保用户满足许可义务的一种当前的技术是,要求用户在将应用程序安装到用户的计算机上以后激活该应用程序。应用程序通常要求在特定时间范围之内(诸如在第一次运行该应用程序后的特定天数之内,或者在运行该应用程序某个次数以前)执行此激活。激活过程将应用程序绑定到特定计算机,以将应用程序的特定副本与特定计算机相关联。激活过程通常涉及用户或其它个人输入随应用程序副本所附的字母数字序列或密钥。如果在所要求的时间范围之内应用程序未被成功激活,则该应用程序或者不能被运行,或者只能在功能有所减少的状态下运行(例如,没有某些特征或功能性部分),直至该应用程序被成功激活。
通过维护应用程序的特定副本与特定计算机的关联,应用程序制造商可检测是否有任何将应用程序的同一副本绑定到多个计算机的企图。如果像时常出现的情形那样,在多个计算机上使用应用程序的同一副本违反许可协议,则副本在第二或后续的计算机上的激活可被拒绝,许可协议的条款得到支持。
但是在便携式应用程序的实例中,将应用程序绑定到特定计算机的激活技术是不合乎需要的,因为便携式应用程序的基本概念之一就是其上存储便携式应用程序的便携式存储设备可被轻易地从一个计算机移到另一个计算机,并在两个计算机上运行。因此,在便携式应用程序的实例中,便携式应用程序被绑定到便携式存储设备,而不是特定计算机。
通过使用便携式存储设备的标识符来将便携式应用程序绑定到便携式存储设备。这一标识符被设计成两个不同的便携式存储设备很不可能具有相同的标识符。因此,这一标识符可被用来确定是否有将同一应用程序绑定到多个不同的便携式存储设备的企图。
便携式存储设备的标识符能以不同方式生成。标识符可由制造商分配,并在制造过程期间,或作为制造商所使用的预配置过程的一部分被包括到便携式存储设备中。标识符可被包括在便携式存储设备的非可重写部分(诸如使用可被写一次,但不可被擦除或重写的存储器的部分)中,以使其以后不会被修改。
或者,便携式存储设备的标识符可以是设备的签名,该签名是基于便携式存储设备的各个硬件方面。此签名可由便携式存储设备上的应用程序(诸如由被激活的便携式应用程序或由某个其它应用程序)生成。签名可被存储在便携式存储设备上以供后续使用,或可在每次需要它时重新生成。或者,签名可由某个其它组件(例如,由便携式存储设备的制造商的***)生成,并存储在便携式存储设备上。
在其它替换方案中,便携式存储设备的标识符从便携式存储设备上的处理组件直接或间接传达。例如,处理组件可包括能执行公钥加密操作的加密处理器。一个质询(例如,字母数字符号和/或其它符号序列)可从请求者(诸如将便携式应用程序绑定到便携式存储设备的设备或服务)向加密处理器传达。加密处理器使用加密处理器的私钥将质询加密,并将已加密的质询返回给请求者。请求者随即可使用加密处理器的已知公钥来认证加密处理器的身份,从而认证该加密处理器所驻留的便携式存储设备的身份。因为每一个加密处理器都有不同的公钥/私钥对,所以不同的便携式存储设备可被分别标识。
一旦被激活,信息即可被写回便携式存储设备中,从而便携式存储设备上的便携式应用程序知道它已被成功激活。或者,便携式应用程序不是将此类数据写回便携式存储设备中,而是使用主计算机的网络连接来访问服务器(例如,经由因特网),以检查该应用程序是否已被成功激活。
图4所示是一种用于激活便携式应用程序的示例性过程250的流程图。过程250可在软件、固件、硬件、或其组合中实现。
开始,获得设备标识符和便携式应用程序密钥(动作252)。设备标识符可通过检索先前存储到便携式存储设备中的标识符,或者通过生成标识符(例如,如以上所讨论的便携式存储设备的签名)来获得。便携式应用程序密钥能以不同方式获得,但通常由用户手动将密钥输入到便携式存储设备所耦合到的主计算机中来获得。当购买便携式应用程序或已安装便携式应用程序的便携式存储设备时,此密钥可被包括在例如包装中。便携式应用程序的每一个副本通常都被分配一个不同的密钥。
随即向激活服务传达设备标识符和便携式应用程序密钥(动作254)。激活服务是在一个或多个设备上实现的服务,它负责确定便携式应用程序是否已被绑定到最大允许个数的设备。此确定是通过分析先前激活的应用程序的记录,并检查便携式应用程序密钥是否已与最大允许个数的设备相关联(基于与便携式应用程序相关联的许可)来作出的。激活服务还负责确定便携式应用程序密钥的有效性。便携式应用程序密钥的有效性能以各种方式中的任何一种来确定,诸如有有效密钥列表,有处理便携式应用程序密钥以确定有效性的算法,等等。
然后过程250基于便携式应用程序的激活是否成功来继续前进(动作256)。如果便携式应用程序密钥尚未被绑定到最大允许个数的设备(或如果该便携式应用程序密钥先前曾被绑定到此设备标识符),并且便携式应用程序密钥是有效密钥,则激活是成功的。但是,如果便携式应用程序密钥已被绑定到最大允许个数的设备,或如果便携式应用程序密钥不是有效密钥,则激活是不成功的。
如果激活是成功的,则激活服务维护该便携式应用程序密钥与该设备标识符相关联的记录(动作258)。便携式应用程序已被激活的指示被返回给便携式应用程序,且便携式应用程序已被激活的指示也可被存储在便携式存储设备中,如以上所讨论。此指示可以是,例如特定标识符或数据值、其真实性可由便携式应用程序使用加密算法来认证的数字证书、等等。但是,如果激活是不成功的,则激活失败(动作260),且激活已失败的指示被返回给便携式应用程序。
回到图2,便携式应用程序可被预安装在便携式存储设备102上,或可由用户安装。便携式应用程序可由便携式存储设备102的制造商,或由某个其它实体(例如,转售者、发行者、制造商所雇佣的第三方等等)预安装。因此,用户将购买其上已存储有一个或多个便携式应用程序的便携式存储设备102。或者,一个或多个便携式应用程序可由用户安装到便携式存储设备102上。例如,用户可购买盘上的便携式应用程序,或通过网络(诸如因特网等)购买便携式应用程序,并将所购买的应用程序安装到便携式存储设备102上。
在安装过程期间,无论安装过程是由便携式存储设备102的购买者还是由某个其它个人执行,必要的文件都作为应用程序文件112被复制到存储元件108中,且对那些文件任何必要的改变或配置都被执行。此外,通常作为安装过程的一部分会被写到***信息存储中的任何信息改为被写到专用存储164中。通常,执行建立文件以安装便携式应用程序。当执行建立文件时,它执行这些各种功能以安装应用程序。
图5所示是一种用于将便携式应用程序安装在便携式存储设备上的示例性过程280的流程图。过程280可在软件、固件、硬件、或其组合中实现。
开始,接收将便携式应用程序安装到便携式存储设备上的请求(动作282)。此请求可以是手动的用户选择,诸如用户双击“安装”或“建立”图标,或者将一个或多个文件(诸如“安装”或“建立”文件或图标)从源介质拖放到便携式存储设备。或者该请求可以是某个其它动作中所固有的,诸如将安装盘***到便携式存储设备所耦合到的同一计算机中,或将便携式存储设备耦合到特定计算机(例如,在制造商或某个其它第三方位置处)等。
响应于该请求,便携式应用程序的一个或多个应用程序文件被写到便携式存储设备中(动作284)。这些应用程序文件是,例如图2的应用程序文件162。应用程序文件随即被适当地配置(动作286)。作为安装过程的一部分,需要什么配置(如果有的话)可能根据不同的便携式应用程序而改变。所需的任何此类配置通常在与便携式应用程序相关联的安装文件中被标识(这通常实现过程280)。
除了配置应用程序文件以外,自动运行模块160还可在动作286中被配置。自动运行模块160的这一配置包括向自动运行模块160添加标识便携式存储设备上存在便携式应用程序的信息,以及关于如何执行该便携式应用程序的信息(例如,要执行哪个(些)文件以开始运行该便携式应用程序,存储了该便携式应用程序的那些文件夹文件,等等)。
关于便携式应用程序的信息随即被写到便携式存储设备上的专用存储中(动作288)。写到专用存储中的信息可以是关于便携式应用程序的任何信息,诸如应用程序的配置设置,在应用程序运行时提高其性能的性能调整参数,哪些文件类型与该便携式应用程序相关联(例如,从而为该类型的文件显示正确的图标,以向用户可视化地标识这些文件与该便携式应用程序相关联),等等。如以上所讨论,此类信息被写到便携式存储设备上的专用存储中,而不是该便携式存储设备所耦合到的计算机上的***信息存储中。在一些情况中,第一次为特定的便携式存储设备执行动作288时,专用存储可能尚未被创建。在此类情形中,作为动作288的一部分,在便携式存储设备上创建专用存储。
应当注意,在替换实施例中,安装过程可能有所不同。例如,在一个或多个文件从源介质被复制到便携式存储设备中处可使用拖放技术。又如,可创建包括所有可执行文件、专用存储、专用本地概况和自动运行模块的存储元件的映像,如其在便携式应用程序的安装以后应存在的形式,而不是从诸如安装文件来执行安装过程280。然后此映像可被简单地复制到便携式存储设备的存储元件上,结果形成具有所有所需的可执行文件、以及用适当数据填充的专用存储和/或专用本地概况的便携式存储设备。这一预生成映像并将该映像复制到便携式存储设备上的过程通常为便携式存储设备的制造商,或者制造、发送或销售用相同便携式应用程序配置的大量便携式存储设备的第三方所使用。
回到图2,应当注意,尽管图示存储元件108中包括模块160、文件162、存储164、概况166以及数据区168,但是这些组件中的一个或多个,或者一个或多个这些组件的部分可存储在不同类型的存储器中。例如,可使用非可重写只读存储器,而不是可重写存储元件来存储一个或多个组件或其部分。可被存储在非可重写只读存储器中的组件或其部分将是不可改变的组件或部分,诸如应用程序的特定指令(应用程序文件162的全部或一部分)、本文中所讨论的自动运行功能的指令(自动运行模块160的全部或一部分)、等等。
此外,应当注意,便携式存储设备102可以是各种不同设备中的任何一种。例如,便携式存储设备102可以是便携式USB闪存存储设备、便携式硬盘驱动器设备、或包括闪存或其它存储元件的某种其它设备,诸如数字摄像机等。
因此,可以看到,本文中所讨论的便携式应用程序允许便携式存储设备上的应用程序有简单易行的便携性。可简单地通过将便携式存储设备***、或将便携式存储设备耦合到不同的主计算机,在不同主计算机上运行便携式应用程序。对主计算机中的任何一个的环境设置都不作任何改变,也不在主计算机中的任何一个上安装任何文件。因此,即使便携式应用程序在主计算机上运行,该主计算机上的环境设置仍保持原样,并且用户的隐私被保持,因为便携式应用程序不会遗留可能泄漏关于用户或者他或她曾处理的数据的信息的任何文件或设置。
图6示出可使用本文所述的便携式应用程序的通用计算机环境300。计算机环境300指示计算环境的一个示例,并不试图对计算机和网络体系结构的使用范围或功能提出任何限制。也不应将计算机环境300解释为具有涉及示例性计算机环境300中所示的任何组件或其组合的依赖性或要求。
计算机环境300包括计算机302形式的通用计算设备。计算机302可以是,例如图1的主计算机104。计算机302的组件可包括,但不限于,一个或多个处理器或处理单元304、***存储器306、以及将包括处理器304在内的各种***组件耦合到***存储器306的***总线308。
***总线308标识若干类型的总线结构中的一种或数种,包括存储器总线或存储器控制器、***总线、加速图形端口、使用各种总线体系结构中的任何以后德宗处理器或局部总线。作为示例,此类体系结构可包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强的ISA(EISA)总线、视频电子标准协会(VESA)局部总线、以及也称为Mezzanine总线的***组件互连(PCI)总线。
计算机302通常包括各种计算机可读介质。此类介质可以是计算机302可访问的任何可用介质,并包括易失性和非易失性介质、可移动和不可移动介质。
***存储器306包括诸如随机存取存储器(RAM)310等易失性存储器形式的计算机可读介质,和/或诸如只读存储器(ROM)312等非易失性存储器。包含诸如在启动期间帮助在计算机302内的各元件之间传送消息的基本例程的基本输入/输出***(BIOS)312存储在ROM 312中。RAM 310通常包含处理304即时可访问的、和/或当前正由其操作的数据和/或程序模块。
计算机302还可包括其它可移动/不可移动、易失性/非易失性计算机存储介质。作为示例,图6示出用于读或写不可移动、非易失性磁介质(未示出)的硬盘驱动器316,用于读或写可移动、非易失性磁盘320(例如,“软盘”)的磁盘驱动器332,以及用于读和/或写诸如CD-ROM、DVD-ROM或其它光介质等可移动、非易失性光盘324的光盘驱动器322。硬盘驱动器316、磁盘驱动器332和光盘驱动器322每一个都由一个或多个数据介质接口326连接到***总线308。或者,硬盘驱动器316、磁盘驱动器332和光盘驱动器322可由一个或多个接口(未示出)连接到***总线308。还可将其它计算机存储介质作为计算机302的部分包括在内,诸如以上所讨论的便携式闪存设备。
磁盘存储及其相关联的计算机可读介质为计算机302提供计算机可读指令、数据结构、程序模块和其它数据的非易失性存储。尽管该例示出硬盘316、可移动磁盘320和可移动光盘324,应当认识到,还可利用诸如磁带盒或其它磁存储设备,闪存卡,CD-ROM、数字多功能盘(DVD)或其它光存储、随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)等能够存储可计算机可访问的数据的其它类型的计算机可读介质来实现该示例性计算***和环境。
任何数量的程序模块可被存储在硬盘316、磁盘320、光盘324、ROM 312、和/或RAM 310上,例如包括,操作***326、一个或多个应用程序328、其它程序模块330、以及程序数据332。这些操作***326、一个或多个应用程序328、其它程序模块330、以及程序数据332中的每一个(或其某种组合)可实现支持分布式文件***的所有常驻组件或其中的一部分。
用户可经由诸如键盘334和定位设备336(例如,“鼠标”)等输入设备将命令和信息输入到计算机302中。其它输入设备338(未具体示出)可包括话筒、操纵杆、游戏垫、圆盘式卫星天线、串行端口、扫描仪、和/或其它。这些及其它输入设备经由耦合到***总线308的输入/输出接口340连接到处理单元304,但也可通过诸如并行端口、游戏端口、通用串行总线(USB)或固件(IEEE 1394)总线等其它接口或总线结构连接。
监视器342或其它类型的显示设备也可经由诸如视频适配器344等接口连接到***总线308。除了监视器342之外,其它输出***设备可包括诸如扬声器(未示出)和打印机346等可经由输入/输出接口340连接到计算机302的组件。
计算机302可使用到诸如远程计算设备348等一个或多个远程计算机的逻辑连接在联网中工作。作为示例,远程计算设备348可以是个人计算机、便携式计算机、服务器、路由器、网络计算机、对等设备、或其它普通网络节点、等等。图示远程计算设备348为可包括本文中相对于计算机302所描述的许多或所有元件和特征的便携式计算机。
图示计算机302和远程计算机348之间的逻辑连接为局域网(LAN)350和一般广域网(WAN)352。此类网络环境常见于办公室、企业范围的计算机网络、内联网、以及因特网。
当在LAN网络环境中实现时,计算机302经由网络接口或适配器354连接到局域网350。当在WAN网络环境中实现时,计算机302通常包括调制解调器356或用于通过广域网352建立通信的其它装置。可以内置或外置于计算机302的调制解调器356可经由输入/输出接口340或其它适当机制连接到***总线308。应当认识到,所示网络连接是示例性的,且可使用在计算机302和348之间建立通信链路的其它装置。
在诸如计算环境300所示的联网环境中,相对于计算机302所示的程序模块或其部分可存储在远程记忆存储设备中。作为示例,远程应用程序358驻留在远程计算机348的存储器设备上。出于说明目的,本文中将应用程序及诸如操作***等其它可执行程序组件示为离散的框,尽管可以认识到,这些程序和组件在各个时间驻留在计算设备302的不同存储组件中,并由计算机的数据处理器执行。
本文在由一个或多个计算机或其它设备执行的、诸如程序模块等计算机可执行指令的上下文中描述各种模块和技术。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。通常,在各个实施例中,可按序组合或分布各程序模块的功能。
这些模块和技术的一个实现可存储在某种形式的计算机可读介质上,或可通过其来发送。计算机可读介质可以是能被计算机访问的任何可用介质。作为示例,而非限制,计算机可读介质可包括“计算机存储介质”和“通信介质”。
“计算机存储介质”包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其它光存储,磁带盒、磁带、磁盘存储或其它磁存储设备,或可用来存储所需信息并可由计算机访问的任何其它介质。
“通信介质”通常具体化为诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据。通信介质还包括任何信息传递介质。术语“已调制数据信号”指以在信号中将信息编码的方式设置或改变其一个或多个特征的信号。作为示例,而非限制,通信介质包括诸如有线网络或直接连线连接等有线介质,以及诸如声学、RF、红外和其它无线介质等无线介质。以上任何介质的组合也包括在计算机可读机制的范围之内。
尽管以上描述使用专属于结构化特征和/或方法性动作的语言,但是应当理解,在所附权利要求书中定义的本发明不限于所描述的具体特征或动作。相反,这些具体特征和动作是作为实现本发明的示例性形式来揭示的。

Claims (27)

1.一种用于执行存储在便携式存储设备内的便携式应用程序文件的方法,所述便携式存储设备包括接口、用于存储一个或多个便携式应用程序文件的一个或多个存储元件、以及用于维护便携式应用程序的设置信息的专用存储,该方法包括:
通过所述接口将所述一个或多个存储元件耦合到主计算机;以及
由所述主计算机执行一个或多个便携式应用程序而不在所述主计算机的操作***的信息存储中维护关于便携式应用程序的信息,
其中执行所述一个或多个便携式应用程序包括访问所述专用存储以获得用于便携式应用程序的设置信息,并且其它应用程序通过经主计算机的操作***对所执行的便携式应用程序进行运行时查询以获得如何调用其特定功能的信息,从而和所执行的便携式应用程序进行通信。
2.如权利要求1所述的方法,其特征在于,其中所述一个或多个便携式应用程序文件包括一中介,所述便携式应用程序文件利用所述中介以接收访问所述主计算机上的环境设置的请求,并且响应于所述请求而访问所述专用存储中的设置,而不是所述主计算机上的环境设置。
3.如权利要求1所述的方法,其特征在于,所述便携式存储设备不包括执行所述一个或多个便携式应用程序文件的指令的处理器。
4.如权利要求1所述的方法,其特征在于,所述一个或多个存储元件还存储自动运行模块,所述方法包括:
所述主计算机访问所述自动运行模块以呈现用户界面,所述用户界面标识可通过执行所述一个或多个便携式应用程序文件来运行的应用程序。
5.如权利要求4所述的方法,还包括:
所述自动运行模块为与所标识的应用程序中的一个应用程序相关联的类型的数据文件呈现与所述一个应用程序相关联的图标,作为所述用户界面的一部分,所述一个或多个存储元件存储所述数据文件。 
6.如权利要求4所述的方法,还包括:
当用户选择与一个应用程序相关联的文件时,所述自动运行模块自动运行该应用程序。
7.如权利要求1所述的方法,其特征在于,所述一个或多个存储元件还存储多个数据文件,其中,所述多个数据文件中的几个与所述一个或多个便携式应用程序文件相关联,所述多个数据文件中的几个不与所述一个或多个便携式应用程序文件中的任一个相关联。
8.如权利要求1所述的方法,其特征在于,所述一个或多个便携式应用程序文件被执行,以运行被绑定到所述便携式存储设备的应用程序。
9.如权利要求1所述的方法,其特征在于,所述一个或多个存储元件包括一个或多个闪存。
10.如权利要求9所述的方法,其特征在于,所述便携式存储设备包括通用串行总线(USB)闪存设备。
11.如权利要求7所述的方法,其特征在于,所述便携式存储设备还包括自动允许模块,所述方法还包括:
所述自动允许模块实现数据文件类型和便携式应用程序文件之间的关联,从而当关联类型的数据文件被选中时,正确的便携式应用程序被运行。
12.如权利要求1所述的方法,其特征在于,当一个便携式应用程序文件被执行时,其还访问操作***的信息存储。
13.如权利要求1所述的方法,其特征在于,所述主计算机上的环境设置包括所述主计算机的***注册表中的信息。
14.如权利要求1所述的方法,其特征在于,所述主计算机上的环境设置包 括所述主计算机的本地概况中的信息。
15.如权利要求2所述的方法,其特征在于,所述访问主计算机上的环境设置的请求包括写环境设置的指令。
16.如权利要求1所述的方法,其特征在于,所述便携式应用程序被绑定到所述便携式存储设备。
17.如权利要求16所述的方法,其特征在于,所述绑定是作为激活所述应用程序的一部分来执行的。
18.如权利要求16所述的方法,其特征在于,还包括在所述便携式存储设备上保存所述应用程序已被激活的指示。
19.如权利要求16所述的方法,其特征在于,还包括维护所述应用程序被绑定到所述便携式存储设备的记录。
20.如权利要求1所述的方法,其特征在于,所述专用存储包括专用注册表。
21.如权利要求1所述的方法,其特征在于,所述便携式存储设备不在所述计算机上存储任何永久文件。
22.如权利要求1所述的方法,其特征在于,所述便携式存储设备在终止所述便携式应用程序的执行之前,删除所述便携式应用程序存储在所述计算机上的任何临时文件。
23.如权利要求1所述的方法,其特征在于,当便携式应用程序被执行并在执行器件利用任何临时文件时,该临时文件被存储在便携式存储设备上。
24.一种在主计算机中实现的方法,所述方法包括:
将便携式存储设备耦合到所述主计算机;
标识存储在所述便携式存储设备上的便携式应用程序;以及 
由所述主计算机运行所述便携式应用程序,而不在所述主计算机的操作***的***信息存储中维护关于便携式应用程序的信息,其中其它应用程序通过经主计算机的操作***对所执行的便携式应用程序进行运行时查询以获得如何调用其特定功能的信息,从而和所执行的便携式应用程序进行通信,所述便携式存储设备还包括专用存储,用于维护便携式应用程序的设置信息,其中当便携式应用程序被执行时,该便携式应用程序访问所述专用存储。
25.如权利要求24所述的方法,其特征在于,还包括:
呈现一用户界面,所述用户界面标识存储在所述便携式存储设备上的多个便携式应用程序;以及
接收用户对所述多个便携式应用程序之一的选择,运行所述多个便携式应用程序,即使所述便携式应用程序包括访问环境设置的一个或多个请求,也不改变所述计算机上的环境设置。
26.如权利要求24所述的方法,其特征在于,所述计算机上的环境设置包括所述计算机的***注册表中的信息。
27.如权利要求24所述的方法,其特征在于,运行所述便携式应用程序还包括运行所述便携式应用程序而不要求在所述计算机上安装任何其它驱动程序。 
CN2005101250306A 2004-12-15 2005-11-15 便携式应用程序 Expired - Fee Related CN1790265B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/012,926 US7712086B2 (en) 2004-12-15 2004-12-15 Portable applications
US11/012,926 2004-12-15

Publications (2)

Publication Number Publication Date
CN1790265A CN1790265A (zh) 2006-06-21
CN1790265B true CN1790265B (zh) 2011-03-16

Family

ID=36353983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005101250306A Expired - Fee Related CN1790265B (zh) 2004-12-15 2005-11-15 便携式应用程序

Country Status (5)

Country Link
US (1) US7712086B2 (zh)
EP (1) EP1672509B1 (zh)
JP (1) JP5301764B2 (zh)
KR (1) KR101169085B1 (zh)
CN (1) CN1790265B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9021469B2 (en) 2010-06-11 2015-04-28 Microsoft Technology Licensing, Llc Web application pinning including task bar pinning
US9069636B2 (en) 2010-06-11 2015-06-30 Microsoft Technology Licensing, Llc Dynamic web application notifications including task bar overlays
US9164671B2 (en) 2010-06-11 2015-10-20 Microsoft Technology Licensing, Llc Web application navigation domains
US9367636B2 (en) 2010-06-11 2016-06-14 Microsoft Technology Licensing, Llc Web application home button

Families Citing this family (125)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10721087B2 (en) * 2005-03-16 2020-07-21 Icontrol Networks, Inc. Method for networked touchscreen with integrated interfaces
US11489812B2 (en) 2004-03-16 2022-11-01 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
JP2007529826A (ja) 2004-03-16 2007-10-25 アイコントロール ネットワークス, インコーポレイテッド 対象事項管理ネットワーク
US11343380B2 (en) 2004-03-16 2022-05-24 Icontrol Networks, Inc. Premises system automation
US11811845B2 (en) 2004-03-16 2023-11-07 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US10237237B2 (en) 2007-06-12 2019-03-19 Icontrol Networks, Inc. Communication protocols in integrated systems
US11368429B2 (en) 2004-03-16 2022-06-21 Icontrol Networks, Inc. Premises management configuration and control
US11582065B2 (en) 2007-06-12 2023-02-14 Icontrol Networks, Inc. Systems and methods for device communication
US11916870B2 (en) 2004-03-16 2024-02-27 Icontrol Networks, Inc. Gateway registry methods and systems
US20090077623A1 (en) 2005-03-16 2009-03-19 Marc Baum Security Network Integrating Security System and Network Devices
US10142392B2 (en) 2007-01-24 2018-11-27 Icontrol Networks, Inc. Methods and systems for improved system performance
US11244545B2 (en) 2004-03-16 2022-02-08 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US11190578B2 (en) 2008-08-11 2021-11-30 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US20170118037A1 (en) 2008-08-11 2017-04-27 Icontrol Networks, Inc. Integrated cloud system for premises automation
US10522026B2 (en) 2008-08-11 2019-12-31 Icontrol Networks, Inc. Automation system user interface with three-dimensional display
US9729342B2 (en) 2010-12-20 2017-08-08 Icontrol Networks, Inc. Defining and implementing sensor triggered response rules
US20170180198A1 (en) 2008-08-11 2017-06-22 Marc Baum Forming a security network including integrated security system components
US20120324566A1 (en) 2005-03-16 2012-12-20 Marc Baum Takeover Processes In Security Network Integrated With Premise Security System
US20110128378A1 (en) 2005-03-16 2011-06-02 Reza Raji Modular Electronic Display Platform
US11700142B2 (en) 2005-03-16 2023-07-11 Icontrol Networks, Inc. Security network integrating security system and network devices
US11615697B2 (en) 2005-03-16 2023-03-28 Icontrol Networks, Inc. Premise management systems and methods
US10999254B2 (en) 2005-03-16 2021-05-04 Icontrol Networks, Inc. System for data routing in networks
US11496568B2 (en) 2005-03-16 2022-11-08 Icontrol Networks, Inc. Security system with networked touchscreen
US20060282571A1 (en) * 2005-04-25 2006-12-14 Perception Digital Limited Multimedia devices with enhanced functionality
US20070112979A1 (en) * 2005-11-16 2007-05-17 Phison Electronics Corp. [portable storage device with auto-executable program]
US20070168937A1 (en) * 2005-11-28 2007-07-19 Soummya Mallick Apparatus and method of application virtualization
US7739078B2 (en) * 2005-12-01 2010-06-15 Sandisk Corporation System for managing appliances
US7353073B2 (en) * 2005-12-01 2008-04-01 Sandisk Corporation Method for managing appliances
US7917487B2 (en) * 2005-12-13 2011-03-29 Microsoft Corporation Portable application registry
US8286158B2 (en) 2006-02-06 2012-10-09 Imation Corp. Method and system for installing portable executable applications
US10079839B1 (en) 2007-06-12 2018-09-18 Icontrol Networks, Inc. Activation of gateway device
US20080005472A1 (en) * 2006-06-30 2008-01-03 Microsoft Corporation Running applications from removable media
WO2008026133A2 (en) * 2006-08-29 2008-03-06 Koninklijke Philips Electronics N.V. Method and device for binding a non-volatile storage device with a consumer product
US20080083037A1 (en) * 2006-10-03 2008-04-03 Rmcl, Inc. Data loss and theft protection method
US8316199B2 (en) 2006-11-07 2012-11-20 Hitachi Solutions, Ltd. Data processing control method, information processing apparatus, and data processing control system
US11706279B2 (en) 2007-01-24 2023-07-18 Icontrol Networks, Inc. Methods and systems for data communication
KR100823171B1 (ko) * 2007-02-01 2008-04-18 삼성전자주식회사 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법
KR100864814B1 (ko) 2007-02-09 2008-10-23 주식회사 씨모텍 광 저장 장치 또는/및 이동식 디스크로 구현된 컴퓨터 확장장치 및 그 구현 방법
JP4391535B2 (ja) * 2007-02-16 2009-12-24 株式会社沖データ 外部記憶装置、並びに、この外部記憶装置を備える画像処理装置及び画像形成装置
US7818559B2 (en) 2007-02-28 2010-10-19 Microsoft Corporation Boot negotiation among multiple boot-capable devices
US7633385B2 (en) 2007-02-28 2009-12-15 Ucontrol, Inc. Method and system for communicating with and controlling an alarm system from a remote server
US20080215720A1 (en) * 2007-03-02 2008-09-04 Kenneth Vernon Westin Apparatus and system for lost/stolen data storage device recovery
US9083624B2 (en) * 2007-03-02 2015-07-14 Activetrak, Inc. Mobile device or computer theft recovery system and method
US8451986B2 (en) 2007-04-23 2013-05-28 Icontrol Networks, Inc. Method and system for automatically providing alternate network access for telecommunications
EP3474283A1 (en) * 2007-05-30 2019-04-24 Ascensia Diabetes Care Holdings AG Method and system for managing health data
US11423756B2 (en) 2007-06-12 2022-08-23 Icontrol Networks, Inc. Communication protocols in integrated systems
US10523689B2 (en) 2007-06-12 2019-12-31 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US11212192B2 (en) 2007-06-12 2021-12-28 Icontrol Networks, Inc. Communication protocols in integrated systems
US11316753B2 (en) 2007-06-12 2022-04-26 Icontrol Networks, Inc. Communication protocols in integrated systems
US11218878B2 (en) 2007-06-12 2022-01-04 Icontrol Networks, Inc. Communication protocols in integrated systems
US11601810B2 (en) 2007-06-12 2023-03-07 Icontrol Networks, Inc. Communication protocols in integrated systems
US12003387B2 (en) 2012-06-27 2024-06-04 Comcast Cable Communications, Llc Control system user interface
US11646907B2 (en) 2007-06-12 2023-05-09 Icontrol Networks, Inc. Communication protocols in integrated systems
US10223903B2 (en) 2010-09-28 2019-03-05 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US8719498B2 (en) * 2007-08-24 2014-05-06 Samsung Electronics Co., Ltd. Data storage device and data providing method therein
US11831462B2 (en) 2007-08-24 2023-11-28 Icontrol Networks, Inc. Controlling data routing in premises management systems
CN101393587A (zh) * 2007-09-21 2009-03-25 鸿富锦精密工业(深圳)有限公司 一种具有安全保护功能的移动设备及其安全保护方法
KR101416247B1 (ko) * 2007-10-05 2014-07-08 삼성전자 주식회사 영상처리장치 및 그 제어방법
CN101828357B (zh) * 2007-10-16 2014-04-16 诺基亚公司 用于证书提供的方法和装置
JP2009122749A (ja) * 2007-11-12 2009-06-04 Fujitsu Ltd プログラム、可搬記憶媒体及び制御方法
US20100121989A1 (en) * 2007-11-20 2010-05-13 Sherri Lynn Morris Digi Time Capsule
KR20090060771A (ko) * 2007-12-10 2009-06-15 한국전자통신연구원 공용시스템에서 스마트카드를 이용한 개인시스템의 환경구성 시스템 및 방법
FR2926375B1 (fr) * 2008-01-11 2010-02-12 Airbus France Procede d'execution d'une application informatique, kit et aeronef associes
US11916928B2 (en) 2008-01-24 2024-02-27 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
KR100964326B1 (ko) * 2008-02-29 2010-06-17 (주)엔탑소프트 클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치
US20090228654A1 (en) * 2008-03-06 2009-09-10 Quantum Corporation, A Delaware Corporation Media Cartridge Resident Auto-Sensing/Loading Archive Software
KR100932094B1 (ko) * 2008-04-04 2009-12-16 주식회사 셀픽 다중 에물레이션 기능을 갖는 솔리드 스테이트 디스크
JP2009266117A (ja) * 2008-04-28 2009-11-12 Hitachi Software Eng Co Ltd Usbメモリ装置、及び、それを用いたプラグインアプリケーションシステム
KR20090119436A (ko) * 2008-05-16 2009-11-19 삼성전자주식회사 휴대용 저장 장치에 저장된 컨텐트들과 관련된 서비스를제공하는 방법 및 그 장치
US20170185278A1 (en) 2008-08-11 2017-06-29 Icontrol Networks, Inc. Automation system user interface
KR100898968B1 (ko) * 2008-07-03 2009-05-28 이승호 응용프로그램에서 사용되는 임시 파일의 자동 완전 삭제방법
US8473941B2 (en) * 2008-07-08 2013-06-25 Sandisk Il Ltd. Dynamic file system restriction for portable storage devices
US11729255B2 (en) 2008-08-11 2023-08-15 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US11758026B2 (en) 2008-08-11 2023-09-12 Icontrol Networks, Inc. Virtual device systems and methods
US11792036B2 (en) 2008-08-11 2023-10-17 Icontrol Networks, Inc. Mobile premises automation platform
US8793652B2 (en) 2012-06-07 2014-07-29 International Business Machines Corporation Designing and cross-configuring software
US9280335B2 (en) * 2010-09-30 2016-03-08 International Business Machines Corporation Semantically rich composable software image bundles
US9396455B2 (en) * 2008-11-10 2016-07-19 Mindjet Llc System, method, and software application for enabling a user to view and interact with a visual map in an external application
JP5243194B2 (ja) * 2008-11-14 2013-07-24 キヤノン電子株式会社 画像読取装置及びその制御方法
CN101751445A (zh) * 2008-12-16 2010-06-23 鸿富锦精密工业(深圳)有限公司 图片管理***
US8638211B2 (en) 2009-04-30 2014-01-28 Icontrol Networks, Inc. Configurable controller and interface for home SMA, phone and multimedia
KR101055287B1 (ko) * 2009-05-14 2011-08-09 (주) 애니컴페니언 응용프로그램에서 사용되는 임시 파일의 관리 방법
TWI497414B (zh) * 2009-06-23 2015-08-21 Phison Electronics Corp 檔案執行方法及系統
KR101428979B1 (ko) * 2009-08-21 2014-08-13 에스케이플래닛 주식회사 휴대형 저장장치, 그를 이용한 응용프로그램 제공 시스템 및 방법
US8266350B2 (en) * 2009-09-30 2012-09-11 Imation Corp. Method and system for supporting portable desktop
US8555376B2 (en) * 2009-09-30 2013-10-08 Imation Corp. Method and system for supporting portable desktop with enhanced functionality
US8601532B2 (en) * 2009-09-30 2013-12-03 Imation Corp. Method and system for provisioning portable desktops
US8516236B2 (en) 2009-09-30 2013-08-20 Imation Corp. Portable desktop device and method of host computer system hardware recognition and configuration
US9087197B2 (en) 2009-11-13 2015-07-21 Imation Corp. Device and method for verifying connectivity
US8312184B2 (en) 2009-11-25 2012-11-13 Canon Denshi Kabushiki Kaisha Peripheral device usable without installing driver in computer beforehand
CN101800737B (zh) * 2009-12-23 2015-04-29 康佳集团股份有限公司 一种用于网络电视的业务管理方法
US8307134B2 (en) * 2010-01-15 2012-11-06 Apple Inc. Multiple communication interfaces on a portable storage device
KR101103795B1 (ko) * 2010-02-02 2012-01-06 주식회사 미라지웍스 포터블 매체를 이용한 소프트웨어 가상화 시스템 제공방법
FR2960668A1 (fr) * 2010-05-27 2011-12-02 Airbus Operations Sas Procede et dispositif de configuration incrementale de modules de type ima
US8434135B2 (en) 2010-06-11 2013-04-30 Microsoft Corporation Creating and launching a web application with credentials
US8595551B2 (en) 2010-06-11 2013-11-26 Microsoft Corporation Web application transitioning and transient web applications
US8429546B2 (en) 2010-06-11 2013-04-23 Microsoft Corporation Creating task sessions
US8836467B1 (en) 2010-09-28 2014-09-16 Icontrol Networks, Inc. Method, system and apparatus for automated reporting of account and sensor zone information to a central station
KR101748318B1 (ko) 2010-11-22 2017-06-27 삼성전자 주식회사 휴대 단말기의 어플리케이션 실행 방법 및 장치
US20120174212A1 (en) * 2010-12-29 2012-07-05 Microsoft Corporation Connected account provider for multiple personal computers
CN102592085B (zh) 2011-12-27 2015-09-16 中兴通讯股份有限公司 一种无线通信终端及行业软件安全运行方法
KR101291127B1 (ko) * 2012-02-01 2013-08-23 주식회사 안랩 사용자 장치 및 이를 이용한 악성 코드 진단 방법
US8850406B1 (en) * 2012-04-05 2014-09-30 Google Inc. Detecting anomalous application access to contact information
AU2014225864B2 (en) 2013-03-05 2020-01-02 Fasetto, Inc. System and method for cubic graphical user interfaces
US10855771B1 (en) 2013-04-29 2020-12-01 Kolkin Corp. Systems and methods for ad hoc data sharing
MX2016000616A (es) 2013-07-18 2017-05-17 Fasetto L L C Sistema y metodo para videos desde multiples angulos.
US10095873B2 (en) 2013-09-30 2018-10-09 Fasetto, Inc. Paperless application
US9584402B2 (en) 2014-01-27 2017-02-28 Fasetto, Llc Systems and methods for peer to peer communication
US11405463B2 (en) 2014-03-03 2022-08-02 Icontrol Networks, Inc. Media content management
JP6486011B2 (ja) * 2014-03-28 2019-03-20 株式会社デンソーテン 車載装置の検査システム、車載装置の検査用装置、車載装置、および、可搬型の記憶媒体
ES2970737T3 (es) 2014-07-10 2024-05-30 Fasetto Inc Sistemas y métodos para edición de mensajes
AU2015328723A1 (en) * 2014-10-06 2017-04-20 Fasetto, Inc. Systems and methods for portable storage devices
US10437288B2 (en) 2014-10-06 2019-10-08 Fasetto, Inc. Portable storage device with modular power and housing system
US9503428B2 (en) 2014-10-10 2016-11-22 Zanguli Llc Secure device and proxy for secure operation of a host data processing system
DE102015210294A1 (de) * 2015-06-03 2016-12-08 Siemens Aktiengesellschaft Clientvorrichtung und Servervorrichtung zum abgesicherten Freischalten von Funktionen eines Clients
WO2017096245A1 (en) 2015-12-03 2017-06-08 Fasetto, Llc Systems and methods for memory card emulation
US11360673B2 (en) * 2016-02-29 2022-06-14 Red Hat, Inc. Removable data volume management
AU2017363882B2 (en) 2016-11-23 2021-08-12 Fasetto, Inc. Systems and methods for streaming media
US20180218132A1 (en) * 2017-02-02 2018-08-02 Microsoft Technology Licensing, Llc Application portability via application(s) installed on a portable storage device
CN110461658A (zh) 2017-02-03 2019-11-15 法斯埃托股份有限公司 用于钥匙化设备中的数据存储的***和方法
WO2019079628A1 (en) 2017-10-19 2019-04-25 Fasetto, Inc. PORTABLE ELECTRONIC DEVICE CONNECTING SYSTEMS
WO2019109033A1 (en) 2017-12-01 2019-06-06 Fasetto, Inc. Systems and methods for improved data encryption
JP2021522568A (ja) 2018-04-17 2021-08-30 ファセット・インコーポレーテッド リアル・タイム・フィードバックを伴うプレゼンテーションのためのデバイス
JP2019091459A (ja) * 2018-12-11 2019-06-13 シャープ株式会社 情報処理装置、制御方法及びプログラム
US11874700B2 (en) 2019-11-12 2024-01-16 International Business Machines Corporation Wearable secure data device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1438586A (zh) * 2002-02-08 2003-08-27 佳能株式会社 ***设备、服务器、信息处理***以及控制方法
CN1500243A (zh) * 2001-04-05 2004-05-26 �Ҵ���˾ 使用可移动存储器收集和恢复用户环境数据

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6233623B1 (en) * 1996-01-11 2001-05-15 Cabletron Systems, Inc. Replicated resource management system for managing resources in a distributed application and maintaining a relativistic view of state
US5845128A (en) * 1996-02-20 1998-12-01 Oracle Corporation Automatically preserving application customizations during installation of a new software release
US6442570B1 (en) 1997-10-27 2002-08-27 Microsoft Corporation Object identification and data communication during an object synchronization process
US6721740B1 (en) * 1998-05-29 2004-04-13 Sun Microsystems, Inc. Method and apparatus of performing active update notification
US6405362B1 (en) 1998-11-13 2002-06-11 Microsoft Corporation Automatic software installation and cleanup
US6374402B1 (en) * 1998-11-16 2002-04-16 Into Networks, Inc. Method and apparatus for installation abstraction in a secure content delivery system
US6216158B1 (en) * 1999-01-25 2001-04-10 3Com Corporation System and method using a palm sized computer to control network devices
US6578045B1 (en) * 1999-04-20 2003-06-10 Microsoft Corporation System and method for retrieving registry data
US6343287B1 (en) * 1999-05-19 2002-01-29 Sun Microsystems, Inc. External data store link for a profile service
US6529992B1 (en) * 1999-07-26 2003-03-04 Iomega Corporation Self-contained application disk for automatically launching application software or starting devices and peripherals
US6738766B2 (en) * 2000-02-02 2004-05-18 Doongo Technologies, Inc. Apparatus and methods for providing personalized application search results for wireless devices based on user profiles
JP2002051058A (ja) * 2000-04-20 2002-02-15 Matsushita Electric Ind Co Ltd 通信システム、車載通信システム、通信機器、及び車載機器
US20040172427A1 (en) * 2000-05-16 2004-09-02 Thomas Trent M. Self-contained application disk for automatically launching application software or starting devices and peripherals
CA2424352A1 (en) * 2000-05-28 2001-12-06 Yaron Mayer System and method for comprehensive general generic protection for computers against malicious programs that may steal information and/or cause damages
US6868451B1 (en) * 2000-06-20 2005-03-15 Palm Source, Inc. Data exchange between a handheld device and another computer system using an exchange manager via synchronization
JP2002041247A (ja) * 2000-07-28 2002-02-08 Nec Corp コンピュータシステムおよびusbメモリ装置
US7107587B1 (en) * 2000-09-18 2006-09-12 Microsoft Corporation Access redirector and entry reflector
US6918113B2 (en) * 2000-11-06 2005-07-12 Endeavors Technology, Inc. Client installation and execution system for streamed applications
US7464094B2 (en) 2000-12-29 2008-12-09 Gateway Inc. Shared registry with multiple keys for storing preferences and other applications on a local area network
US6850986B1 (en) * 2001-03-21 2005-02-01 Palm Source, Inc. Method and system for implementing URL scheme proxies on a computer system
JP2003178017A (ja) * 2001-09-17 2003-06-27 Anyone Kk プログラム内蔵のusbデバイス
JP2003108385A (ja) * 2001-09-28 2003-04-11 Toshiba Corp 着脱型外部記憶装置を利用したコンピュータシステムおよびコンピュータ利用方法
US7526575B2 (en) 2001-09-28 2009-04-28 Siebel Systems, Inc. Method and system for client-based operations in server synchronization with a computing device
US7496931B2 (en) * 2003-12-30 2009-02-24 Symantec Corporation Portable memory storage devices containing public context application layers
JP3767818B2 (ja) * 2002-10-28 2006-04-19 株式会社サスライト 着脱式デバイス及びプログラムの起動方法
JP4245374B2 (ja) * 2002-11-01 2009-03-25 株式会社サスライト 着脱式デバイスおよび制御回路
US7555538B2 (en) * 2002-12-26 2009-06-30 Research In Motion Limited System and method for building and execution of platform-neutral generic services' client applications
US7356709B2 (en) * 2003-01-31 2008-04-08 Microsoft Corporation Systems and methods for deterring software piracy in a volume license environment
CN107885679B (zh) 2003-04-11 2021-10-08 富意科技公司 一种可实现自动运行的集成电路存储设备或方法
US7152782B2 (en) * 2003-07-11 2006-12-26 Visa International Service Association System and method for managing electronic data transfer applications
US7203696B2 (en) * 2003-08-29 2007-04-10 Microsoft Corporation Dynamic registry partitioning
US7080164B2 (en) * 2003-09-23 2006-07-18 Intel Corporation Peripheral device having a programmable identification configuration register
US20050071378A1 (en) * 2003-09-30 2005-03-31 Smith Alan G. Method of storing applications on removable storage
US7080279B2 (en) 2003-12-03 2006-07-18 International Business Machines Corporation Autonomic rollback
US20050210501A1 (en) 2004-03-19 2005-09-22 Microsoft Corporation Method and apparatus for handling metadata
US20060026414A1 (en) * 2004-07-29 2006-02-02 International Business Machines Corporation Managing the environmental configuration for an application disposed in removable storage
US8499028B2 (en) * 2005-02-23 2013-07-30 International Business Machines Corporation Dynamic extensible lightweight access to web services for pervasive devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1500243A (zh) * 2001-04-05 2004-05-26 �Ҵ���˾ 使用可移动存储器收集和恢复用户环境数据
CN1438586A (zh) * 2002-02-08 2003-08-27 佳能株式会社 ***设备、服务器、信息处理***以及控制方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9021469B2 (en) 2010-06-11 2015-04-28 Microsoft Technology Licensing, Llc Web application pinning including task bar pinning
US9069636B2 (en) 2010-06-11 2015-06-30 Microsoft Technology Licensing, Llc Dynamic web application notifications including task bar overlays
US9164671B2 (en) 2010-06-11 2015-10-20 Microsoft Technology Licensing, Llc Web application navigation domains
US9367636B2 (en) 2010-06-11 2016-06-14 Microsoft Technology Licensing, Llc Web application home button
US9588754B2 (en) 2010-06-11 2017-03-07 Microsoft Technology Licensing, Llc Dynamic web application notifications including task bar overlays

Also Published As

Publication number Publication date
JP2006172449A (ja) 2006-06-29
EP1672509A2 (en) 2006-06-21
US20060130004A1 (en) 2006-06-15
EP1672509A3 (en) 2008-04-30
JP5301764B2 (ja) 2013-09-25
KR101169085B1 (ko) 2012-07-27
CN1790265A (zh) 2006-06-21
EP1672509B1 (en) 2018-05-23
KR20060067815A (ko) 2006-06-20
US7712086B2 (en) 2010-05-04

Similar Documents

Publication Publication Date Title
CN1790265B (zh) 便携式应用程序
US6795835B2 (en) Migration of computer personalization information
US6981152B2 (en) Smart card security information configuration and recovery system
US8402459B2 (en) License management system, license management computer, license management method, and license management program embodied on computer readable medium
US20060107062A1 (en) Portable personal mass storage medium and information system with secure access to a user space via a network
US7146612B2 (en) Method and system for receiving a software image from a customer for installation into a computer system
US20100306760A1 (en) Software setup system
US20060227378A1 (en) Data storage device, data storage method, and program thereof
JP2007280389A (ja) ウェブインストーラドライバ
US8850563B2 (en) Portable computer accounts
EP1760602A1 (en) Computer system and computer equipped with terminal information reporting function
JP4722519B2 (ja) 計算機システム及びストレージサーバ、検索サーバ、端末装置並びに検索方法
JP6007856B2 (ja) 情報処理システム、情報処理装置及び情報処理プログラム
US20060221710A1 (en) Information processing device, information processing method, program recording medium
JP4647438B2 (ja) 文書管理システム
JP2001331326A (ja) ソフトウェア供給システム、ソフトウェア供給方法及び記録媒体
US8006284B2 (en) Electronic device, information processing system, information processing apparatus and method, program, and recording medium
KR100723650B1 (ko) 마크 데이터의 요청을 위한 도서식별정보의 효율적 입력과이것에 의한 마크 데이터를 효율적으로 확보하는 방법 및이를 위한 시스템
JP3919563B2 (ja) 情報収集システム及び情報収集方法
JP3972593B2 (ja) 識別情報管理装置、コンピュータデータ通信システム、及びプログラム
KR100880595B1 (ko) 웹 사이트 구축 서비스를 제공하기 위한 방법, 시스템 및 저장 장치
JP4882550B2 (ja) オブジェクト管理システム及びオブジェクト管理方法、並びにコンピュータ・プログラム
JP5311729B2 (ja) アクセス制御システム
JP3577494B2 (ja) インターネットを介する業務ソフトサービスシステム
JP2007241854A (ja) オンラインストレージシステム

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

Granted publication date: 20110316

Termination date: 20191115

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