WO2015131643A1 - 软件检测方法及装置 - Google Patents

软件检测方法及装置 Download PDF

Info

Publication number
WO2015131643A1
WO2015131643A1 PCT/CN2014/095465 CN2014095465W WO2015131643A1 WO 2015131643 A1 WO2015131643 A1 WO 2015131643A1 CN 2014095465 W CN2014095465 W CN 2014095465W WO 2015131643 A1 WO2015131643 A1 WO 2015131643A1
Authority
WO
WIPO (PCT)
Prior art keywords
software
information
category
detected
categories
Prior art date
Application number
PCT/CN2014/095465
Other languages
English (en)
French (fr)
Inventor
张露
张皓秋
陈曦
刘义平
Original Assignee
北京奇虎科技有限公司
奇智软件(北京)有限公司
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 北京奇虎科技有限公司, 奇智软件(北京)有限公司 filed Critical 北京奇虎科技有限公司
Priority to US15/124,300 priority Critical patent/US20170017561A1/en
Publication of WO2015131643A1 publication Critical patent/WO2015131643A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification

Definitions

  • the present invention relates to the field of computer detection, and in particular, to a software detection method and apparatus.
  • the prior art usually detects when the user finds that the software cannot be operated normally when the software is used, and then determines whether the software needs to be solved. Moreover, in the detection process, the user must scan all the supporting files or corresponding components in the software through specific inspection software one by one to complete the detection of the software, which requires high professional knowledge and leads to high Operating costs.
  • the solution of the present invention is provided, wherein a software detection method and apparatus, a computer program and a computer readable medium are provided to overcome the above drawbacks, at least partially solve the problem of more rapid detection of software, and thus not It will interfere with the operation of the operating system to improve the security of the software and other technical issues.
  • a software detection method comprising: matching software information of software to be detected with problem information in a preset one or more software problem categories; wherein the software problem category is Obtaining one or more questions that exist in the software, each software problem category contains problem information related to one or more questions under the category; if the software information of the software to be detected matches one or more The problem information in the software problem category determines that one or more problems under the corresponding one or more software problem categories exist in the software to be detected.
  • an apparatus for software detection comprising: a detecting module, configured to match software information of software to be detected with problem information in a preset one or more software problem categories a determining module, configured to determine that one or more software problems exist in the software to be detected if the software information of the software to be detected matches the problem information in one or more software problem categories One or more questions under the category; a pre-built module for classifying one or more problems in the software to obtain a software problem category, each software problem category containing one or more questions related to the category Problem information.
  • a computer program comprising computer readable code causing the software detection method to be executed when the electronic device runs the computer readable code.
  • a computer readable medium storing a computer program as described above is provided.
  • the software information of the user's software to be detected may be matched with the corresponding problem information representing one or more software problems in the preset respective software problem categories, when the software to be detected Matching the software information with the problem information, determining that the software to be detected has the software problem represented by the problem information and belongs to the corresponding software problem category, thereby using the software information of the software to be detected and the problem information to be matched,
  • the problem of software can be quickly and accurately obtained without having to scan all the supporting files or corresponding components of each software one by one, and the detection speed is fast without disturbing the normal operation of the operating system.
  • the detection software can be detected and processed in advance, and the software to be detected can be quickly detected before the software is run, the security of the user software can be ensured, and the user terminal can be lightened. System pressure. Further, the solution of the present invention is simple in operation and low in operation cost, and requires no user operation, and does not require the user to have high computer professional knowledge, which helps to enhance the user experience.
  • dividing one or more software problems into categories and recording corresponding problem information representing software problems under each category is not only convenient for quickly detecting software problems and determining corresponding categories, but also detecting detected Software that exists or does not have software problems is listed by category, and is visually displayed to users by category entries to further enhance the user experience.
  • FIG. 1 shows a detailed flow chart of an embodiment of a software detection method in accordance with the present invention
  • FIG. 2 shows a flow chart of a method for establishing a classification of software problems in accordance with one embodiment of the present invention
  • FIG. 3 is a block diagram showing an embodiment of a software detecting device in accordance with the present invention.
  • FIG. 4 is a schematic diagram showing a problem of displaying software in accordance with one embodiment of the present invention.
  • Figure 5 shows a flow chart of a method of detecting software in accordance with one embodiment of the present invention
  • Figure 6 is a block diagram showing the structure of an electronic device for performing the method of the present invention.
  • Figure 7 shows a schematic diagram of a memory unit for holding or carrying program code implementing a method in accordance with the present invention.
  • FIG. 5 is a flowchart of a software detection method according to an embodiment of the present invention.
  • the method includes: in step S501, matching software information of the software to be detected with problem information in a preset one or more software problem categories; and in step S502, if the software information of the software to be detected matches one or more software
  • the problem information in the problem category determines that the software to be detected has one or more problems under the corresponding one or more software problem categories.
  • the software problem category is obtained by classifying one or more problems existing in the software, and each software problem category includes problem information related to one or more questions under the category.
  • FIG. 1 is a flow chart of a more specific data processing method in accordance with an embodiment of the present invention.
  • step S101 software information of the software to be detected is acquired according to the software detection request of the user.
  • the software detection request may be sent by the user to the server (which may be placed locally or in the cloud) in at least the application software and/or the terminal device currently installed in the terminal device of the user.
  • a user request for security, etc. such as system software.
  • Terminal devices such as computers, mobile phones, etc.
  • the detection request may be sent by a user triggering an interface (such as a browser or other interface application, etc.) that can interact with the server on the terminal device of the user, such as a trigger interface application.
  • the software to be detected is various software (such as installation or storage) in the terminal device of the user, and at least includes application software and/or system software currently installed in the terminal device of the user.
  • Software information refers to various information that the software has to represent the fixed features of the software and various information about the operation (use).
  • the software information includes at least basic information and/or usage information of the software.
  • the basic information of the software is various information mainly representing the fixed features of the software, such as the version number of the software, the size of the occupied space, the suitable installation system, the information suitable for the plug-in, and the latest update time.
  • the information about the use of the software is various information that mainly represents the operation/use of the software, such as software installation information (such as: installation time, installation components, etc.), software operation information (such as: each startup state, running very The state is the abnormal state that occurred during the use or call, or other running state, etc.), the software registry call information (such as: call time, call error, etc.), or the cached state information related to the software (such as: garbage Cache status, etc.), and so on.
  • software installation information such as: installation time, installation components, etc.
  • software operation information such as: each startup state, running very The state is the abnormal state that occurred during the use or call, or other running state, etc.
  • the software registry call information such as: call time, call error, etc.
  • cached state information related to the software such as: garbage Cache status, etc.
  • the server receives a software detection request from the user, and responds to the request by first obtaining a software log of each software to be detected from the user's terminal device, and then extracting the software from the software log. Software information.
  • step S102 the software information of the software to be detected is matched with the problem information in the preset one or more software problem categories.
  • the server in response to the user's request, in order to perform detection of all or part of the software on the user's terminal device, the server adopts the software information of the software to be detected that is acquired and the pre-set software problem category.
  • the problem information in the matching manner is used to quickly detect whether the software information can correspond to the problem information under each software problem category, thereby determining whether there is a problem with the software to be detected providing the software information and what kind of problems exist.
  • the problem information is also software information. Specifically, it may be: a problem information, which is a combination of software information or several software information related to one or more problems existing in the software, and the problem information is recorded in the software problem. In the category.
  • the software problem category is obtained by classifying one or more problems existing in the software, and each software problem category includes problem information related to one or more questions under the category. Specifically, different problems exist in the software, and several problems have the same nature or characteristics and can be classified into the same category. Under each category, there are “problems” that fall into the software under that category, and problem information related to these "problems” is recorded under each category (see Table 1). Among them, the "problem” can refer to a defect in the software, or a security-related problem that the software needs to be processed (such as a version that is too low and unsafe).
  • the acquisition of the software problem category may be a classification pre-processing process or a pre-set process, which will be described in detail below with reference to FIG. 2 in an embodiment of the software problem category.
  • the server obtains the software and its software information periodically or irregularly, and obtains various software problems by matching the obtained software information with the software information of the software stored by the server, thereby classifying and recording the problem information. That is, pre-processing is performed to form software problem categories I to N (N is a natural number, which can be fixed or changed according to actual pre-processing conditions).
  • the server can be obtained from the user's terminal device for examination.
  • the software information of the test software is matched with the problem information in each software problem category one by one, when part or all of the software information of the software to be tested and all or part of the problem information in a certain software problem category or a certain software problem category
  • the matching process is the detection process of the software to be detected.
  • the software information of each software to be detected may be matched with the problem information in each software problem category sequentially or simultaneously. If some or all of the software information of one or several software to be detected can be matched with the problem information under a software problem category, it indicates that the one or several software to be detected has one or more corresponding to the software problem category.
  • the following is an example of the detection of the audio and video software Move.
  • the user U sends a detection request for detecting the audio/video software Move to the server through the software detection interface application, and after receiving the detection request of the user U, the server starts to detect the Move software in response to the request of the user U.
  • the server acquires the software information of the Move software "Move" on the terminal of the user U.
  • the software information of Move includes: version number 1.23.4.0, size 27.65M, suitable for installing system Win8.1/8/7/XP, plug-in EX.
  • Category I, Category II the server matches the software information of the Move software with the problem information in each of the software problem categories of the two preset software problem categories.
  • category I is "upgrade/update software", including: problem (I-1) version is too low, corresponding to the problem information is the low version number of the Move software and / or the time (cycle) used by the Move installation, and others The low version number of the software and/or the time (period) used by the software installation.
  • Category II is “Bundled/Carrying Software Security Threats”, including: Problem (II-1) Software Bundle, Corresponding Information Issues for Move EX Plugin and Other Software Plugins; Problem (II-1) Software Carrying, Corresponding Related
  • the problem information is for the download link application in one or more other software.
  • the software information of the Move obtained by the server from the user U can be matched with the version number "Move's 1.23.4.0" recorded in the software problem category I, and the "Move plug-in EX” recorded in the software problem category II.
  • step S102 If the matching of the software information and the problem information occurs according to the matching process of step S102, the process proceeds to step S103. If the matching process between the software information and the problem information does not occur according to the matching process of step S102, the software information of the software to be detected does not match the software problem category in any of the software problem categories. If any of the question information is available, the process proceeds to step S104.
  • step S103 based on the problem information matched by the software information, it is determined that the software to be detected has one or more problems under the corresponding one or more software problem categories.
  • the software may have multiple problems to be processed, and multiple problems may also belong to different categories.
  • the software information of the Move software on the terminal of the user U "version number: Move 1.23.4.0” matches the problem information "version number: Move 1.23.4.0", software information "Move plug-in EX” "Match the problem information "Move plug-in EX”, then Move has a problem (I-1) software update upgrade problem, that is, the software Move needs to be upgraded before it can be used normally, and there is a problem (II-1) software bundled
  • the problem is that if it is not processed in time, the user will be monitored by other unfamiliar devices due to the bundled software, which will lead to information security threats.
  • the two problems belong to software problem categories I and II.
  • the manner in which the software information of the software to be detected matches the problem information in each software problem category may be further called by a preset threshold or basic information to determine, etc., but the present invention is not limited thereto.
  • the software to be detected is a browser software
  • the software information of the browser includes basic information “the latest version is V123.6”, “occupied space size 37.23M”, “update time 2014.01.01”, “suitable for installation System Microsoft Series Operating System”, the browser's software information also includes the usage information "registry loop call”.
  • the software information of the browser software is now matched one by one with the problem information in the preset 13 types of software problem categories.
  • the default 13 types of software problem categories are: a) software is bundled, b) software is not used for a long time, c) too much software is installed, d) software does not clear temporary files after running, e) software is too much Resources, f) software runs automatically at boot time, g) lacks prerequisite software, h) lacks software runtime environment, i) default software is not set, j) default browser and home page are not locked, k) software score is too low, l The software pops up when the software runs, m) the software has not been updated for a long time.
  • the software information of the browser software matches the problem information of the browser occupying space size 37.23M stored in the e) software problem category, and the browser is determined to be excessively occupied by the software.
  • Software issues in resource category e) are recorded in the area to be displayed.
  • step S105 After the problem obtained by the detection and the corresponding software problem category are determined, the process proceeds to step S105.
  • step S104 according to the situation that the software information of the software to be detected does not match the problem information, it is determined that the software to be detected has no problem, and the software without the problem is summarized to form a software-free problem category. If all the software information of the software to be tested does not match any of the problem information recorded in any of the software problem categories, it is determined that there is no problem with the software to be detected. Moreover, after the detection, the software to be detected that has no problem detection is summarized and classified into a unified category, that is, no software problem category, so that after the detection is finished, the user is displayed in a centralized manner so that the user can quickly and clearly I understand that these software are problem-free software.
  • the software to be tested is an office software A, a chat software B, and a browser software C.
  • the detection results are: software information of software A and software information of software C, each of which is a problem in each software problem category. If the information is matched and none is matched, it can be determined that the two softwares have no software problems; and the software information of the software B is matched with the problem information in each software problem category one by one, and matches the software problem category of the "software upgrade". In the problem information, you can determine that there is a "software upgrade" problem in software B.
  • Software A and software C are classified as "no software problem category", and software B is classified as a software problem category corresponding to the software upgrade corresponding to the problem information.
  • step S105 After the problem obtained by the detection and the corresponding software problem category are determined, the process proceeds to step S105.
  • the detection result output is presented to the user.
  • software belonging to the same software problem category may be aggregated into one display item in software that has been determined to be problematic.
  • a software problem category corresponds to a display item, and each display item displays a corresponding software problem category and one or more software belonging to the software problem category.
  • the software determined to be non-existent may be summarized in the no-software problem category under the display item without the software problem category (ie, under a separate display item).
  • the software to be detected is detected by the matching method, and according to the matching result, it is determined whether there is a problem, which software problem exists, which software problem category belongs, and finally the detection result is obtained, and the detection result is recorded in the display area for display, to prompt the user to Which type of software problem the displayed software belongs to.
  • the test results can be displayed in an item manner, and under each item, the problematic software is displayed. Further, under each entry, a software setting processing function for displaying a problem may be correspondingly displayed, such as setting a button for "handling the software problem" to prompt the user to handle the problem of the software.
  • each software that has been found to have problems under the category is displayed, and next to each software, a repair corresponding to the problematic software is set.
  • Multiple softwares have problems in the same software problem category, which can be displayed under one display item, and a software that detects multiple problems in the software problem category can be based on multiple software problems to which the problem belongs. Categories form multiple display items. All software that has been tested for no problems is grouped into one category and placed in a display item with no software problem category for output to the user.
  • FIG. 2 An example of the process of establishing a software problem category in the detection method of the present invention is described below with reference to FIG. 2, which is merely an example and is not intended as a limitation on other implementations of the present invention.
  • FIG. 2 there is shown a flow diagram of a method of presetting a software problem category in accordance with an embodiment of the present invention.
  • step S201 various pieces of information of the software are acquired in advance.
  • the server may obtain one or more pieces of software information of a piece of software, such as software information A1, A2, A3, A4 of software A.
  • the method for obtaining the information of the software may be that the server extracts various software information of each software in advance through a software log provided by the user or the developer, or the server collects the software log by establishing a software log periodically with the client. (That is, the log records that each software will carry in its installation folder, it will always be stored in the installation folder of the software, which will record all the information from the development to the installation, and subsequent applications. For example, version number, footprint size, suitable for installing the system, plugin information, etc.).
  • the server collects software logs of various softwares, and the software registration information and operating status of the software logs may affect the software running/usage information as the software information of the core extraction software.
  • the obtained multiple information may be a preset time period to obtain a certain time period information, for example, the version number information, and the version number information of multiple time periods is required to accurately detect the software problem.
  • the present invention is not limited to the above method for the manner of obtaining information in the software problem category.
  • All information from the installation to the use of each software is recorded in the software log, and the software log is always stored in the installation file of the software installed by the user. Specifically, whenever a user installs or uses a certain software, the installation time of the software, the information of the installed components or the plug-in information, the running status, the running time, and the like are recorded in the corresponding software logs. Since the software log records each time the user uses the software, a part of the duplicate information is stored. Therefore, it is necessary to pass the software registration information, running status, etc. in the software log, and the relevant information that can affect the software operation is extracted as a core. Software information. For example, for software information such as the software version number, it is only necessary to extract the latest version number to determine whether the software needs to be upgraded.
  • the software log of the related software is obtained, or the corresponding software log is parsed through the software installation folder.
  • the software information of each of the plurality of software can be obtained from the software log.
  • step S202 various pieces of software information of the software acquired in advance are matched with various pieces of software information corresponding to the software stored in the server.
  • the server may obtain the one or more pieces of software information of the software, and one or more pieces of software information corresponding to the one or more pieces of software information of the software stored in the server,
  • the server stores information about all the software, and updates the software information of the corresponding software according to the software log provided by the developer. Therefore, the software information of the collected various softwares can be matched with the software information of the same software stored in the server, so as to predict various problems that the software may have.
  • the software information of a software S acquired in advance is: version number V2.0
  • the components are Z1, Z2, ZB1
  • the software information of the software S stored in the server is: version number V2.2
  • components are Z1, Z2Z, ZBD.
  • one or more problems of the software are determined based on the software information on the unmatched software that the pre-acquired software has.
  • the pre-acquired software if the one or more pieces of software information of the pre-acquired software fails to match the corresponding one or more pieces of software information of the same software stored on the server, the pre-acquired The software has one or more pieces of software information to determine that the software has one or more problems.
  • the one or more pieces of software information that the pre-fetched software has can be used as problem information related to one or more problems that exist.
  • software information A1 is different from A1'
  • software information A2 is different from A2'
  • software information A4 is different from A4'
  • software information can be based on A1 determines that there is a problem a1 in the software A, according to the software letter
  • the information A2 determines that the software A has a problem a2, and according to the software information A2, A4, the software A has a problem a24, that is, the software A has three problems a1, a2, a24, and the software information A1 is used as the corresponding problem a1.
  • the problem information A1 the software information A2 is the problem information A2 corresponding to the problem a2
  • the software information A2, A4 is the problem information A2, A4 corresponding to the problem a24 (ie, the two software information A2, A4 are combined to determine the problem a24, two
  • the software information is the problem information and the presence of the software indicates that the software will still have problems a24).
  • the pre-acquired software S does not match the version number of the software S stored by the server, and the version number V2.2 of the software S on the server is higher than the pre-obtained version number V2.0 of the software S, which can be determined. If the software S is on the user's terminal, there may be a problem that needs to be updated (ie, the lower version is to be upgraded or updated).
  • step S204 different problems existing in the software are classified to obtain a software problem category, and problem information related to one or more questions under the category is recorded in the software problem category.
  • one or more questions identified by the software information are classified according to commonality, common traits (same nature or characteristics), etc., to obtain a software problem category, and to record the category in each software problem category. Information about one or more issues related to the problem.
  • the characteristics of the problem and the corresponding software information are classified into one category.
  • the questions a1, a2, a24 are classified: question a1 is assigned to one category, namely software problem category I, question a2 is assigned to one category, software problem category II, and question a24 is assigned to one category, software problem category IV;
  • Several software information A1, A2, and A4 of S that cannot match the software S stored on the server are extracted and summarized.
  • the software information A1 corresponding to the problem a1 is recorded in the category I, that is, the problem information A1, and the problem is recorded in the category II.
  • A2 corresponding problem information A2 record the problem information A2 and A4 corresponding to question a24 in category IV, (A2 & A4) as shown in Table 1:
  • a2, b1, b2, c1, c2, c3, d12, etc. are classified into the corresponding categories after the other software matches, and the corresponding software information is recorded, that is, the problem information A2, B1, B2, C1, C2 , C3, D1 & D2 (D1 and D2).
  • a software problem classification table (shown in Table 1) is formed, from which the table can predict which problems may exist in the software.
  • the software information such as the version number C1 and the plug-in EX of the software S1 of a certain user does not match the version number C1' and the plug-in EX' of the software S1 corresponding to the server end, and it is determined that the software has security or self-defect such as upgrade, bundling, etc.
  • the problem is that the two problems c1 and ex of the software S1 are divided into two categories (upgrade class, advertisement plug-in class) and the problem information C1 and EX are recorded, and it can be predicted that the software S1 of other users may have these two types of problems.
  • the user can be prompted in real time to solve the software problem before the software has a problem, thereby avoiding unnecessary losses.
  • the embodiment of the present application also provides a corresponding software detection device.
  • FIG. 3 shows a schematic structural block diagram of a software detecting apparatus 300 according to an embodiment of the present application.
  • the device 300 includes a detection module 301, a determination module 302, a preset module 303, and an output module 304.
  • the detecting module 301 is configured to match the software information of the software to be detected with the problem information in the preset one or more software problem categories. Further, if the software information of the software to be detected does not match any of the problem information in any of the software problem categories, it is determined that there is no problem in the software to be detected; and the software to be detected that does not have a problem is summarized to form No software problem category. For details, refer to steps S501 and S101-S102.
  • a determining module 302 configured to: if the software information of the software to be detected matches one or more software The problem information in the question category determines that the software to be detected has one or more problems under the corresponding one or more software problem categories. For details, refer to steps S502 and S103-S104.
  • the preset module 303 is configured to classify one or more problems existing in the software to obtain the software problem category, and each software problem category includes problem information related to one or more questions under the category. For specific implementations, refer to steps S201-S204.
  • the preset module 303 further includes: a matching submodule 303-1, configured to match one or more pieces of software information of the pre-acquired software with corresponding software information of the software stored in the server; determining the submodule 303-2, configured to determine, according to the one or more pieces of software information, one or more of the software presence, if the one or more pieces of software information are not matched with the stored software information of the software. a problem, and the one or more pieces of software information as problem information related to the one or more questions; a classification sub-module 303-3 for classifying the one or more questions to obtain a software problem A category and record problem information related to one or more questions under the category in the software problem category.
  • the output module 304 is configured to summarize software belonging to the same software problem category in the software that has been determined to be in question to be under one display item; wherein, one software problem category corresponds to one display item, and each display item is displayed correspondingly A category of software problems and one or more software belonging to the category of the software problem. Further, it is also used to determine that there is no problem based on the detection result, and to summarize the non-software problem category into the display item without the software problem category. For the specific implementation, refer to step S105.
  • modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
  • the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
  • any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined.
  • Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
  • the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof.
  • a microprocessor or digital signal processor may be used in practice to implement some or all of the functionality of some or all of the components of the software detection device in accordance with embodiments of the present invention.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • Figure 6 illustrates an electronic device in which the software detection method of the present invention can be implemented.
  • the electronic device conventionally includes a processor 610 and a computer program product or computer readable medium in the form of a memory 620.
  • the memory 620 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM.
  • the memory 620 has a storage space for storing program code 631 that performs any of the method steps described above, for example, a storage space 630 for program code, which may be stored with various steps for implementing the above methods, respectively. Each program code 631.
  • the program code can be read from or written to one or more computer program products.
  • Such computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
  • Such a computer program product is typically a portable or fixed storage unit such as that shown in FIG.
  • the memory unit can have the electronics of FIG.
  • the memory 620 in the device is similarly arranged in a storage section or a storage space or the like.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit comprises a program 631' for performing the steps of the method according to the invention, ie code that can be read by a processor, such as 610, which when executed by the electronic device causes the electronic device to perform the above Each step in the described method.
  • the application can be applied to a computer system/server that can operate with numerous other general purpose or special purpose computing system environments or configurations.
  • Examples of well-known computing systems, environments, and/or configurations suitable for use with computer systems/servers include, but are not limited to, personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, based on Microprocessor systems, set-top boxes, programmable consumer electronics, networked personal computers, small computer systems, mainframe computer systems, and distributed cloud computing technology environments including any of the above, and the like.
  • the computer system/server can be described in the general context of computer system executable instructions (such as program modules) being executed by a computer system.
  • program modules may include routines, programs, target programs, components, logic, data structures, and the like that perform particular tasks or implement particular Abstract data type.
  • the computer system/server can be implemented in a distributed cloud computing environment where tasks are performed by remote processing devices that are linked through a communication network.
  • program modules may be located on a local or remote computing system storage medium including storage devices.

Abstract

提供了一种软件检测方法及装置,包括:将待检测软件的软件信息与预设的一种或多种软件问题类别中的信息进行匹配,以执行检测(S501);其中,软件问题类别是对软件存在的一个或多个问题进行分类而获得,每种软件问题类别中包含与该类别下的一个或多个问题相关的问题信息;如果待检测软件的软件信息匹配上一种或多种软件问题类别中的问题信息,则确定待检测软件存在相应的一种或多种软件问题类别下的一个或多个问题(S502),从而能快速准确地得出软件存在的问题,而无需对每个软件所有支持文件或相应组件都具体做逐一扫描,进而能在软件运行前就能迅速地发现问题,保障用户软件的安全,并减轻用户终端的系统压力,以及提升用户体验。

Description

软件检测方法及装置 技术领域
本发明涉及计算机检测领域,尤其涉及一种软件检测方法及装置。
背景技术
随着计算机技术的飞速发展以及各种终端的普及,运行于终端中的各种软件也越来越丰富,但与此同时软件使用的有效性及安全性也逐渐受到了威胁,这就急需要提出一种能够快速检测出软件使用有效性及安全性的处理方法。
例如,用户在软件操作时,常常会遇到电脑内存空间不足、软件启动时间过长、影音无法播放等问题。这些问题往往是用户无法处理的,并且通常都是问题出现后用户才去处理,这样就会导致处理不及时而造成严重经济损失或者,因为处理不当导致电脑出现异常故障等问题。
针对上述所出现的软件问题,现有技术通常是当用户在使用软件时发现无法正常操作会针对该软件进行检测,进而判断该软件是否存在需要解决的问题。并且,在检测过程中,用户必须对该软件中的所有支持文件或相应组件通过具体的检查软件进行逐一扫描,才完成对软件的检测,这需要有较高的专业知识、并导致较高的操作成本。
发明内容
鉴于上述缺陷,提出了本发明的方案,其中,提供一种软件检测方法及装置、计算机程序以及计算机可读介质,以克服上述缺陷,至少部分地解决更有效地进行软件的快速检测、进而不会干扰操作系统的运行,以提高软件的安全性等技术问题。
依据本发明的一个方面,提供了一种软件检测方法,其包括:将待检测软件的软件信息与预设的一种或多种软件问题类别中的问题信息进行匹配;其中,软件问题类别是对软件存在的一个或多个问题进行分类而获得,每种软件问题类别中包含与该类别下的一个或多个问题相关的问题信息;如果待检测软件的软件信息匹配上一种或多种软件问题类别中的问题信息,则确定待检测软件存在相应的一种或多种软件问题类别下的一个或多个问题。
根据本发明的另一方面,提供了一种软件检测的装置,其包括:检测模块,用于将待检测软件的软件信息与预设的一种或多种软件问题类别中的问题信息进行匹配;确定模块,用于如果待检测软件的软件信息匹配上一种或多种软件问题类别中的问题信息,则确定待检测软件存在相应的一种或多种软件问题 类别下的一个或多个问题;预置模块,用于对软件存在的一个或多个问题进行分类而获得软件问题类别,每种软件问题类别中包含与该类别下的一个或多个问题相关的问题信息。
根据本发明的另一个方面,提供了一种计算机程序,其包括计算机可读代码,当电子设备运行所述计算机可读代码时,导致所述的软件检测方法被执行。
根据本发明的再一个方面,提供了一种计算机可读介质,其中存储了如上所述的计算机程序。
根据本发明的软件检测的方案,可以实现将用户的待检测软件的软件信息,与预设的各个软件问题类别中的代表一个或多个软件问题的相应的问题信息进行匹配,当待检测软件的软件信息与问题信息匹配上,则确定该待检测软件存在该问题信息所代表的软件问题并属于相应的软件问题类别,从而,利用待检测软件的软件信息与问题信息做匹配的检测方式,能快速准确地得出软件存在的问题,而无需对每个软件所有支持文件或相应组件都具体做逐一扫描,并且,检测速度快而不会干扰操作系统正常运行。进一步,采用软件信息匹配的检测方式,能提前对待检测软件做检测处理,无需待检测软件运行,即能在软件运行前就能即能迅速地发现问题,保障用户软件的安全,并减轻用户终端的系统压力。进一步,本发明的方案,操作简单、操作成本低其无需用户操作,不必要求用户具有较高的计算机专业知识,有助于提升用户的体验。
再者,将一个或多个软件问题划分出类别、在每个类别下记录相应的代表软件问题的问题信息,不仅仅便于快速检测软件存在的问题并确定相应的类别,还能够将检测出的存在甚至不存在软件问题的软件按类别列出,直观地按类别条目展示给用户,进一步提升用户的体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明的软件检测方法的一实施例的具体流程图;
图2示出了根据本发明一个实施例中的建立软件问题分类的方法流程图;
图3示出了根据本发明的软件检测装置的一实施例的结构图;
图4示出了根据本发明一个实施例的展示软件问题的示意图;以及,
图5示出了根据本发明一个实施例的检测软件方法的流程图;
图6示出了用于执行本发明的方法的电子设备的结构示意图;以及
图7示出了用于保持或者携带实现根据本发明的方法的程序代码的存储单元示意图。
具体实施方式
下面将参照附图更详细地描述本发明公开的示例性实施例。虽然附图中显示了本发明公开的示例性实施例,然而应当理解,可以以各种形式实现本发明公开的内容而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明的公开,并且能够将本发明公开的范围完整的传达给本领域的技术人员。
如图5所示,为本发明的一实施例的软件检测方法的流程图。其包括,步骤S501,将待检测软件的软件信息与预设的一种或多种软件问题类别中的问题信息进行匹配;步骤S502,如果待检测软件的软件信息匹配上一种或多种软件问题类别中的问题信息,则确定所述待检测软件存在相应的一种或多种软件问题类别下的一个或多个问题。其中,所述软件问题类别是对软件存在的一个或多个问题进行分类而获得,每种软件问题类别中包含与该类别下的一个或多个问题相关的问题信息。
下面对本发明实施例提供的软件检测方法进行更详细地介绍。图1是根据本发明一实施例的更具体的数据处理方法的流程图。
在步骤S101中,根据用户的软件检测请求,获取待检测软件的软件信息。
根据本发明的一实施例,软件检测请求可以是用户向服务器(该服务器可以放置在本地或者云端)发出的、对该用户的终端设备中至少当前已经安装的应用软件和/或终端设备中的系统软件等进行安全性等检测的用户请求。终端设备如电脑、手机等。具体地,该检测请求,可以通过用户的终端设备上能与服务器进行交互的接口(如浏览器或其他接口应用程序等)在启动时或运行时,由用户触发命令而发出(如触发接口应用程序的“检测”按钮等)。
其中,待检测软件是用户的终端设备中具有(如安装或存储)的各种软件,其至少包括用户的终端设备中当前已经安装的应用软件和/或系统软件。
软件信息,指软件具备的代表该软件的固定特征的各种信息以及运行(使用)情况的各种信息。软件信息至少包括软件的基础信息和/或使用信息。具体地,软件的基础信息,是主要代表该软件的固定特征的各种信息,如软件的版本号、占用空间大小、适合安装系统、适合插件信息、最近一次更新时间等。 软件的使用信息,是主要代表该软件的运行/使用情况的各种信息,如软件的安装信息(如:安装时间、安装组件等),软件的运行信息(如:每次启动状态、运行非常状态即使用或调用时出现过的非正常状态、或其他运行状态等),软件注册表调用信息(如:调用时间、调用出错等),或者是与软件相关的缓存的状态信息(如:垃圾缓存状态等),等等。
在一个实施例中,服务器接收到来自用户的软件检测请求,对该请求做出响应,首先从用户的终端设备中获取每个待检测软件的软件日志,然后从该软件日志中提取出该软件的软件信息。
在步骤S102中,将待检测软件的软件信息与预设的一种或多种软件问题类别中的问题信息进行匹配。
由此,可以判断待检测软件的软件信息是否与一个或多个问题信息对应,进而才能确定是否存在对应的问题信息所指示的软件问题。
根据本发明的一个实施例,服务器响应用户的请求,为了执行对用户的终端设备上的全部或部分的软件的检测,服务器采用将获取的这些待检测软件的软件信息与预先设置的软件问题类别中的问题信息做匹配的方式,快速检测这些软件信息是否能对应各个软件问题类别下的问题信息,从而确定提供该软件信息的待检测软件是否存在问题以及存在哪类问题。
其中,问题信息也是软件信息,具体地,可以是:一个问题信息,就是与软件存在的一个或多个问题相关的一个软件信息或几个软件信息的组合,并且,该问题信息记录在软件问题类别中。
其中,软件问题类别是对软件存在的一个或多个问题进行分类而获得,每种软件问题类别中包含与该类别下的一个或多个问题相关的问题信息。具体地,软件存在的不同的问题,有的几个问题具有相同的性质或特点,可以划分到同一个类别下。每种类别下,包含划分到该类别下的软件的“问题”,并且每种类别下记录了与这些“问题”相关的问题信息(参见表1所示)。其中,“问题”可以是指软件的缺陷、或软件需要待处理的与安全性有关的问题(如版本过低不安全)等。
软件问题类别的获得,具体地,可以是一分类预处理过程或者预先设置过程,这将在下面结合图2具体描述软件问题类别预先设置的一实施例。
由此,服务器定期或不定期获取软件及其软件信息,并通过对将获取的软件信息与服务器存储的该软件的软件信息进行匹配而得到各种软件问题,并以此进行分类和记录问题信息,即执行预处理,以形成软件问题类别I~N(N为自然数,可以固定分类也可以根据实际预处理情况改变)。
在本发明的一个实施例中,可以将服务器从用户的终端设备上获取的待检 测软件的软件信息,逐一与每一软件问题类别中的问题信息进行匹配,当待检测软件的部分或全部软件信息与某一个软件问题类别或某几个软件问题类别中的问题信息全部或部分相匹配时,就能确定该待检测软件存在相应软件问题类别下对应的软件的“问题”。其中,匹配过程即对待检测软件的检测过程。
进一步,对于用户的终端设备上每个待检测软件检测,可以依次或同时将每个待检测软件的软件信息在每个软件问题类别下与其中的问题信息进行匹配。如果一个或几个待检测软件各自具有的部分或全部软件信息与一个软件问题类别下的问题信息能够匹配上,就说明该一个或几个待检测软件存在该软件问题类别下对应的一个或多个软件问题。
由此,避免了用户需要逐一检测软件,才会了解到软件所存在的问题。而同时对多个待检测软件的软件信息做匹配,能更进一步提高检测效率。
另外,如果一待检测软件的全部软件信息与所有软件问题类别中的所有问题信息进行匹配后,不存在与软件信息相匹配的问题信息,可以确定该待检测软件不存在问题。进而,针对不存在问题的软件也会形成单独的无软件问题类别,以便可以让用户了解到当前终端设备上的软件无问题、状态正常、安全、无需更新或补救等。
下面以影音软件Move的检测为例来说明。用户U通过软件检测接口应用程序向服务器发出检测影音软件Move的检测请求,服务器接收到用户U的检测请求之后,响应用户U的请求,开始检测Move软件。服务器获取用户U的终端上的Move软件“Move”的软件信息。Move的软件信息包括:版本号1.23.4.0、大小27.65M、适合安装系统Win8.1/8/7/XP、插件EX。接下来,假设有两个软件问题类别(类别I、类别II),服务器将Move软件的软件信息与预设的两个软件问题类别的每个软件问题类别中的问题信息做匹配。其中,类别I是“升级/更新软件”,包括:问题(I-1)版本过低,对应相关的问题信息为Move软件的低版本号和/或Move安装使用的时间(周期)、以及其他软件的低版本号和/或软件安装使用的时间(周期)。类别II是“捆绑/携带软件安全威胁”,包括:问题(II-1)软件捆绑,对应相关的问题信息为Move的EX插件以及其他软件的插件;问题(II-1)软件携带,对应相关的问题信息为一个或多个其他软件中的下载链接应用程序。服务器从用户U获取的Move的软件信息中依次能与软件问题类别I、中记录的版本号“Move的1.23.4.0”、软件问题类别II中记录的“Move的插件EX”匹配上。
如果根据步骤S102的匹配过程,出现软件信息与问题信息匹配上的情况,则进入步骤S103。如果根据步骤S102的匹配过程,未出现软件信息与问题信息匹配上的情况,即待检测软件的软件信息未匹配上任一所述软件问题类别中的 任一问题信息,则进入步骤S104。
在步骤S103处,根据软件信息所匹配上的问题信息,确定待检测软件存在相应的一种或多种软件问题类别下的一个或多个问题。
如表1所示,当一待检测软件的软件信息为A1,匹配上软件问题类别I下的问题信息A1时,即(A1=A1),则能够确定该待检测软件存在A1代表或指示的软件问题类别I下的问题a1。
并且,如果一软件有多种软件信息与多种问题信息匹配上,则该软件可能存在多个问题以待进行处理,并且,多个问题还可能属于不同的类别。
如上述检测Move软件的例子,用户U的终端上的Move软件的软件信息“版本号:Move的1.23.4.0”匹配上问题信息“版本号:Move的1.23.4.0”、软件信息“Move插件EX”匹配上问题信息“Move插件EX”,则Move存在问题(I-1)软件更新升级的问题,即该软件Move需要进行升级处理才可以正常使用、以及存在问题(II-1)软件捆绑的问题,即如不及时处理,用户会因捆绑软件而受到其他陌生设备的监控,进而导致信息安全受到威胁。并且,两个问题分属于软件问题类别I、II。
其中,对于待检测软件的软件信息与每个软件问题类别中的问题信息进行匹配的方式,可以用预设阈值或基础信息进一步调用来判断等,但本发明并不限于此。
例如:待检测软件为某一浏览器软件,该浏览器的软件信息包括有基础信息“最新版本为V123.6”、“占用空间大小37.23M”、“更新时间2014.01.01”、“适合安装系统微软系列操作系统”,该浏览器的软件信息还包括有使用信息“注册表循环调用”。
现将该浏览器软件的上述软件信息逐一与预设的13类软件问题类别中的问题信息进行匹配。其中,预设的13类软件问题类别有:a)软件被捆绑安装,b)软件长期不使用,c)同类软件安装过多,d)软件运行后不清除临时文件,e)软件占用过多资源,f)软件在开机时自动运行,g)缺少必备软件,h)缺少软件运行环境,i)未设置默认软件,j)未锁定默认浏览器和主页,k)软件评分过低,l)软件运行时弹出广告,m)软件长期未更新。
在逐一匹配过程中,该浏览器软件的软件信息与e)软件问题类别中所存储的该浏览器占用空间大小37.23M的问题信息相匹配,此时会将该浏览器认定为软件占用过多资源类别e)中的软件问题,并记录在待展示区。
继续匹配h)-m)的软件问题类别中的问题信息。当该浏览器软件的软件信息在与j)未锁定默认浏览器和主页的软件问题类别中的问题信息进行匹配 时,由该浏览器软件的最新版本为V123.6”、“更新时间2014.01.01”等基础信息去进一步调用或获取该浏览器软件的使用信息如注册表调用信息,以便与j)类软件问题类别中的记录的存在错误的该浏览器软件的注册表调用信息(即问题信息)做匹配,如果匹配上,则确定当前检测的该浏览器软件存在未锁定状态问题,同时将j)类软件问题记录待展示区。
确定了检测获得的问题以及相应的软件问题类别后,进入步骤S105。
在步骤S104处,根据待检测软件的软件信息无相匹配的问题信息的情形,确定该待检测软件不存在问题,并将不存在问题的软件进行汇总,以形成无软件问题类别。如果待检测软件的所有软件信息都未匹配上任一软件问题类别中记录的问任一问题信息,确定待检测的软件不存在问题。并且,将这些经过检测后,不存在问题的检测完成的待检测软件进行汇总,归为一个统一的类别,即无软件问题类别,以便在检测结束后,集中展示给用户,使用户可以快速清楚地了解到这些软件为无问题软件。
例如,待检测软件为某办公软件A、聊天软件B,浏览器软件C进行检测,其检测结果为:软件A的软件信息和软件C的软件信息,各自逐一与每一软件问题类别中的问题信息进行匹配,都未匹配上,可以确定该两款软件无软件问题;而软件B的软件信息通过逐一与每一软件问题类别中的问题信息进行匹配,匹配上“软件升级”的软件问题类别中的问题信息,可以确定软件B存在“软件升级”问题。将软件A和软件C归为“无软件问题类别”,而软件B就归为匹配上的问题信息相应的软件升级的软件问题类别下。
确定了检测获得的问题以及相应的软件问题类别后,进入步骤S105。
在步骤S105处,将检测结果输出展示给用户。
在一个实施例中,可以将已经确定为存在问题的软件中,属于相同软件问题类别下的软件,汇总到一个展示条目下。一个软件问题类别对应到一个展示条目,每个展示条目中展示对应的一种软件问题类别及属于该软件问题类别的一个或多个软件。另外,还可以根据检测结果,将确定为不存在问题的软件,以无软件问题类别汇总到无软件问题类别的展示条目下(即一个单独的展示条目下)。
待检测软件经过匹配方式的检测、以及根据匹配结果确定是否存在问题、存在哪种软件问题、属于哪个软件问题类别,最终获得检测结果,并将检测结果记录到展示区进行展示,以提示用户所展示出的软件属于哪一类软件问题。其中,可以采用条目方式展示检测结果,在每一个条目下,展示存在问题的软件。进一步,在每一个条目下,还可以对应展示存在问题的软件设置处理功能,如设置“处理该软件问题”的按钮,以提示用户可以处理该软件所存在的问题。
如图5所示,每个软件问题类别的展示条目下,展示了经检测发现存在该类别下的问题的各个软件,并在每个软件旁边,设置了与该有问题的软件相对应的修复方式:“卸载”、“详情”等按钮,以提示用户针对该出现问题的软件可以进行“卸载”方式的处理或查看详情方式的处理,等等。
多种软件存在同一个软件问题类别下的问题,可以展示在一个展示条目下,而一款软件经检测其存在多个软件问题类别下的问题,则可以依据其存在问题所属的多个软件问题类别形成多个展示条目。所有经过检测不存在问题的软件则归为一类,放入一个无软件问题类别的展示条目下予以输出展示给用户。
展示检测结果时,除了极端情况即所有被检测软件都存在问题外,总会展示一个无软件问题类别的展示条目(极端情况下可以展示该展示条目为“空”)。
下面结合图2描述关于本发明的检测方法中软件问题类别的建立过程的一个例子,仅仅为一示例,不作为对本发明的其他实现方式的限制。
参照图2,其中示出了根据本发明一实施例的预设软件问题类别的方法的流程图。
在步骤S201处,预先获取软件的多种信息。
在一个实施例中,可以是服务器获取一软件的一种或多种软件信息,如软件A的软件信息A1、A2、A3、A4。其中,获取软件的信息的方式,可以是服务器预先通过用户或开发者所提供软件日志中提取各个软件的各种软件信息,或者,服务器通过与客户端建立定时提交软件日志等方式来收集软件日志(即,每一款软件在其安装文件夹内都会携带的日志记录,它会始终保存于软件的安装文件夹内,该日志记录会记录软件从开发到安装,以及后续被应用的所有信息,比如,版本号、占用空间大小、适合安装系统、插件信息等)。进而服务器通过收集的多种软件的软件日志,以软件日志中软件的注册信息、运行状态等,可影响软件运行/使用的相关信息为核心提取软件的软件信息。
其中,所获取的多种信息,可以是预设时间段来获取某一时间段信息,例如,版本号信息,需要多个时间段的版本号信息才可以准确地检测软件存在问题。对于软件问题类别中的信息的获取方式,本发明并不局限于上述方法。
每一种软件从安装到使用过程中的所有信息都会记录在软件日志中,并且该软件日志会一直存储在用户所安装软件的安装文件内。具体地,每当用户对某一软件进行安装或使用时,其软件的安装时间、安装组件的信息或插件信息、运行状态、运行时间等都会记录在相应的软件日志中。由于软件日志会记录每一次用户使用该软件的情况,因此会存储一部分重复信息,所以需要通过软件日志中软件的注册信息、运行状态等,可影响软件运行的相关信息为核心提取 软件信息。例如,针对软件版本号这个软件信息,只需要提取最近一次版本号来判断该软件是否需要升级。
由此,可以通过收集用户向服务器提出的对某一个或多个已安装或应用的软件进行在线检测时,获取相关软件的软件日志,或者,通过软件安装文件夹中解析出相应的软件日志。从而,可以从软件日志中获取多种软件各自的软件信息。
在步骤S202处,将预先获取的软件的各种软件信息与服务器中所存储的该软件的对应的各种软件信息进行匹配。
在一个实施例中,服务器可以将获取的该软件的该一种或多种软件信息,与服务器中存储的该软件的该一种或多种软件信息相应的一种或多种软件信息,一一对应地进行匹配,如将软件A的软件信息A1、A2、A3、A4与服务器中存储的该软件A的软件信息A1’、A2’、A3’、A4’一一对应进行匹配,即A1与A1’做匹配、A2与A2’做匹配、A3与A3’做匹配、A4与A4’做匹配。若匹配上即A1=A1’,若未匹配上即A1≠A1’。
其中,服务器会存储所有软件的相关信息,并且会根据开发者所提供的软件日志进行相应软件的软件信息更新。因此,可以将收集到的各种软件的软件信息与服务器中存储的同一软件的软件信息进行匹配,以便从中预测出软件可能存在的各种问题。
例如,预先获取的一软件S的软件信息为:版本号V2.0,组件为Z1、Z2、ZB1,服务器中存储的软件S的软件信息为:版本号V2.2,组件为Z1、Z2Z、ZBD。通过将预先获取的该软件的前述几个软件信息与服务器预先存储的该软件的前述几个软件信息进行匹配,可以得出软件版本号和组件都不匹配,因此具有“版本号V2.0”、“组件为Z1、Z2、ZB1”这两种软件信息的该软件,可能存在需要更新或有恶意插件等问题。针对不匹配情况的处理,可以进入步骤S203。
在步骤S203处,根据预先获取的软件具有的不能匹配上的软件信息,确定该软件存在的一个或多个问题。
在一个实施例中,如果预先获取的软件的一种或多种软件信息与服务器上存储的同样的软件所具有的相应的一种或多种软件信息未能匹配上,可以根据该预先获取的软件具有的该一种或多种软件信息来确定该软件存在一个或多个问题。
该预先获取的软件具有的该一种或多种软件信息,可以作为与存在的一个或多个问题相关的问题信息。如:软件信息A1与A1’不同,软件信息A2与A2’不同,软件信息A4与A4’不同,软件信息A3=A3’,即软件信息A1、A2、A4未匹配上,可以根据该软件信息A1确定该软件A存在一个问题a1,根据该软件信 息A2确定该软件A存在一个问题a2,根据该软件信息A2、A4确定该软件A存在一个问题a24,即软件A存在a1、a2、a24三个问题,并且,将软件信息A1作为对应问题a1的问题信息A1、将软件信息A2作为对应问题a2的问题信息A2,将软件信息A2、A4作为对应问题a24的问题信息A2、A4(即两个软件信息A2、A4组合确定问题a24,两个软件信息都是问题信息且同时存在表示软件还会出现问题a24)。
如果都匹配上则表示该软件不存在问题。
由此,当预先收集到各种软件的软件信息与服务器上存储的同样的软件的对应的软件信息出现不匹配的情况时,可以将预先收集到的各种软件的不匹配的各种软件信息提取出来,进行软件问题类别预测。
承前述例子,预先获取的软件S与服务器存储的该软件S的版本号不匹配,服务器上软件S的版本号V2.2要高于预先获取的该软件S的版本号V2.0,可以确定若用户的终端上若有该软件S,可能会存在需要更新的问题(即低版本要升级或更新)。
在步骤S204处,对软件存在的不同问题进行分类得到软件问题类别,并在软件问题类别中记录与该类别下的一个或多个问题相关的问题信息。
在一个实施例中,对由软件信息确定的一个或多个问题按照共性、共同特质(相同的性质或特点)等进行分类,得到软件问题类别,并在每个软件问题类别中记录与该类别下的一个或多个问题相关的问题信息。
一种方式,可以将与服务器端所存储的各个软件的软件信息不同的这些预先获取的软件的软件信息提取出来,并将提取出的这些软件信息进行汇总,以及将具有相同或相似的性质或特点的问题以及相应的软件信息归为一个类别。如将问题a1、a2、a24进行分类:问题a1分到一个类别即软件问题类别I,问题a2分到一个类别即软件问题类别II,问题a24分到一个类别即软件问题类别IV;并将软件S的不能匹配上服务器存储的软件S的几个软件信息A1、A2、A4提取出来做汇总,其中,在类别I中记录问题a1相应的软件信息A1即问题信息A1,在类别II中记录问题a2相应的问题信息A2,在类别IV中记录问题a24相应的问题信息A2与A4,(A2&A4)例如表1所示:
表1
软件问题类别I 问题a1,b2,c3 A1,B2,C3
软件问题类别II 问题b1,c1,d12,a2 B1,C1,D1&D2
软件问题类别III 问题c2 C2
软件问题类别IV 问题a24 A2&A4
其中,a2、b1、b2、c1、c2、c3、d12等是其他软件匹配后发现的问题而分类到相应的类别,且记录了相应的软件信息即问题信息A2、B1、B2、C1、C2、C3、D1&D2(D1与D2)。
通过匹配、确定问题、做分类的过程,形成软件问题分类表(如表1所示),由此表,可以预测软件可能会存在哪些问题。比如,将某用户的软件S1的版本号C1、插件EX等软件信息与服务器端对应的该软件S1的版本号C1’、插件EX’不匹配,确定该软件存在升级、捆绑等安全或自身缺陷的问题,将该软件S1的两个问题c1、ex分两类(升级类、广告插件类)并记录问题信息C1、EX,可以预测其他用户的软件S1可能存在这两类问题。
由该预测软件问题和对软件问题划分类别的方式,还可以得到诸如以下软件问题类别:同类软件安装过多类别、软件运行后不清除临时文件类别、软件运行时占用过多资源类别、软件在开机时自动运行类别、缺少必备软件、缺少软件运行环境类别、未设置默认软件类别等其他软件问题类别、等等。
由此,可以实时提示用户在软件出现问题之前就可以解决软件问题,避免了不必要的损失。
至此结合图1、图2描述了根据本发明的软件检测方法的一具体实施例的过程。根据获取用户所请求检测软件的软件信息和预设的一个或多个软件问题类别中的信息进行匹配以执行检测,从而根据匹配到对应的软件问题类别确定检测的软件所存的问题,有效快速地检测出软件所存的问题。以及,根据检测结果进行有针对性的展示,可以使用户清楚地知道软件所存的问题,并针对问题进行相应处理。
与上述软件检测方法类似,本申请的实施例还提供相应的软件检测装置。
参照图3,图3示出了根据本申请一个实施例的软件检测装置300的示意性结构框图。该装置300包括:检测模块301、确定模块302、预置模块303、输出模块304。
检测模块301,用于将待检测软件的软件信息与预设的一种或多种软件问题类别中的问题信息进行匹配。进一步的,如果待检测软件的软件信息未匹配上任一软件问题类别中的任一问题信息,则确定所述待检测软件不存在问题;将不存在问题的所述待检测软件进行汇总,以形成无软件问题类别。其中,具体实施方式还可以参见步骤S501、S101-S102。
确定模块302,用于如果待检测软件的软件信息匹配上一种或多种软件问 题类别中的问题信息,则确定所述待检测软件存在相应的一种或多种软件问题类别下的一个或多个问题。其中,具体实施方式还可以参见步骤S502、S103-S104。
预置模块303,用于对软件存在的一个或多个问题进行分类而获得所述软件问题类别,每种软件问题类别中包含与该类别下的一个或多个问题相关的问题信息。其中,具体实施方式还可以参见步骤S201-S204。
其中,预置模块303还包括:匹配子模块303-1,用于将预先获取的软件的一种或多种软件信息与服务器中存储的所述软件的相应的软件信息进行匹配;确定子模块303-2,用于如果一种或多种软件信息与存储的所述软件的相应的软件信息未匹配上,则根据所述一种或多种软件信息确定所述软件存在的一个或多个问题,并将所述一种或多种软件信息作为与所述一个或多个问题相关的问题信息;分类子模块303-3,用于对所述一个或多个问题进行分类,得到软件问题类别,并在所述软件问题类别中记录与该类别下的一个或多个问题相关的问题信息。
输出模块304,用于将已经确定为存在问题的软件中属于相同软件问题类别的软件,汇总到一个展示条目下;其中,一种软件问题类别对应到一个展示条目,每个展示条目中展示对应的一种软件问题类别及属于该软件问题类别的一个或多个软件。进一步的,其还用于根据检测结果确定为不存在问题的软件,以无软件问题类别汇总到无软件问题类别的展示条目下。其中,具体实施方式还可以参见步骤S105。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式 的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的软件检测的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图6示出了可以实现本发明的软件检测方法的电子设备。该电子设备传统上包括处理器610和以存储器620形式的计算机程序产品或者计算机可读介质。存储器620可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器620具有用于存储执行上述方法中的任何方法步骤的程序代码631的存储空间,例如,用于程序代码的存储空间630,其可以存储有分别用于实现上面的方法中的各种步骤的各个程序代码631。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为例如图7所示的便携式或者固定存储单元。该存储单元可以具有与图6的电子 设备中的存储器620类似布置的存储段或者存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括用于执行根据本发明的方法步骤的程序631’,即可以由例如610之类的处理器读取的代码,当这些代码由电子设备运行时,导致该电子设备执行上面所描述的方法中的各个步骤。
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”或“包括”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
此外,还应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
本申请可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的 抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。

Claims (12)

  1. 一种软件检测方法,其中,包括:
    将待检测软件的软件信息与预设的一种或多种软件问题类别中的问题信息进行匹配;其中,所述软件问题类别是对软件存在的一个或多个问题进行分类而获得,每种软件问题类别中包含与该类别下的一个或多个问题相关的问题信息;
    如果待检测软件的软件信息匹配上一种或多种软件问题类别中的问题信息,则确定所述待检测软件存在相应的一种或多种软件问题类别下的一个或多个问题。
  2. 根据权利要求1所述的方法,其中,所述软件问题类别的获得包括步骤:
    将预先获取的软件的一种或多种软件信息与服务器中存储的所述软件的相应的软件信息进行匹配;
    如果一种或多种软件信息与存储的所述软件的相应的软件信息未匹配上,则根据所述一种或多种软件信息确定所述软件存在的一个或多个问题,并将所述一种或多种软件信息作为与所述一个或多个问题相关的问题信息;
    对所述一个或多个问题进行分类,得到软件问题类别,并在所述软件问题类别中记录与该类别下的一个或多个问题相关的问题信息。
  3. 根据权利要求1或2所述的方法,其中,将待检测软件的软件信息与预设的一种或多种软件问题类别中的问题信息进行匹配的步骤,还包括:
    如果待检测软件的软件信息未匹配上任一所述软件问题类别中的任一问题信息,则确定所述待检测软件不存在问题;
    将不存在问题的所述待检测软件进行汇总,以形成无软件问题类别。
  4. 根据权利要求1-3之一所述的方法,其中,还包括:
    将已经确定为存在问题的软件中属于相同软件问题类别的软件,汇总到一个展示条目下;其中,一种软件问题类别对应到一个展示条目,每个展示条目中展示对应的一种软件问题类别及属于该软件问题类别的一个或多个软件。
  5. 根据权利要求3或4所述的方法,其中,还包括:
    根据检测结果确定为不存在问题的软件,以无软件问题类别汇总到无软件问题类别的展示条目下。
  6. 一种软件检测的装置,其中,包括:
    检测模块,用于将待检测软件的软件信息与预设的一种或多种软件问题类别中的问题信息进行匹配;
    确定模块,用于如果待检测软件的软件信息匹配上一种或多种软件问题类别中的问题信息,则确定所述待检测软件存在相应的一种或多种软件问题类别 下的一个或多个问题;
    预置模块,用于对软件存在的一个或多个问题进行分类而获得所述软件问题类别,每种软件问题类别中包含与该类别下的一个或多个问题相关的问题信息。
  7. 根据权利要求6所述的装置,其中,预置模块还包括:
    匹配子模块,用于将预先获取的软件的一种或多种软件信息与服务器中存储的所述软件的相应的软件信息进行匹配;
    确定子模块,用于如果一种或多种软件信息与存储的所述软件的相应的软件信息未匹配上,则根据所述一种或多种软件信息确定所述软件存在的一个或多个问题,并将所述一种或多种软件信息作为与所述一个或多个问题相关的问题信息;
    分类子模块,用于对所述一个或多个问题进行分类,得到软件问题类别,并在所述软件问题类别中记录与该类别下的一个或多个问题相关的问题信息。
  8. 根据权利要求6或7所述的装置,其中,检测模块,还包括:
    如果待检测软件的软件信息未匹配上任一所述软件问题类别中的任一问题信息,则确定所述待检测软件不存在问题;
    将不存在问题的所述待检测软件进行汇总,以形成无软件问题类别。
  9. 根据权利要求6-8之一所述的装置,其中,还包括:
    输出模块,用于将已经确定为存在问题的软件中属于相同软件问题类别的软件,汇总到一个展示条目下;其中,一种软件问题类别对应到一个展示条目,每个展示条目中展示对应的一种软件问题类别及属于该软件问题类别的一个或多个软件。
  10. 根据权利要求8或9所述的装置,其中,还包括:
    输出模块,用于根据检测结果确定为不存在问题的软件,以无软件问题类别汇总到无软件问题类别的展示条目下。
  11. 一种计算机程序,包括计算机可读代码,当电子设备运行所述计算机可读代码运行时,导致权利要求1-5中的任一项权利要求所述的软件检测方法被执行。
  12. 一种计算机可读介质,其中存储了如权利要求11所述的计算机程序。
PCT/CN2014/095465 2014-03-07 2014-12-30 软件检测方法及装置 WO2015131643A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/124,300 US20170017561A1 (en) 2014-03-07 2014-12-30 Software detection method and device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410083400.3A CN104899505A (zh) 2014-03-07 2014-03-07 软件检测方法及装置
CN201410083400.3 2014-03-07

Publications (1)

Publication Number Publication Date
WO2015131643A1 true WO2015131643A1 (zh) 2015-09-11

Family

ID=54032165

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/095465 WO2015131643A1 (zh) 2014-03-07 2014-12-30 软件检测方法及装置

Country Status (3)

Country Link
US (1) US20170017561A1 (zh)
CN (1) CN104899505A (zh)
WO (1) WO2015131643A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114297015A (zh) * 2021-11-29 2022-04-08 苏州浪潮智能科技有限公司 一种服务器的配置检查方法、系统、设备以及介质

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180285775A1 (en) * 2017-04-03 2018-10-04 Salesforce.Com, Inc. Systems and methods for machine learning classifiers for support-based group
CN109508546A (zh) * 2018-11-12 2019-03-22 杭州安恒信息技术股份有限公司 一种基于软件基因的软件同源性分析方法和装置
CN109673009B (zh) * 2018-11-13 2022-06-21 浙江合众新能源汽车有限公司 一种vcu软件空中升级方法及装置
CN109684211B (zh) * 2018-12-18 2022-04-08 北京顺丰同城科技有限公司 一种基于店铺维度的订单调度系统压力测试方法及装置
US11250131B2 (en) 2019-12-19 2022-02-15 Beijing Didi Infinity Technology And Development Co., Ltd. Multi-purpose agent for endpoint scanning

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090271877A1 (en) * 2008-04-28 2009-10-29 Dafca, Inc. Method to secure embedded system with programmable logic, hardware and software binding, execution monitoring and counteraction
CN101706749A (zh) * 2009-11-18 2010-05-12 电子科技大学 基于软件安全缺陷检测的综合处理方法及其功能模块构架
CN102799513A (zh) * 2012-06-28 2012-11-28 腾讯科技(深圳)有限公司 故障问题的展示方法及展示系统
CN103577754A (zh) * 2012-08-02 2014-02-12 腾讯科技(深圳)有限公司 插件安装的检测方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6029258A (en) * 1997-10-09 2000-02-22 Microsoft Corporation Method and system for trouble shooting and correcting computer software problems
US6742141B1 (en) * 1999-05-10 2004-05-25 Handsfree Networks, Inc. System for automated problem detection, diagnosis, and resolution in a software driven system
US6629267B1 (en) * 2000-05-15 2003-09-30 Microsoft Corporation Method and system for reporting a program failure
US7475293B1 (en) * 2000-08-04 2009-01-06 Sun Microsystems, Inc. Product check matrix
CN103440455A (zh) * 2011-04-28 2013-12-11 北京奇虎科技有限公司 一种移动终端软件包安全检测方法及系统
CN102945347B (zh) * 2012-09-29 2016-02-24 中兴通讯股份有限公司 一种检测Android恶意软件的方法、系统及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090271877A1 (en) * 2008-04-28 2009-10-29 Dafca, Inc. Method to secure embedded system with programmable logic, hardware and software binding, execution monitoring and counteraction
CN101706749A (zh) * 2009-11-18 2010-05-12 电子科技大学 基于软件安全缺陷检测的综合处理方法及其功能模块构架
CN102799513A (zh) * 2012-06-28 2012-11-28 腾讯科技(深圳)有限公司 故障问题的展示方法及展示系统
CN103577754A (zh) * 2012-08-02 2014-02-12 腾讯科技(深圳)有限公司 插件安装的检测方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114297015A (zh) * 2021-11-29 2022-04-08 苏州浪潮智能科技有限公司 一种服务器的配置检查方法、系统、设备以及介质
CN114297015B (zh) * 2021-11-29 2024-01-16 苏州浪潮智能科技有限公司 一种服务器的配置检查方法、系统、设备以及介质

Also Published As

Publication number Publication date
CN104899505A (zh) 2015-09-09
US20170017561A1 (en) 2017-01-19

Similar Documents

Publication Publication Date Title
WO2015131643A1 (zh) 软件检测方法及装置
US11687653B2 (en) Methods and apparatus for identifying and removing malicious applications
US10437703B2 (en) Correlation of source code with system dump information
CN102736978B (zh) 一种检测应用程序的安装状态的方法及装置
US9417865B2 (en) Determining when to update a package manager software
US9336389B1 (en) Rapid malware inspection of mobile applications
US8627469B1 (en) Systems and methods for using acquisitional contexts to prevent false-positive malware classifications
US8875303B2 (en) Detecting pirated applications
US8209658B2 (en) Method of creating signatures for classifying program failures
US20140310560A1 (en) Method and apparatus for module repair in software
US8677346B1 (en) Providing installer package information to a user
US9734330B2 (en) Inspection and recovery method and apparatus for handling virtual machine vulnerability
US11188449B2 (en) Automated exception resolution during a software development session based on previous exception encounters
CN110135163B (zh) 一种基于目标应用的安全检测方法、装置及系统
CN110245059B (zh) 一种数据处理方法、设备及存储介质
CN109543409B (zh) 用于检测恶意应用及训练检测模型的方法、装置及设备
CN104915593A (zh) 对软件的去捆绑处理方法及系统
US8615751B2 (en) Seeding product information
CN106557379B (zh) 一种静默安装包的生成方法和装置
CN112596750B (zh) 应用测试方法、装置、电子设备及计算机可读存储介质
CN104317645A (zh) 一种应用程序实例监听端口的方法及装置
CN112579330B (zh) 操作系统异常数据的处理方法、装置及设备
JP2013197601A (ja) 障害検知装置、障害検知方法、及びプログラム
WO2022172422A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
US20040255144A1 (en) Methods and apparatus relating to class issues, product detection and customer support

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14884856

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 15124300

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 14884856

Country of ref document: EP

Kind code of ref document: A1