CN108984192A - 信息处理设备、计算机可读介质和程序管理方法 - Google Patents

信息处理设备、计算机可读介质和程序管理方法 Download PDF

Info

Publication number
CN108984192A
CN108984192A CN201810558998.5A CN201810558998A CN108984192A CN 108984192 A CN108984192 A CN 108984192A CN 201810558998 A CN201810558998 A CN 201810558998A CN 108984192 A CN108984192 A CN 108984192A
Authority
CN
China
Prior art keywords
program
version
information
update
updating
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.)
Granted
Application number
CN201810558998.5A
Other languages
English (en)
Other versions
CN108984192B (zh
Inventor
伊藤万里雄
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of CN108984192A publication Critical patent/CN108984192A/zh
Application granted granted Critical
Publication of CN108984192B publication Critical patent/CN108984192B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00214Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of transmission
    • H04N1/0022Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of transmission involving facsimile protocols or a combination of facsimile protocols and computer data transmission protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00222Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing
    • H04N1/00233Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing details of image data reproduction, e.g. network printing or remote image display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00278Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a printing apparatus, e.g. a laser beam printer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00344Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a management, maintenance, service or repair apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00925Inhibiting an operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0037Topological details of the connection
    • H04N2201/0039Connection via a network

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种信息处理设备、计算机可读介质和程序管理方法。在安装应用的更新程序时,将更新程序和与该更新程序有关的信息存储在与存储现有应用的区域不同的区域中。在启动该应用时,参考与更新程序有关的信息,并且进行控制以启动该应用。此外,响应于用于开始或停止更新程序的指示,写入或去除与该更新程序有关的信息。在程序执行时,执行与最新信息相对应的程序。

Description

信息处理设备、计算机可读介质和程序管理方法
技术领域
本发明涉及信息处理设备、计算机可读介质和程序管理方法,由此可以更新/添加应用。
背景技术
已知有如下结构:将诸如PC等的信息处理设备连接至部署在网络上的web服务器,并且将安装在web服务器上的web应用所提供的操作画面显示在信息处理设备上所安装的web浏览器上。
在这种情况下,信息处理设备的web浏览器首先将针对操作画面的请求发送至web服务器上所安装的web应用。然后,响应于来自信息处理设备的请求,web应用将包含用于在web浏览器上显示操作画面的HTML数据的应答发送至信息处理设备。信息处理设备的web浏览器分析所接收到的HTML数据,并且显示基于HTML数据中所包括的脚本的操作画面。
此外,如果用户经由web浏览器上所显示的操作画面来输入指示,则web浏览器向web服务器通知所输入的指示。然后,当接收到该通知时,web服务器上的web应用根据所输入的指示来执行处理。
近年来,配备有扫描器和打印机的被称为MFP(多功能外围设备)的一些图像处理设备包括如上所述的web浏览器。
针对诸如HTML 5、ECMAScript 6和CSS 3等的web技术持续开发新规范和新技术,使得该技术逐日进化。web浏览器被频繁更新,以符合其新规范,并且伴随着web浏览器的规范的变化和新规范的添加,同样很频繁地更新web应用。另一方面,存在由于一些原因而不能频繁更新的诸如商业使用应用等的web应用。为了使用这种web应用,通常的情况是使web浏览器不更新。
然而,为了阅览逐日进化的网站,需要使用支持这种网站的web浏览器。由于这个原因,期望在维持旧web浏览器以使用不能被频繁更新的web应用的同时,使用最新web浏览器以阅览最新网站。然而,在安装针对最新web浏览器的更新程序时,消除了旧web浏览器的程序。日本特开2016-103159公开了如下示例:在安装针对程序(web浏览器)的更新程序时,进行程序(web浏览器)的备份,以提高更新的可靠性,但是当更新完成时去除该备份。为了再次使用旧web浏览器,需要再次安装旧web浏览器。因此,该技术的问题在于:在同一信息处理设备上不能具有旧web浏览器和最新web浏览器这两者,并且也不容易在旧web浏览器和最新web浏览器之间进行切换。
发明内容
本发明提供一种信息处理设备和程序管理方法,由此可以利用简单操作来适当使用不同版本的程序并提高使用性。
本发明具有以下结构。根据本发明的一个方面,提供一种信息处理设备,包括:更新部件,用于安装针对现有程序的更新版本程序作为与所述现有程序不同的程序,并且存储表示登记了所述更新版本程序的登记信息;执行控制部件,用于进行控制,以使得在程序执行时基于所述登记信息来判断要执行所述现有程序和所述更新版本程序中的哪一个;以及去除部件,用于响应于停止所述更新版本程序的执行的操作,停止所述更新版本程序,并去除所述更新版本程序的所述登记信息。
根据本发明的另一方面,提供一种计算机可读介质,其存储程序,所述程序使计算机用作:更新部件,用于安装针对现有程序的更新版本程序作为与所述现有程序不同的程序,并且存储表示登记了所述更新版本程序的登记信息;执行控制部件,用于进行控制,以使得在程序执行时基于所述登记信息来判断要执行所述现有程序和所述更新版本程序中的哪一个;以及去除部件,用于响应于停止所述更新版本程序的执行的操作,停止所述更新版本程序,并去除所述更新版本程序的所述登记信息。
根据本发明的又一方面,提供一种程序管理方法,其由信息处理设备执行,其中,所述信息处理设备包括更新部件、执行控制部件和去除部件,所述程序管理方法包括:利用所述更新部件,安装针对现有程序的更新版本程序作为与所述现有程序不同的程序,并存储表示登记了所述更新版本程序的登记信息;利用所述执行控制部件,进行控制,以使得在程序执行时基于所述登记信息来判断要执行所述现有程序和所述更新版本程序中的哪一个;以及利用所述去除部件,响应于停止所述更新版本程序的执行的操作,停止所述更新版本程序,并去除所述更新版本程序的所述登记信息。
根据本发明,可以利用简单操作来适当使用不同版本的程序,并提高使用性。
通过以下(参考附图)对典型实施例的说明,本发明的其它特征将变得明显。
附图说明
图1是示出连接根据本发明实施例的MFP的系统的整体结构的图。
图2是示出根据本发明实施例的MFP的硬件结构的框图。
图3A和3B是示出根据本发明实施例的更新信息和附加应用存储部的软件结构的图。
图4A和4B是分别示出根据本发明实施例的初始状态下的更新信息表以及进行了更新之后的更新信息表的图。
图5是示出根据本发明实施例的用于安装更新程序的序列的图。
图6是示出根据本发明实施例的程序启动部所执行的程序的启动的流程的图。
图7是示出根据本发明实施例的附加应用管理画面的图。
图8是示出根据本发明实施例的JavaScript和web浏览器版本之间的对应表的图。
图9是示出根据本发明实施例的用于自动切换web浏览器的序列的图。
图10示出根据本发明实施例的用于进行自动切换web浏览器的序列中的判断的JavaScript文件的示例。
图11A和11B是分别示出根据实施例1的响应于停止指示而进行的处理流程和响应于开始指示而进行的处理流程的图。
具体实施方式
以下将参考附图来说明根据本发明的实施例。
实施例1
系统结构
图1是示出使用根据本实施例的图像处理设备的系统的结构的示例的图。该系统包括作为经由网络100连接的图像处理设备的MFP 101以及作为MFP 101的外部设备的web服务器102。在关注于MFP 101的信息处理功能的情况下,MFP 101还可以被称为“信息处理设备”。网络100是设备进行其之间的通信的基础设施,并且可以连接至因特网。MFP 101可以是任意设备,只要其具有web浏览器功能即可,因而MFP 101不限于MFP(多功能外围设备)。web服务器102经由网络100而连接至MFP 101,具有经由网络100而分发web内容的功能,并且响应于来自MFP 101的请求而提供web内容。这些设备可以存在于局域网上,或者可以经由因特网而连接。此外,web服务器102可以作为MFP 101的功能而并入MFP 101中。
图2是示出根据本实施例的MFP 101和web服务器102的硬件结构的示例。在该结构示例中,包括用于控制设备整体的CPU 201、用于提供CPU 201所用的工作区域的RAM 202、以及用于存储用于实现根据本实施例的发明的程序和各种设置的存储装置203(HDD或NVRAM等)。此外,包括用户输入命令所使用的用户输入装置204、提供画面显示的UI显示装置205、进行与其它装置的网络通信的网络装置206、以及主总线200。在本实施例中,除非另有说明,否则在MFP 101和web服务器102中,CPU 201经由主总线200控制RAM 202、存储装置203、用户输入装置204、UI显示装置205和网络装置206。UI显示装置205还可以用作用户输入装置204,如触摸面板显示器。注意,web服务器102没有必要一定包括用户输入装置204和UI显示装置205。此外,在MFP 101中,图像读取装置或图像打印装置可以连接至主总线200。
·软件结构
图3A是示出根据本实施例的MFP 101的软件结构的图。图3A所示的功能部是通过MFP 101的CPU 201执行控制程序来实现的。MFP 101包括web浏览器301、程序启动部302、附加应用管理部303、附加应用存储部304和更新信息存储部305。利用这些功能部,实现MFP101的程序管理方法。
web浏览器301可以是任意web浏览器,只要其具有通过与任意服务器进行通信来获取web内容并将所获取到的web内容显示在画面上的功能即可。
程序启动部302是与启动MFP 101同时启动的程序,并且用来启动web浏览器301。在本实施例中,示出了程序启动部302启动web浏览器的示例,但是程序启动部302可以用来启动其它通用程序。在MFP 101启动时或者在从其它程序接收到用以启动web浏览器301的请求的情况下,程序启动部302参考更新信息存储部305中所存储的更新信息表(图4A)。更新信息表(图4A)是针对各应用包括诸如应用名称401、现有应用路径402、更新应用路径403、现有应用版本404和更新应用版本405等的信息的表。应用名称是应用的识别信息,应用路径是用于识别(或指定)应用的位置的信息,以及应用版本是用于识别(或指定)应用的编辑(版本)的信息。程序启动部302搜索应用名称401中具有表示web浏览器的“browser(浏览器)”的行,并且通过参考该行的更新应用路径403来判断更新应用路径403中是否存储了值。如果判断为更新应用路径403中存储了值(参见图4B),则这意味着在由更新应用路径403中所存储的值表示的位置处存在更新版本应用。此时,程序启动部302将现有应用版本404与更新应用版本405进行比较,并且如果判断为更新应用版本405比现有应用版本404新,则程序启动部302启动存在于更新应用路径403中存储的值所表示的位置处的web浏览器。另一方面,如果判断为更新应用版本405比现有应用版本404旧,则程序启动部302启动存在于现有应用路径402而非更新应用路径403中存储的值所表示的位置处的web浏览器。这是因为,与现有应用相比,更新版本应用可能更旧。另一方面,如果判断为更新应用路径403中没有存储值(图4A),则这意味着没有安装更新程序,因而程序启动部302启动存在于现有应用路径402中存储的值所表示的位置处的web浏览器。
附加应用管理部303是进行控制以使得针对MFP 101安装/卸载附加应用或者开始/停止该附加应用的程序。如这里所使用的,“附加应用”是指并非默认安装在MFP 101的固件上的应用,并且是可以稍后添加的程序。例如,在MFP 101包括用于执行以编写的应用的平台的情况下,制作附加应用作为应用,并且附加应用管理部303可以用作用于管理Java VM应用和Java应用的管理模块。附加应用管理部303能够在UI显示装置205上显示应用管理画面(图7),因而用户可以进行控制,以经由应用管理画面(图7)安装/卸载附加应用或者开始/停止附加应用。在本实施例中,假定:MFP 101还包括web服务器,并且应用管理画面(图7)作为web应用在MFP 101上实现。管理员或用户可以通过从连接至网络100的PC(未示出)上所安装的web浏览器或者MFP 101上所安装的web浏览器301访问MFP 101中所设置的web服务器来使用附加应用管理部303。
应用管理画面(图7)包括所安装的各附加应用的应用状态701和应用控制按钮702,并且还包括用于查找要安装的附加应用的参考按钮703。应用状态701表示所安装的附加应用是否正运行。应用控制按钮702是用于使附加应用在开始和停止之间切换的按钮。参考按钮703是用于安装附加应用的按钮,并且通过按下参考按钮703,可以选择PC(未示出)中所存储的附加应用并安装该附加应用。如果附加应用管理部303经由应用管理画面(图7)上的参考按钮703接收到用于安装附加应用的指示,则附加应用管理部303将由该指示所指示的附加应用存储在附加应用存储部304中。此外,附加应用管理部303在安装附加应用的同时开始该附加应用。
附加应用存储部304是在经由附加应用管理部303安装附加应用时存储该附加应用的区域,因而与存储web浏览器301的区域不同。因此,如果安装用于更新web浏览器的更新程序310作为附加应用,则将更新程序310存储在附加应用存储部304中,并且现有的web浏览器301没有被重写。另一方面,如果安装了具有或使用web浏览器功能的多个附加应用,则旧版本的附加应用可以被新版本的附加应用重写,或者它们可以并行存储并进行排他操作。
图3B示出安装用于web浏览器的更新程序作为附加应用的附加应用存储部304的结构。更新程序310存储在附加应用存储部304中。更新程序310包括用于更新要更新的程序的更新控制模块311、以及作为要更新的程序的较新版本的更新版本程序(在本实施例中为更新版本web浏览器312)。当经由附加应用管理部303开始更新程序310时,执行更新控制模块311。更新控制模块311将到设置有更新版本web浏览器312的位置的路径以及更新版本web浏览器312的版本信息存储在更新信息存储部305中所存储的更新信息表中。将到设置有更新版本web浏览器312的位置的路径存储在更新应用路径403中,并且将更新版本web浏览器312的版本信息存储在更新应用版本405中。这同样适用于经由应用管理画面(图7)上的应用控制按钮702(“开始”按钮)来开始附加应用的情况。即,如果选择没有正运行的更新程序310作为对象程序并按下“开始”按钮,则执行更新程序310的更新控制模块311,并且如上所述将到设置有更新版本web浏览器312的位置的路径存储在更新应用路径403中,并将更新版本web浏览器312的版本信息存储在更新应用版本405中。
另一方面,如果经由应用管理画面(图7)上的应用控制按钮702(“停止”按钮)停止附加应用,则更新控制模块311从更新信息存储部305中所存储的更新信息表中去除更新应用路径403和更新应用版本405中所存储的停止附加应用的信息。图4A示出表示没有安装或正运行更新版本web浏览器312和附加应用的状态的更新信息表。另一方面,图4B示出表示安装且正运行具有版本2.5.5的更新版本web浏览器312的状态的更新信息表。
在针对诸如web浏览器等的相同程序安装了不同版本的多个更新程序310的情况下,还可以经由上述过程来选择要执行的版本的更新程序。即,由于不同版本的更新程序是针对各版本单独安装的,因此仅需要用户选择用户想要使用的版本的更新程序,然后按下应用管理画面上的“开始”按钮。然而,在这种情况下,为了排他地执行所选择的版本的更新程序,停止除了按下“开始”按钮的版本以外的更新程序,之后执行所选择的版本的更新程序。由此,从更新信息表中去除没有被选择为执行的其它版本的更新应用路径和更新应用版本,之后登记要执行的版本的更新应用路径和更新应用版本。然后,开始执行所登记的版本的例如web浏览器的更新版本程序。
在并非更新版本的应用(即,首次安装的应用)的情况下,在安装该应用时,在更新信息表中登记该应用的应用名称401、现有应用路径402和现有应用版本404。
更新信息存储部305是存储更新信息表(图4A或图4B)的存储区域。如上所述,通过附加应用存储部304中所存储的更新程序310的更新控制模块311来重写更新信息表。
·安装更新程序的序列
图5示出根据本实施例的用于安装更新程序的序列,其中该序列是在经由应用管理画面(图7)向附加应用管理部303提供用以安装更新程序310的指示的情况下所进行的处理。
在步骤S501中,附加应用管理部303将更新程序310存储在附加应用存储部304中,并开始更新程序310。
在步骤S502中,附加应用存储部304中所存储的更新程序310的更新控制模块311将到更新程序310的路径以及更新程序310的版本存储在更新信息存储部305中所存储的更新信息表中。此时,更新程序310基于要更新的应用的应用名称(在本实施例中为应用名称“browser”),在搜索信息表(图4A或图4B)中搜索具有与该应用名称一致的应用名称的行,以确定该行作为表示对象应用的记录。如果发现了该记录,则更新程序310将到更新版本程序的路径和更新版本程序的版本记录在该记录的更新应用路径403和更新应用版本405中。如果没有发现该记录,则更新程序310可以例如将到更新版本程序的路径和更新版本程序的版本记录在该记录的现有应用路径402和现有应用版本404中。由此,将更新信息表中所记录的不存在现有程序的状态下所安装的更新版本程序作为现有(或者换句话说所安装的)程序记录在更新信息表中。可选地,如果没有发现该记录,则可以通过在UI显示装置205上提供用于通告该事实的显示来向用户通知该事实。
在步骤S503中,附加应用存储部304中所存储的更新程序310的更新控制模块311向程序启动部302发送用于再次启动web浏览器的请求。
在步骤S504中,程序启动部302停止web浏览器301。
在步骤S505中,程序启动部302参考更新信息存储部305中所存储的web浏览器的更新信息表(图4A或图4B)。
在步骤S506中,程序启动部302基于步骤S505中所参考的更新信息表,来判断要启动现有程序和更新程序中的哪一个。这里,更新信息表中所登记的最新版本的应用被确定为要执行的应用。在该示例中,存在到web浏览器的更新应用路径403,并且更新应用版本405比现有应用版本新,因而程序启动部302确定为要启动由更新应用路径403中写入的值所指定的程序。
在步骤S507中,程序启动部302启动步骤S506中所确定的应用(在本示例中为附加应用存储部304中所存储的更新程序310的更新版本web浏览器312)。
如上所述,在安装更新程序时启动更新程序。此外,MFP 101启动时用于启动更新程序的流程与从步骤S505开始至步骤S507为止的处理相同。
稍后将参考图11A和11B来说明响应于应用管理画面(图7)上的“开始”按钮或“停止”按钮被按下所进行的过程。
·要启动的应用的确定
图6是由程序启动部302执行的用于判断要启动现有应用和更新版本应用中的哪一个的处理(或者换句话说,用于确定(或执行)要启动的版本的处理)的流程。该过程在软件方面由程序启动部302执行,并且在硬件方面由CPU201执行。该过程与图5所示的从步骤S505起至步骤S507为止的处理相对应,并且由程序启动部302执行。
在步骤S601中,程序启动部302参考更新信息存储部305中所存储的对象程序的更新信息。
在步骤S602中,程序启动部302确认步骤S601中所参考的更新信息中是否写入了更新应用路径403。如果判断为写入了更新应用路径,则过程进入步骤S603。如果判断为没有写入更新应用路径,则过程进入步骤S605。
在步骤S603中,程序启动部302在步骤S601中所参考的更新信息中确认更新应用的版本是否比现有应用的版本新。如果判断为更新应用的版本比现有应用的版本新,则过程进入步骤S604。否则,过程进入步骤S605。
在步骤S604中,程序启动部302启动由步骤S601参考的更新信息中所包括的更新应用路径403中所写入的值表示的程序。
在步骤S605中,程序启动部302启动由步骤S601参考的更新信息中所包括的现有应用路径402中所写入的值表示的程序。
·开始和停止应用的过程
图11A和11B分别示出在图7所示的应用管理画面上按下了“停止”按钮(以下还被称为“停止指示”)的情况下和在该应用管理画面上按下了“开始”按钮(以下还被称为“开始指示”)的情况下由MFP 101所进行的处理过程。响应于web浏览器所显示的应用管理画面上的停止指示,MFP 101中所设置的web服务器接收到停止指示。将该停止指示例如传送至附加应用管理部303,并且停止发出了该停止指示的对象程序(S1101)。此时,如果对象程序是更新程序310,则还停止更新程序310中所包括的更新版本程序(例如更新版本web浏览器312)。然后,从更新信息表中去除具有对象程序的名称作为应用名称的行的更新应用路径403和更新应用版本405(S1102)。之后,处理分叉至图6所示的步骤S601,并且执行更新之前的现有程序。结果,停止更新版本程序,并且执行保持没有更新的现有程序。
另一方面,在应用管理画面上输入了开始指示的情况下,MFP 101中所设置的web服务器接收到该开始指示。响应于该开始指示,例如附加应用管理部303执行发出了该开始指示的对象程序。因此,执行图5所示的步骤S502。在步骤S502之后,如果是正常附加应用,则执行发出了该开始指示的对象程序。另一方面,如果对象程序是更新程序310,则执行更新程序310,并且将更新程序310的位置和版本登记在更新信息表的更新应用路径403和更新应用版本405中(S502),并且通过程序启动部302来停止现有应用(S503、S504)。之后,程序启动部302执行从图6所示的步骤S601起的过程。
通过上述处理,将到更新程序310的路径和更新程序310的版本登记在更新信息表的更新应用路径403和更新应用版本405中,执行图6所示的过程,并且执行更新版本程序(更新版本web浏览器)。
利用上述结构和过程,可以在web浏览器所显示的画面上提供用于停止或开始更新应用的指示,并且容易进行现有程序和更新程序之间的切换。
如果更新程序被配置为安装与现有程序的版本相比更新的版本,则可以基于是否登记了更新程序而不是基于版本信息来确定要启动的程序。
具体地,在图4A和4B中,在无需存储与版本信息相对应的现有应用版本404和更新应用版本405的情况下,存储与登记信息相对应的更新应用路径403。这消除了图6所示的S603所进行的判断处理。
实施例2
上述方法被配置成用户在应用管理画面(图7)上进行与是使用更新程序还是使用现有程序有关的设置。由于这个原因,用户需要不时地在例如图7所示的应用管理画面上适当进行切换操作。在本实施例中,该应用基于例如web内容中所包括的库的脚本方面的差异来自动判断相应的web浏览器并进行切换。同样,在本实施例中,与实施例1相同,将新安装的更新程序登记在更新信息表(图4A或图4B)中,并且响应于停止或开始指示而去除或登记到更新程序的更新应用路径和更新程序的更新应用版本,由此可以指定所执行的web浏览器的版本。
·使用脚本要执行的版本的确定
图8示出将和web浏览器版本相关联、并且用于根据该内容来判断要启动现有应用和更新版本应用中的哪一个的版本对应表或对应信息。版本对应表存储在更新信息存储部305中,并且在安装更新程序310时通过更新控制模块311来更新。版本对应表包括脚本名称801、脚本版本802和相应浏览器版本803。相应浏览器版本803示出与脚本名称801和脚本版本802所指定的脚本相对应的浏览器。在web浏览器301或更新版本web浏览器312下载服务器102的web内容中所包含的的情况下,获取到所下载的脚本的脚本名称和脚本版本。程序启动部302基于脚本名称801和脚本版本802来参考相应浏览器版本803。然后,程序启动部302将所参考的浏览器版本803与当前正运行的web浏览器的版本进行比较,并且如果判断为浏览器版本803与当前正运行的web浏览器的版本不同,则程序启动部302停止当前正运行的web浏览器,并启动浏览器版本803的web浏览器。可以通过例如参考根据实施例1的更新信息表(图4A或图4B)等来指定当前正运行的web浏览器。此外,在启动web浏览器时,程序启动部302参考更新信息表(图4A或图4B),并且判断是否存在与浏览器版本803一致的现有应用404或更新应用版本405。如果发现了与浏览器版本803一致的版本,则使用与一致的应用相对应的应用路径来指定该一致的版本的位置,并且启动该应用(web浏览器)。如果没有发现该版本,则例如可以启动最新版本。
图10示出web内容中所包含的的示例。web内容中所包含的库包括库名称1001以及库版本1002。作为web浏览器301或更新版本web浏览器312参考这些的结果,程序启动部302可以基于版本对应表来确定相应web浏览器的版本。
·Web浏览器的切换
图9示出程序启动部302所进行的根据JavaScript库的版本来切换要使用的web浏览器的序列。
在步骤S901中,为了获取web应用的画面信息,web浏览器301将HTTP请求发送至web服务器102。
在步骤S902中,web服务器102发送HTML数据作为针对步骤S901中所接收到的请求的应答。
在步骤S903中,web浏览器301分析/执行步骤S902中所接收到的HTML数据,并且发送用于获取库的HTTP请求。
在步骤S904中,web服务器102发送库作为针对步骤S903中所接收到的请求的应答。
在步骤S905中,web浏览器301从步骤S904中所接收到的库获取库名称和库版本。
在步骤S906中,web浏览器301向程序启动部302通知步骤S905中所获取到的库名称和库版本、以及步骤S901中请求被发送至的URL。
在步骤S907中,程序启动部302基于步骤S906中所通知的库名称和库版本来从更新信息存储部305中所存储的版本对应表中获取相应的浏览器版本。将基于获取到对应于更新版本web浏览器312的版本的假设来说明该示例。如这里所使用的,术语“对应于”是指例如程序(例如,脚本和web浏览器)的接口匹配并适当操作的状态。
在步骤S908中,程序启动部302基于步骤S907中所获取到的相应浏览器版本来确定要启动哪一个web浏览器。具体地,由于当前启动的web浏览器是尚未更新版本的web浏览器301,因此程序启动部302确定为要停止web浏览器301,并且要启动更新版本web浏览器312。此时,如果不存在版本对应于脚本的web浏览器,则可以显示用于通知该事实的对话框。
在步骤S909中,程序启动部302停止web浏览器301。
在步骤S910中,程序启动部302启动版本对应于脚本的web浏览器(在本实施例中为附加应用存储部304中所存储的更新版本web浏览器312)。此时,程序启动部302向更新版本web浏览器312通知步骤S906中所接收到的URL。
在步骤S911中,更新版本web浏览器312根据步骤S910中所接收到的URL向web服务器102发送请求。
在步骤S912中web服务器102向更新版本web浏览器312发送HTML数据。
在步骤S913中,更新版本web浏览器312分析/执行步骤S912所接收到的HTML数据,并且发送用于获取库的HTTP请求。
在步骤S914中,web服务器102发送库作为针对步骤S913中所接收到的请求的应答。
在步骤S915中,更新版本web浏览器312执行步骤S914中接收到的库。
在该示例中,基于的名称和版本来指定相应web浏览器的版本,但是该方法不限于此。例如,可以通过文件的哈希值来指定,或者可以基于文件中所包含的API的类型或版本来确定。这样,在本实施例中,可以在无需用户进行切换操作的情况下,执行与所下载的脚本相对应的web浏览器。这进一步提高了操作的容易性。
利用上述结构,多个不同版本的程序(换句话说,现有程序和更新程序)可以共存。此外,可以容易在更新程序的开始和停止之间进行切换。即,可以从程序的多个版本中选择版本并执行该版本。可选地,可以自动执行与所下载的脚本相对应的版本。结果,一旦安装了版本,则可以在无需进行安装/卸载的情况下适当使用不同版本的web浏览器,因而提高了使用性。
在实施例1和2中,使用web浏览器作为现有程序和更新版本程序,但是这些实施例可适用于除了web浏览器以外的程序。例如,为了通过应用程序来提供web浏览器功能,例如通过等来提供被称为WebView的类。针对这种WebView,上述实施例通过使用例如WebView的版本和包含WebView的库的版本等而同样可适用。
其它实施例
本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(CPU)、微处理单元(MPU)读出并执行程序的方法。
尽管已经参考典型实施例说明了本发明,但是应该理解,本发明不局限于所公开的典型实施例。所附权利要求书的范围符合最宽的解释,以包含所有这类修改、等同结构和功能。

Claims (12)

1.一种信息处理设备,包括:
更新部件,用于安装针对现有程序的更新版本程序作为与所述现有程序不同的程序,并且存储表示登记了所述更新版本程序的登记信息;
执行控制部件,用于进行控制,以使得在程序执行时基于所述登记信息来判断要执行所述现有程序和所述更新版本程序中的哪一个;以及
去除部件,用于响应于停止所述更新版本程序的执行的操作,停止所述更新版本程序,并去除所述更新版本程序的所述登记信息。
2.根据权利要求1所述的信息处理设备,其中,
在通过所述去除部件去除了所述登记信息之后,执行所述现有程序。
3.根据权利要求1或2所述的信息处理设备,其中,
响应于开始所述更新版本程序的执行的操作,通过所述更新部件来存储表示登记了所述更新版本程序的登记信息并通过所述执行控制部件来执行所述更新版本程序。
4.根据权利要求3所述的信息处理设备,其中,还包括:
web服务器,用于向外部设备提供画面信息,
其中,基于所述web服务器所提供的所述画面信息,在所述外部设备上所显示的画面上进行停止或开始所述更新版本程序的执行的操作。
5.根据权利要求1所述的信息处理设备,其中,
所述现有程序和所述更新版本程序是web浏览器。
6.根据权利要求1所述的信息处理设备,其中,
所述更新部件还存储表示所述更新版本程序的版本的版本信息,
所述执行控制部件进行控制,使得在程序执行时基于所述登记信息和所述版本信息来判断要执行所述现有程序和所述更新版本程序中的哪一个,以及
响应于停止所述更新版本程序的执行的操作,所述去除部件停止所述更新版本程序,并去除所述更新版本程序的所述登记信息和所述版本信息。
7.根据权利要求6所述的信息处理设备,其中,
所述信息处理设备具有对应信息,其中在所述对应信息中,将表示从外部设备下载的程序的版本的版本信息关联于与该程序相对应的所述现有程序或所述更新版本程序的版本信息,以及
在从所述外部设备下载了该程序的情况下,所述信息处理设备参考所述对应信息,并且执行与所下载的程序相对应的所述现有程序或所述更新版本程序。
8.根据权利要求7所述的信息处理设备,其中,
所述对应信息在安装所述更新版本程序时被更新。
9.根据权利要求7所述的信息处理设备,其中,
所述现有程序或所述更新版本程序是web浏览器,
从所述外部设备下载的程序是由所述web浏览器下载的脚本,以及
在下载了所述脚本的情况下,如果所述web浏览器的版本与所述脚本不对应,则启动对应版本的web浏览器。
10.一种计算机可读介质,其存储程序,所述程序使计算机用作:
更新部件,用于安装针对现有程序的更新版本程序作为与所述现有程序不同的程序,并且存储表示登记了所述更新版本程序的登记信息;
执行控制部件,用于进行控制,以使得在程序执行时基于所述登记信息来判断要执行所述现有程序和所述更新版本程序中的哪一个;以及
去除部件,用于响应于停止所述更新版本程序的执行的操作,停止所述更新版本程序,并去除所述更新版本程序的所述登记信息。
11.根据权利要求10所述的计算机可读介质,其中,
所述更新部件还存储表示所述更新版本程序的版本的版本信息,
所述执行控制部件进行控制,以使得在程序执行时基于所述登记信息和所述版本信息来判断要执行所述现有程序和所述更新版本程序中的哪一个,以及
响应于停止所述更新版本程序的执行的操作,所述去除部件停止所述更新版本程序,并去除所述更新版本程序的所述登记信息和所述版本信息。
12.一种程序管理方法,其由信息处理设备执行,其中,所述信息处理设备包括更新部件、执行控制部件和去除部件,
所述程序管理方法包括:
利用所述更新部件,安装针对现有程序的更新版本程序作为与所述现有程序不同的程序,并存储表示登记了所述更新版本程序的登记信息;
利用所述执行控制部件,进行控制,以使得在程序执行时基于所述登记信息来判断要执行所述现有程序和所述更新版本程序中的哪一个;以及
利用所述去除部件,响应于停止所述更新版本程序的执行的操作,停止所述更新版本程序,并去除所述更新版本程序的所述登记信息。
CN201810558998.5A 2017-06-01 2018-06-01 信息处理设备、计算机可读介质和程序管理方法 Active CN108984192B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017109317A JP6889617B2 (ja) 2017-06-01 2017-06-01 情報処理装置、プログラム管理方法、及びプログラム
JP2017-109317 2017-06-01

Publications (2)

Publication Number Publication Date
CN108984192A true CN108984192A (zh) 2018-12-11
CN108984192B CN108984192B (zh) 2022-06-14

Family

ID=64458307

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810558998.5A Active CN108984192B (zh) 2017-06-01 2018-06-01 信息处理设备、计算机可读介质和程序管理方法

Country Status (3)

Country Link
US (1) US20180349125A1 (zh)
JP (1) JP6889617B2 (zh)
CN (1) CN108984192B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6733479B2 (ja) 2016-03-17 2020-07-29 株式会社リコー 情報処理システム、情報処理装置、画像形成装置、情報処理方法およびプログラム
US10033898B2 (en) 2016-03-17 2018-07-24 Ricoh Company, Ltd. Information processing system, image forming apparatus, and method of processing information
US11907699B2 (en) * 2020-03-04 2024-02-20 Jpmorgan Chase Bank, N.A. System and method for implementing self-driven change detection release automation
US11474845B2 (en) * 2020-09-09 2022-10-18 Servicenow, Inc. System and method for versioned script management

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103080902A (zh) * 2010-08-18 2013-05-01 株式会社理光 信息处理装置和更新处理支持系统
US20140245283A1 (en) * 2013-02-28 2014-08-28 Brother Kogyo Kabushiki Kaisha Non-Transitory Computer Readable Medium Storing Instructions for Update Management, Update Management Device, and Image Processing System
CN104902131A (zh) * 2014-03-06 2015-09-09 佳能株式会社 信息处理设备和控制方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6488631A (en) * 1987-09-29 1989-04-03 Nec Corp Remote ipl selecting system
US20030195974A1 (en) * 1998-12-04 2003-10-16 Ronning Joel A. Apparatus and method for scheduling of search for updates or downloads of a file
JP2001211488A (ja) * 1999-11-17 2001-08-03 Sony Corp 情報処理装置および情報処理方法、並びに記録媒体
US8495621B2 (en) * 2009-06-15 2013-07-23 Microsoft Corporation Catalog-based software component management
JP5488287B2 (ja) * 2010-07-16 2014-05-14 株式会社リコー 画像形成装置、機器システム、プログラム管理方法、プログラム
US9256696B2 (en) * 2011-10-20 2016-02-09 International Business Machines Corporation Dynamic selection of one of many available web browsers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103080902A (zh) * 2010-08-18 2013-05-01 株式会社理光 信息处理装置和更新处理支持系统
US20140245283A1 (en) * 2013-02-28 2014-08-28 Brother Kogyo Kabushiki Kaisha Non-Transitory Computer Readable Medium Storing Instructions for Update Management, Update Management Device, and Image Processing System
CN104902131A (zh) * 2014-03-06 2015-09-09 佳能株式会社 信息处理设备和控制方法

Also Published As

Publication number Publication date
US20180349125A1 (en) 2018-12-06
CN108984192B (zh) 2022-06-14
JP6889617B2 (ja) 2021-06-18
JP2018205967A (ja) 2018-12-27

Similar Documents

Publication Publication Date Title
CN108984192A (zh) 信息处理设备、计算机可读介质和程序管理方法
US8863112B2 (en) Information processing apparatus and controlling method thereof
JP4612912B1 (ja) 情報処理装置、情報処理システムの制御方法およびプログラム
US20100107152A1 (en) Image forming apparatus, and web application installing method
JP4671198B2 (ja) 情報処理装置
US10430130B2 (en) Information processing system, information processing method
CN104717338A (zh) 通信设备、通信方法和记录介质
JP2015046075A (ja) 情報処理装置、その制御方法、及びコンピュータプログラム
JP2015103105A (ja) 通信装置、通信システム、及び通信プログラム
CN104049993A (zh) 信息处理系统、信息处理设备以及信息处理方法
CN102999349A (zh) 一种软件升级方法
US11301227B2 (en) Server apparatus, information processing apparatus, and control method for installing application
JP5800685B2 (ja) 情報処理装置及びサーバ、制御方法、プログラム及び記録媒体
JP2009265877A (ja) 電子機器
JP3986721B2 (ja) ソフトウェア・モジュール動的交換方法及びソフトウェア・モジュール動的交換プログラム記録媒体
KR20190088292A (ko) 복수의 플랫폼을 지원하는 화상 형성 장치에서 동일 또는 유사한 서비스를 제공하는 앱들의 제어
JP2013003625A (ja) 画像処理装置、画面更新方法及び画面更新プログラム
CN108874399A (zh) 安装插件的方法、装置及终端
WO2017036197A1 (zh) 一种网元模型管理方法及装置
JP2009286058A (ja) 画像形成装置、外部デバイス管理方法及びプログラム
CN114546436A (zh) 一种微前端服务更新方法、装置、电子设备及存储介质
JP6099365B2 (ja) 情報処理システム、情報処理装置、情報処理プログラム、アプリケーションの実行方法、および、記憶媒体
JP2022124969A (ja) 情報処理装置、方法およびプログラム
US20210326146A1 (en) Installation package for use with heterogeneous operating systems
JP5836814B2 (ja) 画像形成装置、制御方法及びプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant