CN101789888A - Detection method and device for software installation - Google Patents

Detection method and device for software installation Download PDF

Info

Publication number
CN101789888A
CN101789888A CN201010000565A CN201010000565A CN101789888A CN 101789888 A CN101789888 A CN 101789888A CN 201010000565 A CN201010000565 A CN 201010000565A CN 201010000565 A CN201010000565 A CN 201010000565A CN 101789888 A CN101789888 A CN 101789888A
Authority
CN
China
Prior art keywords
software
detected
detection
version number
detection strategy
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
CN201010000565A
Other languages
Chinese (zh)
Other versions
CN101789888B (en
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN2010100005651A priority Critical patent/CN101789888B/en
Publication of CN101789888A publication Critical patent/CN101789888A/en
Priority to PCT/CN2011/070025 priority patent/WO2011085647A1/en
Application granted granted Critical
Publication of CN101789888B publication Critical patent/CN101789888B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a detection method and a device for software installation, which belong to the technical field of computers. The method comprises the following steps: obtaining software to be detected and at least one corresponding detection strategy in a detection strategy file stored by a client; and judging whether the software to be detected is installed or not according to the detection strategy of the software to be detected. The device comprises an obtaining module and a detection module. Each software recorded in the detection strategy file stored by the client is used as the software to be detected, the detection is carried out according to the detection strategies which aim at the software to be detected and are provided in the detection strategy file in order to judge whether the software to be detected is installed or not, and the invention can provide more accurate detection on the software installation.

Description

Detection method and device that a kind of software is installed
Technical field
The present invention relates to field of computer technology, detection method and device that particularly a kind of software is installed.
Background technology
Along with development of computer, client software is more and more, spreads all over each classes such as instant messaging, audio frequency and video broadcast, resource downloading, web page browsing, input method, system supplymentary.Along with popularizing of the Internet, client software was distributed as main mode by CD before 10 years, and being transformed into by network download is main mode, and this greatly facilitates the user and obtains client software.Simultaneously, the edition upgrading speed of client software is half a year before 10 years or annually also, become present every month once in addition several days once.The renewal version of client software can increase new function, and solves defective and leak in the legacy version, and the user uses latest edition can experience up-to-date function, and the security threat of avoiding the known bugs of software that computer is brought.Therefore, the relevant application program of software manager is arranged at present, can allow the user obtain the upgraded version of adorning client software.In software manager, whether the function of basis and core is exactly how to detect on the subscriber set certain a software accurately to install, and obtains its version number, thereby judges whether this software needs upgrading etc.
In the prior art, software manager can utilize following technology to carry out the detection whether software is installed: in the interpolation delete program of Windows for example shown in Figure 1, each mounted software and version information thereof are all from registration table
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall
HKEY_CURRENT_USER Software Microsoft Windows CurrentVersion key assignments scanning under the Uninstall obtain.Referring to Fig. 2, it is that QQ2009 installs that scanning gets access to dbase, and the version of this software is 1.41.1451.0.
In realizing process of the present invention, the inventor finds that there is following shortcoming at least in prior art:
Because the detection that software is installed in the prior art only can detect the software under the Uninstall node of registration table, for there not being normal registration all can not to be checked normally by partial destruction or "Green" software etc. to software or registry information in the system; In addition, the form of software version number may be lack of standardization under the registration table Uninstall node, is not suitable for the contrast of software upgrading version etc., and the detection technique mode that causes existing software to be installed is single and then occur problems such as erroneous judgement, adaptability be bad easily.
Summary of the invention
Detection method and device that the embodiment of the invention provides a kind of software to install whether have been installed in the computer in order to detect software exactly.Described technical scheme is as follows:
The detection method that a kind of software is installed, described method comprises:
Obtain software to be detected and corresponding detection strategy thereof in the detection strategy file of client storage, the detection strategy of described software correspondence to be detected is at least one;
Judge according to the detection strategy of described software to be detected whether described software to be detected is installed.
The preparation method of described detection strategy file comprises: server is the ID of its software distribution of collecting and the detection strategy of configuration; Described ID and corresponding detection strategy thereof are sent to described client; Described client is kept at ID and the corresponding detection strategy thereof that receives in the detection strategy file.
Described detection strategy according to described software to be detected judges that whether described software to be detected is installed, specifically comprises:
According to the detection strategy of described software to be detected, detect the version number of described software to be detected;
If detect the version number of described software to be detected, judge that then described software to be detected installs;
If do not detect the version number of described software to be detected, judge that then described software to be detected is not for installing.
Described detection strategy comprises at least:
Obtain the appointment PE file of software to be detected, from the attribute of described appointment PE file, obtain the version number of described software to be detected;
And/or
From registration table, obtain the version number of described software to be detected.
The appointment PE file of described acquisition software to be detected specifically comprises:
Obtain the installation path of described software to be detected by registration table, and obtain the appointment PE file of described software to be detected according to described installation path;
Or
Obtain the installation path of described software to be detected according to the shortcut of described software to be detected, and obtain the appointment PE file of described software to be detected according to described installation path.
The described version number that obtains described software to be detected from registration table specifically comprises:
Obtain the value of the version number of the unloading node under the local computer and CurrentUser in the registration table.
When described detection strategy was many, described detection strategy according to described software to be detected detected the version number of described software to be detected, specifically comprises:
Many at described software to be detected are detected in the strategy, obtain a detection strategy that was not performed as the current detection strategy, and detect the version number of described software to be detected according to described current detection strategy;
If the detection strategy that can't obtain not to be performed is as the current detection strategy, then testing result is not for detecting the version number of described software to be detected.
When judging that described software to be detected has been installed, export described version number.
The checkout gear that a kind of software is installed, described device comprises:
Obtain module, be used for detection strategy file acquisition software to be detected and corresponding detection strategy thereof in the client storage at described checkout gear place, the detection strategy of described software correspondence to be detected is at least one;
Detection module, the detection strategy that is used for the described software to be detected that obtains according to described acquisition module judges whether described software to be detected is installed.
Described checkout gear also comprises:
Detect strategy file and obtain module, be used for the described server that reception server issues and be the ID of its software distribution of collecting and the detection strategy of configuration, and it is kept in the detection strategy file.
Described detection module specifically comprises:
Version number's detecting unit, the detection strategy that is used for the described software to be detected that obtains according to described acquisition module detects the version number of described software to be detected;
Identifying unit is the version number that detects described software to be detected if be used for the testing result of described version number detecting unit, judges that then described software to be detected installs; If the testing result of described version number detecting unit, judges then that described software to be detected is not for installing for not detecting the version number of described software to be detected.
When described detection strategy was many, described version number detecting unit comprised:
Obtain subelement, be used for many detection strategies, obtain a detection strategy that was not performed as the current detection strategy at described software to be detected;
Detection sub-unit is used for detecting according to the current detection strategy that described acquisition subelement obtains the version number of described software to be detected;
Judge subelement, if be used for detection strategy that described acquisition subelement can't obtain not to be performed as the current detection strategy, then testing result is not for detecting the version number of described software to be detected.
Described device also comprises:
Output module is used for exporting the detected version number of described detection module when described identifying unit judges that described software to be detected has been installed.
The beneficial effect that the technical scheme that the embodiment of the invention provides is brought is:
Send the detection strategy of software and correspondence thereof to client by the server unification, and by client storage in detecting strategy file, client will detect each software of writing down in the strategy file as software to be detected, detect at the detection strategy that this software to be detected provided according to detecting in the strategy file, in order to judge whether this software to be detected is installed, the detection of can provide accurately, reliable software being installed; Simultaneously, to client, a server can send above-mentioned information for a plurality of clients, has saved the time that client disposes voluntarily by the unified detection strategy that sends software and correspondence thereof of server, improve the detection efficiency that software is installed, avoided the waste of resource.
Description of drawings
Fig. 1 is the schematic diagram of the interpolation delete program of Windows in the prior art;
Fig. 2 is the schematic diagram of scanning position of the interpolation delete program of Windows in the prior art;
Fig. 3 is the flow chart of the software that provides in the embodiment of the invention 1 detection method of installing;
Fig. 4 is the preparation method flow chart of the software that provides in the embodiment of the invention 2 detection method of installing;
Fig. 5 is the schematic diagram of the attribute of the software master EXE that provides in the embodiment of the invention 2;
Fig. 6 is the schematic diagram that obtains the software installation path from registration table that provides in the embodiment of the invention 2;
Fig. 7 is the schematic diagram that shortcut is obtained the installation path of software that passes through that provides in the embodiment of the invention 2;
Fig. 8 is the schematic diagram that passes through to obtain in the registration table Uninstall node version number of software that provides in the embodiment of the invention 2;
Fig. 9 is the schematic diagram that obtains the version number of software from other paths of registration table that provides in the embodiment of the invention 2;
Figure 10 is the flow chart of the software that provides in the embodiment of the invention 2 detection method of installing;
Figure 11 is the structural representation of the checkout gear installed of the software that provides in the embodiment of the invention 3.
Embodiment
For making the purpose, technical solutions and advantages of the present invention clearer, embodiment of the present invention is described further in detail below in conjunction with accompanying drawing.
Embodiment 1
In order to detect mounted software and version information thereof more exactly, the embodiment of the invention provides a kind of detection method of software installation, and referring to Fig. 3, this scheme comprises:
301: obtain software to be detected and corresponding detection strategy thereof in the detection strategy file of client storage, wherein, the detection strategy of software correspondence to be detected is at least one;
Wherein, the preparation method of detection strategy file comprises: server is the ID of its software distribution of collecting and the detection strategy of configuration; Above-mentioned ID and corresponding detection strategy thereof are sent to client; Client saves as the detection strategy file with ID and the corresponding detection strategy thereof that receives.
302:, judge whether this software to be detected is installed according to the detection strategy of software to be detected;
Wherein, step 302 is specifically as follows: according to the detection strategy of software to be detected, detect the version number of software to be detected;
If detect the version number of software to be detected, judge that then software to be detected installs;
If do not detect the version number of software to be detected, judge that then software to be detected is not for installing.
Wherein, the detection strategy of software to be detected can comprise at least:
Obtain the appointment PE file of software to be detected, from the attribute of specifying the PE file, obtain the version number of this software to be detected;
And/or, the version number of acquisition software to be detected from registration table.
Concrete, obtain the appointment PE file of software to be detected, specifically comprise:
Obtain the installation path of software to be detected by registration table, and obtain the appointment PE file of software to be detected according to installation path; Or
Obtain the shortcut of software to be detected, in the attribute of shortcut, obtain the installation path of software to be detected, and obtain the appointment PE file of software to be detected according to installation path.
Concrete, the version number of acquisition software to be detected from registration table specifically comprises:
Obtain the value of the DisplayVersion (version number) of Uninstall (unloading) node under LocalMachine in the registration table (local computer) and the CurrentUser (active user).
Need to prove that when the detection strategy was many, step 302 specifically comprised:
Many at software to be detected are detected in the strategy, obtain a detection strategy that was not performed as the current detection strategy, and detect the version number of software to be detected according to the current detection strategy;
If the detection strategy that can't obtain not to be performed is as the current detection strategy, then testing result is not for detecting the version number of software to be detected.
Wherein, when judging that software to be detected has been installed, export described version number.
The detection method that the embodiment of the invention provides a kind of software to install, send the detection strategy of software and correspondence thereof to client by the server unification, and by client storage in detecting strategy file, client will detect each software of writing down in the strategy file as software to be detected, detect at the detection strategy that this software to be detected provided according to detecting in the strategy file, in order to judge whether this software to be detected is installed, the detection of can provide accurately, reliable software being installed; Simultaneously, to client, a server can send above-mentioned information for a plurality of clients, has saved the time that client disposes voluntarily by the unified detection strategy that sends software and correspondence thereof of server, improve the detection efficiency that software is installed, avoided the waste of resource; And, all provide at least a detection strategy for each software to be detected, enriched the detection selection that software manager is installed for software.
Embodiment 2
In order to detect mounted software and version information thereof more exactly; the detection method that the embodiment of the invention provides a kind of software to install; is that example describes with software manager commonly used as executive agent, but not in order to restriction protection scope of the present invention.Concrete, this method can comprise preparation part and method entity part.
Referring to Fig. 4, at first introduce the preparation part:
401: the software manager server is collected the relevant information of all kinds of softwares;
Wherein, collection process can be undertaken by the network channel, also can be undertaken by modes such as mutual exchange messages between each server.
Further, the collection process of server can be regularly or Event triggered, the benefit of doing like this is, in case a certain software has been issued a new version, perhaps the registry-location of software redaction and early version is different, the detection strategy that has perhaps newly gone out a kind of software or the softwares such as a kind of software that disappeared just might change, and server just can be collected above-mentioned information in time.For example, set server every other day the operating personnel that collect above-mentioned information or server of a certain set time of (perhaps other) trigger and collect software function etc.
402: server is each software distribution ID that collected number and preservation;
For each id number that software distributed of collecting is can software of unique identification in server (or server system).The id number that distributes can be numeral, letter, symbol or above-mentioned one or more combination etc.
Server-assignment ID number process can be manual operation, also can be that server automatically performs.
Need to prove that the execution sequence of step 402 and step 403 can exchange, or carries out simultaneously.
403: for each software of collecting provides its relevant detection strategy;
Need to prove, detection for the software installation, actual is for institute's installed software and version number thereof on the detection computations machine, so, provide software relevant detection strategy promptly can think to provide and how to detect institute's installed software on the computer, and the version number that how to detect software is provided.Because in embodiments of the present invention, how to detect that institute's installed software is to be gone to finish by the client at software manager place on the computer, therefore, in this step 403, provide software relevant detection strategy to be version number how to detect software is provided.
Concrete detection strategy can provide according to different software, is that example describes with several easy detection strategies here, but not in order to restriction protection scope of the present invention.
1,, can obtain the version number of software by the appointment PE file of software referring to Fig. 5:
Wherein, for specifying the PE file need to prove, the PE file refers to files such as EXE (can the carry out) file of software or DLL (dynamic link library) file.The PE file of appointment is applicable to that a software comprises the situation of a plurality of EXE files or dll file, and server can be in the detection strategy that issues be specified the PE file of the version number that obtains software.
Wherein, all can there be one in the attribute of the PE file of regular software and be the version of this kind of software, therefore, can pass through the store path of the appointment PE file of acquisition software, and from the attribute of specifying the PE file, obtain the version number of software.
Concrete, the store path that obtains the appointment PE file (the main EXE with software is an example) of software can comprise:
(1) obtains the store path of main EXE by registration table
Owing to may contain the installation path of software in the registration table, as shown in Figure 6,, then can obtain the store path of the main EXE file of software according to installation path if can in registration table, get access to the installation path of software.
(2) obtain by shortcut
Since can navigate to the main EXE path of software by the attribute of shortcut, as shown in Figure 7, so can directly obtain the store path of the main EXE of software by shortcut.
Wherein, need to prove that the position of the shortcut of the main EXE of software includes but not limited to following several:
A) beginning-programs menu shortcut is under the active user
B) beginning-programs menu shortcut is under all users
C) desktop shortcuts is under the active user
D) desktop shortcuts is under all users
E) start the hurdle shortcut fast, under the active user
F) start the hurdle shortcut fast, under all users
Certainly, can also support by the main EXE store path of shortcut acquisition software: the shortcut file relative path is synthetic relatively.
2, can obtain the version number of software by registration table
(1) as shown in Figure 8, obtain the value of the DisplayVersion of the Uninstall node under the LocalMachine and CurrentUser in the registration table, the registration table path is:
HKEY_LOCAL_MACHINE\Software\Microsoft\WindoWs\CurrentVersion\Uninstall
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall
(2) as shown in Figure 9,, obtain the information of the software version number that comprises in other paths of registration table according to the difference setting of different software, for example:
HKEY_LOCAL_MACHINE\SOFTWARE\TENCENT\QQDownload\\Version
Be that the registration table path is
HKEY_LOCAL_MACHINE SOFTWARE TENCENT under the QQDownload key name be the information of obtaining software version number among the Version.
3, according to the difference of software, can certain data file under the installation directory of software in, obtain the version number of software
404: the client that server is given each software manager place with software I D number and corresponding detection policy distribution;
Wherein, when issuing first, can utilize notification message or other message body commonly used above-mentioned information to be sent to the client at each software manager place; Non-when issuing first, can above-mentioned information be handed down to each software manager place client by updating message or other message body commonly used., need to prove when issuing first non-, can select to adopt full dose to upgrade or the mode of incremental update issues above-mentioned information.
For example, under non-situation about issuing first, server acquiescence client has had the data of its last time when issuing, then, server can adopt the mode of incremental update, data that do not comprise in the data that the last time is issued or the data distributing that changes are given client, and the data that do not change are not handed down to client; Perhaps, the mode that server can adopt full dose to upgrade, will be all (comprise change and do not change) data distributing give client.
The time of issuing of data can be regularly, also can be instant.Situation regularly can be that every other day the set time of (perhaps other) issues above-mentioned data, instant situation can be whenever to collect any variation of the redaction version of new software or software or software and the configuration of the detection strategy that causes when changing at server, promptly begins to carry out issuing of data.The data that issue can be explained by client and carry out.
Wherein, the server data that are handed down to client can be represented by the xml structure.
405: client receives the software I D that server issues and detects strategy, and it is made an explanation and preserves.
Need to prove that client receives software I D number and the corresponding detection strategy that server issues, and uses a data file to preserve above-mentioned data, in the present embodiment this data file is referred to as to detect strategy file (perhaps, feature database file).Why use data file to preserve software I D number and corresponding detection strategy thereof, rather than be hard-coded in the program code of software manager, be because the detection strategy of software may be a real-time update, if be hard-coded in the program code, just need to revise the program code of software manager, and that data file modifications is got up is very convenient quick and can to preserve multiple detections of various software tactful.The basic structure of the detection strategy file of client storage can be as shown in table 1, wherein, need to prove, detect in the strategy file, describe the detection strategy that is configured at each software successively, the detection strategy of each software can comprise one or more.
Table 1
Software I D1: strategy 1 strategy 2 tactful 3...... software I D2: strategy 1
Strategy 2 tactful 3...... ...
Receive the data that server issues with client, parse software I D and detect strategy, and be kept to detect and be example in the strategy file, the detection strategy file shown in can reference table 2 is only for the convenient usefulness of explanation, not in order to do the reference of actual file.
Table 2
Software I D1 (QQ2009): strategy 1: to the path of registration table be HKEY_LOCAL_MACHINE S oftware Microsoft Windows CurrentVersion Uninstal 1 { 052CFB79-9D62-42E3-8A15-DE66C2C97C3E} file acquisition key name down is the value of InstallLocation correspondence, this value corresponding the installation path of QQ2009, file bin to the QQ2009 installation path obtains the appointment PE file QQ.exe of QQ2009 down, and obtains the version number of software from the attribute of QQ.exe; Strategy 2: find Tengxun's software QQ2009 the shortcut of Tencent QQ 2009.lnk, and obtain the installation path of software according to the attribute in the shortcut, and obtain the PE file QQ.exe of appointment, and from the attribute of QQ.exe, obtain the version number of software according to installation path.Software I D2 (QQ is audio-visual): strategy 1: to the path HKEY_CURRENT_USER of registration table Software Microsoft Windows CurrentVersion file QQPlayer acquisition key name under the Uninstall be the value of DisplayIcon correspondence, this value corresponding the audio-visual installation path of QQ, the installation path audio-visual to QQ obtains the audio-visual .exe of appointment PE file QQ of software down, and obtains the version number of software from the attribute of the audio-visual .exe of QQ; Strategy 2: find Tengxun's software QQ audio-visual the shortcut of the audio-visual .lnk of QQ, and obtain the installation path of software according to the attribute in the shortcut, and obtain the audio-visual .exe of PE file QQ of appointment, and from the attribute of the audio-visual .exe of QQ, obtain the version number of software according to installation path; Strategy 3: find Tencent QQPlayer the shortcut of QQPlayer.lnk, and obtain the installation path of software, and obtain the PE file QQPlayer.exe of appointment according to installation path according to the attribute in the shortcut, and from
Obtain the version number of software in the attribute of QQPlayer.exe; Strategy 4: be that file QQPlayer time acquisition key name under the file SOFTWARE file TENCENT down of HKEY_LOCAL_MACHINE is the value of Version to the path of registration table, this key-value pair is being answered the audio-visual version number of QQ.
To the prerequisite of step 405 as the preparation part of this method, the basic goal of the method for the software detection that the embodiment of the invention provides is in step 401: for its each software detection that detects in the strategy file goes out dbase and version number thereof.Because the detection method of each software all is similarly on flow process, so in the present embodiment, be the explanation that example is carried out this method with the detection that detects any software in the strategy file.Referring to Figure 10, the detection method that the software that present embodiment provides is installed specifically can comprise:
1001: the software manager of client receives the triggering signal of software detection;
Wherein, the triggering signal of software detection can but be not limited to comprise: software manager detects software startup operation, user and starts software detection function, software manager and detect time of regularly detecting software and execute detection etc. to, some (non-last) software of detecting in the strategy file.
1002: software manager obtains pairing of not being performed of software I D to be detected and detects strategy in detecting strategy file, and according to the detection strategy that obtains whether this software to be detected has been installed and to have been detected;
For example, be example with the table 2 that provides in the step 405, be example with the audio-visual software of QQ of software I D2 representative as software to be detected, software manager obtains the pairing detection strategy that is not performed of ID2, and as strategy 1, according to strategy 1, the path is in the registration table
HKEY_CURRENT_USER Software Microsoft Windows CurrentVersion obtain the value that key name is DisplayIcon under the file QQPlayer under the Uninstall, obtain the main exe of ID2 software by this key assignments, and from the attribute of main exe, obtain the version number of software.
Wherein, need to prove that the detection strategy that is not performed can be that software manager obtains one by one according to the preservation order that detects strategy file, also can be that software manager is therefrom obtained at random.
1003: the version number that judges whether to detect this software to be detected;
If then execution in step 1006;
If not, execution in step 1004 then.
1004: judge to detect in the strategy file this software to be detected and whether detect strategy in addition and be not performed;
If then execution in step 1002;
If not, execution in step 1005 then.
1005: detect and to finish, judge that this software to be detected is install software not;
1006: detect and to finish, judges that this software to be detected is install software, version number is the version number of acquisition in the step 1002.
Need to prove that software manager can be carried out above-mentioned steps 1001 to the method shown in the step 1006 for detecting each software of preserving in the strategy file, the present invention does not do and gives unnecessary details.
Need to prove that also all there are a special case in step 1005 and step 1006.
Wherein, the special case of step 1005 is: software manager does not detect the version number of software, but software has been installed to client really, and in order to overcome the problem of above-mentioned special case, the step 1005 of present embodiment can be expressed as:
Whether the appointment PE file of judging this software to be detected exists;
If exist, then detect and finish, judge that this software to be detected is install software, version number adopts self-defining form, as 0.0.0.0 or the like;
If there is no, then detect and finish, judge that this software to be detected is install software not.
There is a special case in the step 1006, it is the version number that software manager detects software, but this version number may be (as deletion software time make a mistake) and left version number because some special operational, and in order to overcome the problem of above-mentioned special case, the step 1006 of present embodiment can be expressed as:
Whether the appointment PE file of judging this software to be detected exists;
If exist, then detect and finish, judges that this software to be detected is install software, version number is the version number of acquisition in the step 1002;
If there is no, then detect and finish, judge that this software to be detected is install software not.
The detection method that the embodiment of the invention provides a kind of software to install, send the detection strategy of software and correspondence thereof to client by the server unification, and by client storage in detecting strategy file, client will detect each software of writing down in the strategy file as software to be detected, detect at the detection strategy that this software to be detected provided according to detecting in the strategy file, in order to judge whether this software to be detected is installed, the detection of can provide accurately, reliable software being installed; Simultaneously, to client, a server can send above-mentioned information for a plurality of clients, has saved the time that client disposes voluntarily by the unified detection strategy that sends software and correspondence thereof of server, improve the detection efficiency that software is installed, avoided the waste of resource; And, all provide at least a detection strategy for each software to be detected, enriched the detection selection that software manager is installed for software.
Embodiment 3
Referring to Figure 11, the checkout gear that the embodiment of the invention provides a kind of software to install need to prove that the method for work of this checkout gear can not done and give unnecessary details referring to the method part that provides among embodiment 1 and the embodiment 2 herein.This device comprises:
Obtain module 1101, be used for detection strategy file acquisition software to be detected and corresponding detection strategy thereof in the client storage at checkout gear place, wherein, the detection strategy of software correspondence to be detected is at least one;
Detection module 1102 is used for the detection strategy according to the software to be detected that obtains module 1101 acquisitions, judges whether software to be detected is installed.
Further, checkout gear also comprises:
Detect strategy file and obtain module, be used for the server that reception server issues and be the ID of its software distribution of collecting and the detection strategy of configuration, and it is kept in the detection strategy file.
Wherein, detection module 1102 specifically comprises:
Version number's detecting unit is used for detecting according to the detection strategy that obtains the software to be detected that module 1101 obtains the version number of software to be detected;
Identifying unit is the version number that detects software to be detected if be used for the testing result of version number's detecting unit, judges that then software to be detected installs; If the testing result of version number's detecting unit, judges then that software to be detected is not for installing for not detecting the version number of software to be detected.
Wherein, when the detection strategy was many, version number's detecting unit comprised:
Obtain subelement, be used for many detection strategies, obtain a detection strategy that was not performed as the current detection strategy at software to be detected;
Detection sub-unit is used for according to obtaining the version number that current detection strategy that subelement obtains detects software to be detected;
Judge subelement, if be used for obtaining detection strategy that subelement can't obtain not to be performed as the current detection strategy, then testing result is not for detecting the version number of software to be detected.
Further, checkout gear also comprises:
Output module is used for when identifying unit judges that software to be detected has been installed, the detected version number of detecting unit of trade edition this shop.
The checkout gear that the embodiment of the invention provides a kind of software to install, send the detection strategy of software and correspondence thereof to client by the server unification, and by client storage in detecting strategy file, client will detect each software of writing down in the strategy file as software to be detected, detect at the detection strategy that this software to be detected provided according to detecting in the strategy file, in order to judge whether this software to be detected is installed, the detection of can provide accurately, reliable software being installed; Simultaneously, to client, a server can send above-mentioned information for a plurality of clients, has saved the time that client disposes voluntarily by the unified detection strategy that sends software and correspondence thereof of server, improve the detection efficiency that software is installed, avoided the waste of resource; And, all provide at least a detection strategy for each software to be detected, enriched the detection selection that software manager is installed for software.
The above only is preferred embodiment of the present invention, and is in order to restriction the present invention, within the spirit and principles in the present invention not all, any modification of being done, is equal to replacement, improvement etc., all should be included within protection scope of the present invention.

Claims (13)

1. the software detection method of installing is characterized in that described method comprises:
Obtain software to be detected and corresponding detection strategy thereof in the detection strategy file of client storage, the detection strategy of described software correspondence to be detected is at least one;
Judge according to the detection strategy of described software to be detected whether described software to be detected is installed.
2. the detection method that software as claimed in claim 1 is installed is characterized in that the preparation method of described detection strategy file comprises:
Server is the ID of its software distribution of collecting and the detection strategy of configuration; Described ID and corresponding detection strategy thereof are sent to described client; Described client is kept at ID and the corresponding detection strategy thereof that receives in the detection strategy file.
3. the detection method that software as claimed in claim 1 or 2 is installed is characterized in that described detection strategy according to described software to be detected judges that whether described software to be detected is installed, specifically comprises:
According to the detection strategy of described software to be detected, detect the version number of described software to be detected;
If detect the version number of described software to be detected, judge that then described software to be detected installs;
If do not detect the version number of described software to be detected, judge that then described software to be detected is not for installing.
4. the detection method that software as claimed in claim 3 is installed is characterized in that described detection strategy comprises at least:
Obtain the appointment PE file of software to be detected, from the attribute of described appointment PE file, obtain the version number of described software to be detected;
And/or
From registration table, obtain the version number of described software to be detected.
5. the detection method that software as claimed in claim 4 is installed is characterized in that the appointment PE file of described acquisition software to be detected specifically comprises:
Obtain the installation path of described software to be detected by registration table, and obtain the appointment PE file of described software to be detected according to described installation path;
Or
Obtain the installation path of described software to be detected according to the shortcut of described software to be detected, and obtain the appointment PE file of described software to be detected according to described installation path.
6. the detection method that software as claimed in claim 4 is installed is characterized in that, the described version number that obtains described software to be detected from registration table specifically comprises:
Obtain the value of the version number of the unloading node under the local computer and CurrentUser in the registration table.
7. the detection method that software as claimed in claim 3 is installed is characterized in that, when described detections is tactful when being many, described detection strategy according to described software to be detected detects the version number of described software to be detected, specifically comprises:
Many at described software to be detected are detected in the strategy, obtain a detection strategy that was not performed as the current detection strategy, and detect the version number of described software to be detected according to described current detection strategy;
If the detection strategy that can't obtain not to be performed is as the current detection strategy, then testing result is not for detecting the version number of described software to be detected.
8. the detection method that software as claimed in claim 3 is installed is characterized in that described method also comprises:
When judging that described software to be detected has been installed, export described version number.
9. the checkout gear installed of a software is characterized in that described device comprises:
Obtain module, be used for obtaining software to be detected and corresponding detection strategy thereof at the detection strategy file of described checkout gear place client storage, the detection strategy of described software correspondence to be detected is at least one;
Detection module, the detection strategy that is used for the described software to be detected that obtains according to described acquisition module judges whether described software to be detected is installed.
10. the checkout gear that software as claimed in claim 9 is installed is characterized in that described checkout gear also comprises:
Detect strategy file and obtain module, be used for the described server that reception server issues and be the ID of its software distribution of collecting and the detection strategy of configuration, and it is kept in the detection strategy file.
11. the checkout gear that software as claimed in claim 9 is installed is characterized in that described detection module specifically comprises:
Version number's detecting unit, the detection strategy that is used for the described software to be detected that obtains according to described acquisition module detects the version number of described software to be detected;
Identifying unit is the version number that detects described software to be detected if be used for the testing result of described version number detecting unit, judges that then described software to be detected installs; If the testing result of described version number detecting unit, judges then that described software to be detected is not for installing for not detecting the version number of described software to be detected.
12. the checkout gear that software as claimed in claim 11 is installed is characterized in that, when described detection strategy was many, described version number detecting unit comprised:
Obtain subelement, be used for many detection strategies, obtain a detection strategy that was not performed as the current detection strategy at described software to be detected;
Detection sub-unit is used for detecting according to the current detection strategy that described acquisition subelement obtains the version number of described software to be detected;
Judge subelement, if be used for detection strategy that described acquisition subelement can't obtain not to be performed as the current detection strategy, then testing result is not for detecting the version number of described software to be detected.
13. the checkout gear that software as claimed in claim 11 is installed is characterized in that described device also comprises:
Output module is used for exporting the detected version number of detecting unit of described version number when described identifying unit judges that described software to be detected has been installed.
CN2010100005651A 2010-01-12 2010-01-12 Detection method and device for software installation Active CN101789888B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2010100005651A CN101789888B (en) 2010-01-12 2010-01-12 Detection method and device for software installation
PCT/CN2011/070025 WO2011085647A1 (en) 2010-01-12 2011-01-04 Method and apparatus for detecting software installation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010100005651A CN101789888B (en) 2010-01-12 2010-01-12 Detection method and device for software installation

Publications (2)

Publication Number Publication Date
CN101789888A true CN101789888A (en) 2010-07-28
CN101789888B CN101789888B (en) 2012-04-11

Family

ID=42532953

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010100005651A Active CN101789888B (en) 2010-01-12 2010-01-12 Detection method and device for software installation

Country Status (2)

Country Link
CN (1) CN101789888B (en)
WO (1) WO2011085647A1 (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101986283A (en) * 2010-11-16 2011-03-16 北京安天电子设备有限公司 Method and system for detecting existed Windows system bugs
WO2011085647A1 (en) * 2010-01-12 2011-07-21 腾讯科技(深圳)有限公司 Method and apparatus for detecting software installation
CN102722392A (en) * 2012-06-07 2012-10-10 腾讯科技(深圳)有限公司 Method and system for software operation
CN102737028A (en) * 2011-04-01 2012-10-17 深圳市赛格导航科技股份有限公司 Synchronization method and synchronization system of database
CN102736978A (en) * 2012-06-26 2012-10-17 奇智软件(北京)有限公司 Method and device for detecting installation status of application program
CN102955911A (en) * 2011-08-18 2013-03-06 腾讯科技(深圳)有限公司 Trojan scanning method and Trojan scanning system
CN103177104A (en) * 2013-03-26 2013-06-26 北京小米科技有限责任公司 Searching method and device of application program
CN103294565A (en) * 2013-06-24 2013-09-11 贝壳网际(北京)安全技术有限公司 Method, device and equipment for detecting installed application
CN103440144A (en) * 2013-08-07 2013-12-11 北京奇虎科技有限公司 Setting method and device of default software for equipment
CN103473163A (en) * 2013-09-11 2013-12-25 腾讯科技(深圳)有限公司 Application program detection method and device
CN103514089A (en) * 2012-06-26 2014-01-15 腾讯科技(深圳)有限公司 Method and system for software installation detecting of software manager
CN103577217A (en) * 2012-08-10 2014-02-12 腾讯科技(深圳)有限公司 Method and device for displaying software
CN103631603A (en) * 2013-12-16 2014-03-12 北京奇虎科技有限公司 Software cleaning method and system
CN103810105A (en) * 2014-03-06 2014-05-21 中国工商银行股份有限公司 Method and device for detecting application program version
CN104239215A (en) * 2014-09-30 2014-12-24 北京奇虎科技有限公司 Method and device for investigating useless software
CN107767594A (en) * 2017-11-09 2018-03-06 福州汇思博信息技术有限公司 The detection method and system of a kind of pre installation software package
CN108920155A (en) * 2018-05-04 2018-11-30 天津猎鹰网络技术有限公司 Software installation treating method and apparatus
CN109324872A (en) * 2018-09-21 2019-02-12 张家口浩扬科技有限公司 The method and system that the request that a kind of pair of virtual machine changes is verified
CN110096443A (en) * 2019-04-28 2019-08-06 北京奇安信科技有限公司 It is a kind of to detect the method and device for having installed software
CN110647739A (en) * 2019-07-26 2020-01-03 平安科技(深圳)有限公司 Software installation detection method, device, terminal and storage medium
CN115865809A (en) * 2023-02-02 2023-03-28 爱集微咨询(厦门)有限公司 Data transmission method and device, electronic equipment and readable storage medium

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294137A (en) * 2016-08-01 2017-01-04 浪潮(北京)电子信息产业有限公司 A kind of linux User space spin lock deadlock detection method and system
US11157583B2 (en) 2018-09-14 2021-10-26 International Business Machines Corporation Software detection based on user accounts

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7574481B2 (en) * 2000-12-20 2009-08-11 Microsoft Corporation Method and system for enabling offline detection of software updates
US8216071B2 (en) * 2002-03-20 2012-07-10 Intel Corporation Method and apparatus for software delivery and management
TWI317503B (en) * 2002-12-31 2009-11-21 Hon Hai Prec Ind Co Ltd System and method for remote installation of application programs in mobile derices
CN1797337B (en) * 2004-12-29 2010-05-05 北京软通科技有限责任公司 Method for installing software of computer automatically
CN100501697C (en) * 2007-11-09 2009-06-17 中兴通讯股份有限公司 Software version upgrade mounting test system and method thereof
CN101221511A (en) * 2008-01-25 2008-07-16 中兴通讯股份有限公司 Automatic installation and upgrading method of terminal unit application software
WO2009115367A1 (en) * 2008-03-20 2009-09-24 International Business Machines Corporation Method and system for detecting the installation and usage of software in an application virtualization environment
CN101593121B (en) * 2009-06-23 2014-03-05 中兴通讯股份有限公司 Method, device and system for software on-line upgrade
CN101789888B (en) * 2010-01-12 2012-04-11 腾讯科技(深圳)有限公司 Detection method and device for software installation

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011085647A1 (en) * 2010-01-12 2011-07-21 腾讯科技(深圳)有限公司 Method and apparatus for detecting software installation
CN101986283A (en) * 2010-11-16 2011-03-16 北京安天电子设备有限公司 Method and system for detecting existed Windows system bugs
CN102737028A (en) * 2011-04-01 2012-10-17 深圳市赛格导航科技股份有限公司 Synchronization method and synchronization system of database
CN102955911A (en) * 2011-08-18 2013-03-06 腾讯科技(深圳)有限公司 Trojan scanning method and Trojan scanning system
CN102955911B (en) * 2011-08-18 2015-12-16 腾讯科技(深圳)有限公司 Wooden horse scan method and system
CN102722392A (en) * 2012-06-07 2012-10-10 腾讯科技(深圳)有限公司 Method and system for software operation
CN102722392B (en) * 2012-06-07 2015-11-25 腾讯科技(深圳)有限公司 Software running method and system
CN103514089B (en) * 2012-06-26 2016-03-09 腾讯科技(深圳)有限公司 The software of software manager installs detection method and system
CN102736978A (en) * 2012-06-26 2012-10-17 奇智软件(北京)有限公司 Method and device for detecting installation status of application program
CN102736978B (en) * 2012-06-26 2015-09-30 北京奇虎科技有限公司 A kind of method and device detecting the installment state of application program
CN103514089A (en) * 2012-06-26 2014-01-15 腾讯科技(深圳)有限公司 Method and system for software installation detecting of software manager
CN103577217A (en) * 2012-08-10 2014-02-12 腾讯科技(深圳)有限公司 Method and device for displaying software
CN103177104A (en) * 2013-03-26 2013-06-26 北京小米科技有限责任公司 Searching method and device of application program
CN103294565B (en) * 2013-06-24 2016-08-31 贝壳网际(北京)安全技术有限公司 Method, device and equipment for detecting installed application
CN103294565A (en) * 2013-06-24 2013-09-11 贝壳网际(北京)安全技术有限公司 Method, device and equipment for detecting installed application
CN103440144B (en) * 2013-08-07 2016-09-28 北京奇虎科技有限公司 A kind of method to set up to the default software that equipment uses and device
CN103440144A (en) * 2013-08-07 2013-12-11 北京奇虎科技有限公司 Setting method and device of default software for equipment
CN103473163A (en) * 2013-09-11 2013-12-25 腾讯科技(深圳)有限公司 Application program detection method and device
CN103473163B (en) * 2013-09-11 2016-10-26 腾讯科技(深圳)有限公司 application program detection method and device
CN103631603A (en) * 2013-12-16 2014-03-12 北京奇虎科技有限公司 Software cleaning method and system
CN103810105B (en) * 2014-03-06 2016-08-31 中国工商银行股份有限公司 application version detection method and device
CN103810105A (en) * 2014-03-06 2014-05-21 中国工商银行股份有限公司 Method and device for detecting application program version
CN104239215A (en) * 2014-09-30 2014-12-24 北京奇虎科技有限公司 Method and device for investigating useless software
CN104239215B (en) * 2014-09-30 2018-02-02 北京奇虎科技有限公司 The investigation method and apparatus of garbageware
CN107767594A (en) * 2017-11-09 2018-03-06 福州汇思博信息技术有限公司 The detection method and system of a kind of pre installation software package
CN108920155A (en) * 2018-05-04 2018-11-30 天津猎鹰网络技术有限公司 Software installation treating method and apparatus
CN109324872A (en) * 2018-09-21 2019-02-12 张家口浩扬科技有限公司 The method and system that the request that a kind of pair of virtual machine changes is verified
CN109324872B (en) * 2018-09-21 2020-12-25 北京隆普智能科技有限公司 Method and system for verifying virtual machine change request
CN110096443A (en) * 2019-04-28 2019-08-06 北京奇安信科技有限公司 It is a kind of to detect the method and device for having installed software
CN110647739A (en) * 2019-07-26 2020-01-03 平安科技(深圳)有限公司 Software installation detection method, device, terminal and storage medium
CN115865809A (en) * 2023-02-02 2023-03-28 爱集微咨询(厦门)有限公司 Data transmission method and device, electronic equipment and readable storage medium

Also Published As

Publication number Publication date
WO2011085647A1 (en) 2011-07-21
CN101789888B (en) 2012-04-11

Similar Documents

Publication Publication Date Title
CN101789888B (en) Detection method and device for software installation
CN101794222A (en) Software version collecting method, management system and software upgrading detection method and system
US9176723B2 (en) System and method for passive detection and context sensitive notification of upgrade availability for computer information
EP2122561B1 (en) Web data usage platform
US8473607B2 (en) System and method for software usage discovery
US20110083126A1 (en) Detecting Impact of Operating System Upgrades
US9548891B2 (en) Configuration of network devices
US20120323857A1 (en) Method for Restoring Software Applications on Desktop Computers
CN102043655A (en) Method and system for carrying out advanced uninstall on software
US7774771B2 (en) Method and system for managing and organizing software package installations
US20080163092A1 (en) One stop install, un-install, and update of software products
US20090327630A1 (en) Software configuration item back-up facility
US20060123413A1 (en) System and method for installing a software application
US20110214111A1 (en) Systems and methods for detecting computing processes requiring reinitialization after a software package update
EP1771785A2 (en) System and method for extraction and creation of application meta-information within a software application repository
CN105653329A (en) Application management method, apparatus and system
US20130212574A1 (en) Sub-Device Discovery and Management
US11544052B2 (en) Tenant declarative deployments with release staggering
CN103034803A (en) Prompting system for mistaken installation of software
CN103902562A (en) Method and device for upgrading terminal databases
EP2130164A1 (en) A method and system for populating a software catalogue with related product information
CN102156650B (en) Method and device capable of implementing automatic analysis of patch
WO2020001391A1 (en) Dynamic management method for menu, server and system
US8365165B2 (en) Dynamic addition of products and removal of software products on a distribution server
US7272600B1 (en) Migrating large data sets for products upgrades

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant