Software configuration storage processing method and device, electronic equipment and storage medium
By identifying and capturing the configuration operations of third-party software in the desktop operating system of the terminal device and redirecting these operations to the remote disk file, the problem of loss of software configuration information after the desktop system is restored is solved, and a simple and general configuration saving method is realized.
Patent Information
- Application Number
- CN202311274551.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-28
- Publication Date
- 2025-03-28
AI Technical Summary
After restoring the desktop system, the software configuration information of the third-party software is easily lost, and the existing methods are large in workload, high technical threshold, and are not universal.
By responding to the target software name, determine the corresponding third-party software in the desktop operating system of the terminal device, obtain the process identification and executable file path of the software startup process, determine the process identification of the software configuration operation, and when the match is successful, redirect the parameters of the software configuration operation to the remote disk file.
After restoring the desktop system, the next time you boot, you can redirect to the remote disk file to read the software configuration information of the third-party software, simplifying the configuration saving process, lowering the technical threshold, and improving the universality of the method.
Smart Images

Figure CN119718446A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to computer technology, and in particular to a method, device, electronic device and storage medium for saving and processing software configuration. Background Art
[0002] In order to save the user's personalized configuration of the software when restoring the desktop system, the current practice is to write the file path and registry path of the personalized storage of the third-party software in a lightweight data exchange formula, that is, a configuration file in json format (JavaScript Object Notation, JS object notation), so that the personalized configuration information can be read after the file and registry filter driver is started.
[0003] It is understandable that to generate a configuration file in json format, it is necessary to know in advance which file or registry path each software writes to when saving its configuration. In this regard, the current practice is to use process monitoring software Processmonitor to capture all file and registry operations of the operating system during the saving of software configuration, and then gradually eliminate them to determine possible file or registry paths and write them into the configuration file in json format.
[0004] However, the above existing practices have at least the following disadvantages: 1. Large workload and high technical threshold. In a few tens of seconds, Processmonitor will capture tens of thousands of records and exclude irrelevant records, which requires rich experience and patience. Generally, only R&D personnel can do this job. It takes an average of about 2 hours to find the configuration save location for a software. 2. It needs to be captured when the software is running. For example, some software needs to be logged in and run in a specific environment. If it is copied to other environments, it cannot run. In this case, its configuration save path needs to be captured. If it cannot be done remotely (no need or permission to log in to the external network), it is necessary to travel to the customer site. 3. It is not universal. For example, a software needs to be captured once. If the configuration save location changes after the software is upgraded, it needs to be re-captured. And because R&D is not familiar with the business software, it may not be possible to run all the configuration operations, resulting in possible omissions in the captured path. Summary of the invention
[0005] The present application provides a software configuration preservation processing method, device, electronic device and storage medium, which are used to solve the problem in the related art that after the desktop system is restored and shut down, the software configuration information of the third-party software is lost when the computer is turned on next time, and to provide a simple and universal way to determine the software configuration operation of the file or registry that needs to be redirected, so that after the desktop system is restored and shut down, the software configuration information of the third-party software is redirected to the remote disk file to read the software configuration information of the third-party software when the computer is turned on next time.
[0006] On the one hand, the present application provides a software configuration saving processing method, the method comprising:
[0007] In response to the received target software name, determining the third-party software corresponding to the target software name in the desktop operating system of the terminal device;
[0008] In response to a software startup operation on the third-party software, obtaining a process identifier and an executable file path of a software startup process corresponding to the software startup operation;
[0009] In response to a software configuration operation on the third-party software, determining a process identifier of the software configuration operation, wherein the software configuration operation is a write operation on the configuration of the third-party software;
[0010] In response to a successful match between the process identifier of the software configuration operation and the process identifier of the startup process, the operation parameters of the software configuration operation are redirected to a remote disk file.
[0011] In an optional implementation manner, before determining the process identifier of the software configuration operation, the method further includes:
[0012] Determine the installation path of the third-party software in the desktop operating system;
[0013] In response to the executable file path and the installation path successfully matching, the process identifier of the software startup process is recorded.
[0014] In an optional implementation manner, before determining the third-party software corresponding to the target software name in the desktop operating system of the terminal device, the method further includes:
[0015] Get the registry, start menu and desktop shortcuts in the above desktop operating systems;
[0016] Determine the third-party software installed in the desktop operating system according to at least one of the registry, the start menu, and the desktop shortcut;
[0017] Uploading the software name of the third-party software to the server so that the server displays the software name on the operation interface of the desktop operating system;
[0018] In response to a selection operation on the software name displayed on the operation interface, the target software name is uploaded to the server.
[0019] In an optional implementation manner, determining the installation path of the third-party software in the desktop operating system includes:
[0020] According to the target software name of the third-party software, query at least one of a registry, a start menu, and a desktop shortcut in the desktop operating system to obtain a query result;
[0021] The installation path of the third-party software is determined based on the query result.
[0022] In an optional implementation manner, after redirecting the operation parameters of the software configuration operation to the remote disk file, the method further includes:
[0023] In response to the shutdown operation of the terminal device, the desktop operating system is restored to obtain a restored desktop operating system.
[0024] In an optional implementation manner, after redirecting the operation parameters of the software configuration operation to the remote disk file, the method further includes:
[0025] In response to the restarting operation of the terminal device, running the third-party software;
[0026] In response to a read operation on the configuration information of the third-party software, determining an operation parameter of the read operation in the third-party software;
[0027] The operation parameters of the above-mentioned read operation are redirected to the above-mentioned remote disk file to read the historical configuration information of the above-mentioned third-party software.
[0028] In an optional implementation manner, the above method further includes:
[0029] Acquiring a system disk operation performed by a user on the desktop operating system, wherein the system disk operation is used to represent a modification operation performed by the user on a third-party software in the system disk within a predetermined time period, wherein the modification operation includes at least one of the following: an installation operation and a removal operation;
[0030] The operation parameters of the system disk operation are redirected to the remote disk file, so that the operation parameters of the system disk operation are read into the desktop operating system when the terminal device is turned on.
[0031] On the other hand, the present application provides a software configuration storage processing device, the device comprising:
[0032] A first determination module is used to determine, in response to the received target software name, a third-party software corresponding to the target software name in the desktop operating system of the terminal device;
[0033] An acquisition module, configured to, in response to a software startup operation on a third-party software in the desktop operating system, acquire a process identifier and an executable file path of a software startup process corresponding to the software startup operation;
[0034] A second determining module is used to determine a process identifier of a software configuration operation on the third-party software in response to the software configuration operation on the third-party software, wherein the software configuration operation is a write operation on the configuration of the third-party software;
[0035] The redirection module is used to redirect the operation parameters of the software configuration operation to a remote disk file in response to a successful match between the process identifier of the software configuration operation and the process identifier of the startup process.
[0036] On the other hand, the present application provides an electronic device, comprising: a processor, and a memory connected to the processor; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory to implement any of the above methods.
[0037] On the other hand, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions, and when the computer-executable instructions are executed by a processor, they are used to implement any of the above methods.
[0038] On the other hand, the present application provides a computer program product, including a computer program, which implements any of the above methods when executed by a processor.
[0039] The software configuration saving processing method, device, electronic device and storage medium provided in the present application determine the third-party software corresponding to the target software name in the desktop operating system of the terminal device in response to the received target software name; in response to the software startup operation of the third-party software, obtain the process identifier and executable file path of the software startup process corresponding to the software startup operation; in response to the software configuration operation of the third-party software, determine the process identifier of the software configuration operation; in response to the successful match between the process identifier of the software configuration operation and the process identifier of the startup process, redirect the operation parameters of the software configuration operation to the remote disk file.
[0040] Through the embodiments of the present application, a simple and universal method is provided to determine the software configuration operations of the files or registries that need to be redirected, so that after the desktop system is restored and shut down, the software configuration information of the third-party software can be redirected to the remote disk file when it is started up next time. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0042] Figure 1It is a flowchart of a software configuration saving processing method provided in an embodiment of the present application;
[0043] Figure 2 It is a flowchart of an optional software configuration saving processing method provided in an embodiment of the present application;
[0044] Figure 3 It is a schematic diagram of an operation interface of an optional desktop operating system provided in an embodiment of the present application;
[0045] Figure 4 It is a flowchart of file redirection in an optional software configuration saving processing scenario provided in an embodiment of the present application;
[0046] Figure 5 It is a flowchart of a registry redirection in an optional software configuration saving processing scenario provided in an embodiment of the present application;
[0047] Figure 6 A structural block diagram of a software configuration storage processing device provided in an embodiment of the present application;
[0048] Figure 7 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
[0049] The above drawings have shown clear embodiments of the present application, which will be described in more detail later. These drawings and text descriptions are not intended to limit the scope of the present application in any way, but to illustrate the concept of the present application to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION
[0050] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.
[0051] First, the terms involved in this application are explained:
[0052] exe is the extension of executable program files in Windows operating system, which stands for executable file.
[0053] A process is an instance of a program running in a computer system, which includes a program counter, a stack, and a data area. A process is the basic unit for resource allocation and scheduling in an operating system.
[0054] JSON (JavaScript Object Notation) is a lightweight data exchange format. It is based on a subset of the js specification developed by the European Computer Manufacturers Association (ECMAScript) and uses a text format that is completely independent of the programming language to store and represent data.
[0055] Process monitoring software (Processmonitor). Generally speaking, Processmonitor is equivalent to the file monitor Filemon and the registry monitor Regmon. Filemon is specifically used to monitor any file operation process in the system, while Regmon is used to monitor the read and write operation process of the registry.
[0056] At present, in order to save the user's personalized configuration of the software when restoring the desktop system, the current practice is to write the file path and registry path of the software's personalized storage in a lightweight data exchange formula, that is, a configuration file in json format (JavaScript Object Notation, JS object notation), so that the personalized configuration information can be read after the file and registry filter driver is started.
[0057] When the user operates the software to modify the configuration and the software saves and writes the configuration to a file or registry, it will be captured by the file or registry filter driver and recognize that the path to be written is in the configuration file in json format, so it will be redirected to another disk.
[0058] The next time you start the computer, the system is restored to its original state. When the software is running and needs to read the configuration file, it will also be captured by the file or registry filter driver and recognize that the path to be read is in the json format configuration file, so it redirects it to another disk. In this way, the configuration data read by the software is the user's setting after the last startup, which realizes that the user's personalized configuration data is retained when restoring the desktop system.
[0059] However, to generate a configuration file in json format, you need to know in advance which file or registry path each software writes to when saving its configuration. To this end, the current practice is to use process monitoring software (Processmonitor) to capture all file and registry operations of the operating system during the software configuration saving period, and then gradually eliminate them to determine the possible file or registry path and write it into the configuration file in json format.
[0060] There are several shortcomings in the current approach:
[0061] 1. The workload is large and the technical threshold is high. In a few tens of seconds, Processmonitor will capture tens of thousands of records and exclude irrelevant records, which requires rich experience and patience. Generally, only R&D personnel can do this job. It takes an average of about 2 hours to find the save location of a software configuration.
[0062] 2. It needs to be captured when the software is running. For example, some software needs to be logged in and run in a specific environment. If it is copied to other environments and cannot run, you need to capture its configuration save path. If it cannot be done remotely (no need or permission to log in to the external network), you need to travel to the customer site.
[0063] 3. Not universal. For example, a piece of software needs to be crawled once. If the configuration save location changes after the software is upgraded, it needs to be crawled again. And because R&D is not familiar with the business software, it may not be able to run all the configuration operations again, resulting in possible omissions in the crawling path.
[0064] Therefore, it is necessary to find a simple and universal method to let the file and registry filter drivers know which file and registry related operations should be redirected.
[0065] To solve the above technical problems, there are currently several solutions:
[0066] Scenario 1:
[0067] The application layering solution in the prior art is to use files and registry filter drivers to redirect all changes made by users in the desktop system to another disk. The files and registry on this disk will be read first at the next startup to save the user's application configuration when restoring the desktop system.
[0068] This solution basically saves all changes made by Windows to the system disk to another disk, which brings several problems:
[0069] A. When Windows and security software are upgraded, some system files and drivers will also be saved to another disk. The next time you start the computer, the operating system and security software will be initialized earlier than the files and registry filter drivers, which means that the operating system and security software want to load their files but cannot find them, causing the computer to crash or freeze when it starts.
[0070] B. Too much irrelevant data is saved, affecting performance. If the administrator edits the original image, it may conflict with the saved data.
[0071] In fact, this solution comes before the existing json format configuration solution. It is precisely because this solution has problems that the json format configuration solution appears as its upgrade solution.
[0072] Scenario 2:
[0073] A method for continuously updating a virus database for instant desktop restoration: by configuring a folder for recording the virus database, saving file operations on the folder to another virtual disk, and loading the files on the virtual disk at the next startup, the antivirus software in the restored desktop system can read the latest virus database.
[0074] This solution does not solve the problem of finding out which directory the configuration file is written in. Moreover, the premise of this solution is self-developed software. For example, if you develop your own antivirus software, it is easy to know which directory its virus database is stored in.
[0075] Solution 3:
[0076] One personalized configuration retention solution is to have the administrator turn on recording, then operate the software to modify the configuration, and finally turn off recording. During the recording, all changes made by Windows to files and registries will be redirected to the personalized data disk. When the end user turns on the computer, if the personalized data disk is merged into the system disk, the configuration changes made by the administrator will be reflected in the end user's Windows.
[0077] This solution has a low threshold for operation and can be used by ordinary administrators. It reduces the possibility of other operations on Windows being recorded by minimizing the recording time, but it cannot completely eliminate it. If the system is being patched or other programs are being silently upgraded during the recording, the recorded personalized data disk may cause system instability.
[0078] For general software configuration, there is no need to use this solution, because it is easier for administrators to modify software configuration by editing the image. This solution is generally used in scenarios where software activation (activation codes vary with hardware), which means that administrators have to record as many times as there are terminals, which is a lot of work.
[0079] Solution 4:
[0080] In order to save the user's configuration of third-party software on the restored desktop system, the snapshot function is introduced: after the user modifies the software configuration, a snapshot is set, and the snapshot is loaded the next time the computer is turned on, thus saving the software configuration. This snapshot function sacrifices the advantages of the restored desktop system and is more like a personalized desktop system from a technical point of view. In addition, the existing solution is very expensive to save the configuration of third-party software on the restored desktop system.
[0081] In order to solve this problem, the embodiment of the present application provides a solution, so that the file and registry filter driver does not need to be configured through json, and can accurately determine which files or registry operations need to be redirected. In this way, there is no need to use Processmonitor to find the path where the third-party software configuration is saved.
[0082] In order to facilitate understanding of the specific implementation methods in the embodiments of the present application, in addition to the above-mentioned explanations of terms, the embodiments of the present application also provide the following content to explain some technical concepts in the art that appear in or are involved in the embodiments of the present application:
[0083] 1. Restore the desktop system
[0084] The original image file of the virtual desktop system stores the system disk data of the virtual desktop system. After entering the virtual desktop system, the system disk data will change with the user's operation. After the desktop system is shut down, a differential file is generated for the external image file. The differential file records the changes to the system disk during this startup. If the differential file is deleted, the system disk will be restored to the state of the last startup the next time the computer is started, and all the operations performed by the user on the system disk during the last startup will disappear. Such a desktop system is called a restored desktop system.
[0085] For maintenance personnel, restoring the desktop system has two major benefits: A. By editing the original image, such as installing a new software or changing the Windows configuration, it can take effect on all terminals using this image. B. Restoring to the original state each time the computer is turned on can prevent terminal users from damaging the system through operations, and the maintenance workload is small.
[0086] Disadvantages of restoring the desktop system: The personalized configuration of the end user's software will also be restored and disappear. These software configurations, such as input methods, network disks, communication software login records, browser favorites, and production software configuration options, will greatly affect the user's work efficiency if they disappear every time the computer is turned on.
[0087] 2. File and registry filter driver
[0088] The filter driver uses the interface provided by Windows to capture the read and write operations of programs in Windows on files and registry. It can modify the parameters of the read and write operations to point the read and write operations to another place (called redirection). This allows the configuration files / registry that the application reads and writes to be saved on another dedicated disk; when the system disk is restored after the second boot, the application can still read the configuration files / registry that were written on the last boot.
[0089] 3. Process start\exit monitoring driver
[0090] The driver uses the interface provided by Windows to register a callback function. Each process in Windows starts or exits, which triggers the callback function. The parameters passed in by the callback function can be used to know the id and exe path of the process.
[0091] 4. Extract software name and installation path
[0092] By traversing at least four places in the registry, such as HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall, you can get a list of third-party software names (corresponding to the software list under Control Panel\Programs), and then extract the software installation path through the InstallPath, UninstallString and other information under these software registry paths.
[0093] For some software that does not record information in the registry, you can find out the folder path where the program is located through the start menu or desktop shortcut, and use the start menu directory or shortcut name as the software name.
[0094] The software configuration preservation processing method provided by the present application is intended to solve the above technical problems of the prior art. The technical solution of the present application and how the technical solution of the present application solves the above technical problems are described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.
[0095] Figure 1 is a flowchart of a software configuration saving processing method provided in an embodiment of the present application, such as Figure 1 As shown, the method includes:
[0096] S101, in response to the received target software name, determining the third-party software corresponding to the target software name in the desktop operating system of the terminal device.
[0097] S102, in response to a software startup operation on a third-party software, obtaining a process identifier and an executable file path of a software startup process corresponding to the software startup operation.
[0098] S103, in response to the software configuration operation on the third-party software, determining a process identifier of the software configuration operation.
[0099] S104: In response to a successful match between the process identifier of the software configuration operation and the process identifier of the startup process, redirecting the operation parameters of the software configuration operation to a remote disk file.
[0100] Optionally, the target software name is the software name of the third-party software whose configuration needs to be saved, which is pre-selected by the administrator or user of the terminal device.
[0101] Optionally, the software configuration operation is a write operation on the configuration of the third-party software, for example, including a new creation operation and / or a modification operation.
[0102] Optionally, the creation operation may include but not limited to the creation of a registry, the creation of a file, etc. The registry (also called a log file) is an important database in Windows for storing system and application settings. The file may be any type of file, for example, including but not limited to Word files, PDF files, etc.
[0103] An embodiment of the present application provides a software configuration saving processing method, which can implement configuration modification of Web target software in the Windows desktop operating system of a terminal device, and save the modified configuration information in a remote disk file, thereby realizing centralized management and backup of software configuration information and improving the security and reliability of software configuration information.
[0104] The software configuration saving processing method provided in the embodiment of the present application first determines the third-party software corresponding to the target software name in the desktop operating system of the terminal device in response to the received target software name, thereby realizing automatic identification and matching of the third-party software installed on the terminal device and improving the versatility and adaptability of the software configuration saving processing solution.
[0105] In this way, no matter which third-party software is installed on the terminal device, unified and standardized configuration modifications can be made through the target software name without manual intervention or additional settings.
[0106] Afterwards, by responding to the software startup operation on the above-mentioned third-party software, the process identifier and executable file path of the software startup process corresponding to the above-mentioned software startup operation are obtained, and by responding to the software configuration operation on the above-mentioned third-party software, the process identifier of the above-mentioned software configuration operation is determined, thereby achieving effective capture of the software configuration operation performed on the terminal device and improving the accuracy and effectiveness of the software configuration saving processing method.
[0107] In this way, it can be ensured that the configuration modification is triggered only when the target software is started and a new operation is performed, and the modified configuration information is redirected to the remote disk file, avoiding erroneous operations or redundant operations.
[0108] The embodiment of the present application can not only realize the configuration modification of the target software in the desktop operating system of the terminal device, but also save the modified configuration information in the remote disk file, thereby realizing the centralized management and backup of the software configuration information, and improving the security and reliability of the software configuration information. In this way, even if the terminal device fails or is lost, it will not affect the integrity and availability of the software configuration information, nor will it cause the leakage or tampering of the software configuration information.
[0109] In one example, an embodiment of the present application only needs to specify which directories' exe's write configuration operations need to be redirected, and determine which process ID's write configuration operations need to be redirected, so that when these process IDs perform file and registry operations, the file and registry paths are redirected to the remote server, thereby restoring the software configuration retention of the desktop system.
[0110] In this way, there is no need to find out in advance which path the executable files exe of these third-party software will write the configuration to, and you only need to specify the directory where the exe is located. The solution of specifying the directory where the exe is located saves the use of the third-party software Processmonitor, and there is no situation where some configurations are missed (when using Processmonitor to capture, the technicians may not have operated all configuration scenarios). It can also support the change of the configuration file location after the third-party software is upgraded.
[0111] In the embodiment of the present application, the software name and the software installation path can be matched through the correspondence between the registry, start menu, desktop shortcut and software name. For example, "C:\Program Files(x86)\Tent\Chat" can be found through the software "Instant Messaging Software 2", so that by configuring the software name "Instant Messaging Software 2", it can be configured to "the directory where the executable file exe is located C:\Program Files(x86)\Tent\Chat", thereby reducing the administrator's understanding cost and improving the administrator's efficiency in configuring policies.
[0112] The software configuration saving processing method provided in the embodiment of the present application specifically relates to a method of using the file filtering driver Minifilter, the registry operation filtering driver, and the process startup\exit monitoring driver under the Windows desktop operating system (restore desktop system) to accurately read and write configuration operations on the files and registry of a certain process, and to perform redirection operations, that is, a method of extracting the software name and installation directory of the software by using the information left by the software in the registry, start menu, and desktop shortcuts in Windows. As long as the target software name is determined, the read and write configuration operations performed by the executable file exe process in the software installation directory can be identified. Therefore, redirection operations can be performed based on the software name, so that the program configuration of certain processes can also be saved in the restored desktop system.
[0113] In an optional implementation manner, before determining the process identifier of the software configuration operation, the method further includes:
[0114] Determine the installation path of the third-party software in the desktop operating system.
[0115] In response to the executable file path and the installation path successfully matching, the process identifier of the software startup process is recorded.
[0116] In the embodiment of the present application, by recording the process identifier of the software startup process in response to the successful matching of the executable file path and the installation path, the target software started on the terminal device is effectively identified and recorded, and the accuracy and security of the software configuration saving processing method are improved. In this way, it is possible to avoid mistaking the startup process of non-target software for the startup process of the target software, thereby avoiding erroneous or invalid configuration modifications to the non-target software.
[0117] In this way, when multiple versions or types of the same or similar third-party software are installed on the terminal device, the specific third-party software to be configured can be determined based on the target software name, and the modified configuration information can be saved in a remote disk file, thereby realizing multi-version or multi-type management and differentiation of software configuration information.
[0118] In addition, when running multiple third-party software on a terminal device and performing configuration modification operations at the same time, the new operation parameters to be redirected to the server's remote disk file can be determined based on the different process identifiers corresponding to different third-party software, and the modified configuration information can be saved in the server's remote disk file, thereby realizing multi-task management and synchronization of software configuration information.
[0119] In an optional implementation, Figure 2is a flowchart of an optional software configuration saving processing method provided in an embodiment of the present application, such as Figure 2 As shown, before determining the third-party software corresponding to the target software name in the desktop operating system of the terminal device, the method further includes:
[0120] S201, obtaining a registry, a start menu and a desktop shortcut in the above desktop operating system.
[0121] S202: Determine the third-party software installed in the desktop operating system according to at least one of the registry, the start menu, and the desktop shortcut.
[0122] S203, uploading the software name of the third-party software to the server, so that the server displays the software name on the operation interface of the desktop operating system.
[0123] S204, in response to a selection operation on the software name displayed on the operation interface, uploading the target software name to the server.
[0124] like Figure 3 The schematic diagram of an optional desktop operating system operation interface shown in the figure allows the administrator to determine which third-party software configuration contents to save by checking the software names of the third-party software, and the operation of finding the location where the write configuration of the third-party software is saved is automatically completed within Windows and is not presented on the system interface.
[0125] For example, Figure 3 The left window of the operation interface shown automatically displays a list of software installed in Windows. The administrator can select any third-party software based on multiple third-party software displayed in the software list, and move the selected third-party software to the white list in the right window of the operation interface. The file and registry filter driver in Windows can redirect the configuration of the third-party software in the white list.
[0126] In the above embodiment, by obtaining the registry, start menu and desktop shortcut in the above desktop operating system, the above third-party software installed in the above desktop operating system is determined according to at least one of the above registry, the above start menu and the above desktop shortcut. This can not only comprehensively and accurately detect and identify the third-party software already on the terminal device, but also enhance the intelligence and convenience of the software configuration saving processing method.
[0127] In this way, when a large amount of third-party software is installed on the terminal device and some or all of them need to be configured and modified, the tedious steps of manually searching or entering the third-party software name or path can be omitted. The list of available third-party software can be directly sent from the server and displayed on the operation interface.
[0128] Furthermore, in the embodiment of the present application, by uploading the software name of the third-party software to the server, the server displays the software name on the operation interface of the desktop operating system, which can intuitively and friendly display the third-party software that can be configured and modified on the terminal device, thereby improving the user experience and satisfaction of the software configuration saving processing method. For example, when multiple languages or versions or types of the same or similar or different but similar or related functions are installed on the terminal device, the third-party software list with icons or other identification information and other auxiliary information can be distinguished or selected according to the list sent by the server and displayed on the operation interface.
[0129] In addition, the embodiment of the present application determines the above-mentioned target software name by responding to the selection operation of the software name displayed on the above-mentioned operation interface, and can flexibly and accurately select the third-party software to be configured and modified on the terminal device, thereby improving the flexibility and accuracy of the software configuration saving processing method.
[0130] It is understandable that if multiple third-party software are installed on the terminal device and different or the same configuration modifications need to be made to some or all of them, you can select one or more target software names by clicking or dragging, etc. according to actual needs, and upload them to the server, thereby triggering the corresponding configuration modification operation.
[0131] When restoring the desktop system, if the third-party software has written a configuration, it will disappear after shutting down. Therefore, if the personalized configuration software needs to be retained, the administrator needs to check the software name of the third-party software on the operation interface to retain its configuration information.
[0132] In addition, as an optional embodiment, for browser software, since the administrator uniformly sets the favorites when making the image, if this can meet the needs, then there is no need to check it. If the user wants to make a browser that can log in to his own account and collect his own web pages, because each user's account and favorite web pages are different, then the administrator needs to check this browser software.
[0133] In an optional implementation manner, determining the installation path of the third-party software in the desktop operating system includes:
[0134] According to the target software name of the third-party software, query at least one of a registry, a start menu, and a desktop shortcut in the desktop operating system to obtain a query result;
[0135] The installation path of the third-party software is determined based on the query result.
[0136] Optionally, in an embodiment of the present application, at least one or more of the above-mentioned registry, the above-mentioned start menu, and the above-mentioned desktop shortcuts are queried according to the target software name of the above-mentioned third-party software to determine the installation path of the above-mentioned third-party software. For example, when multiple software with the same or similar functions or uses but different versions or types or sources are installed on the terminal device, the target software name with auxiliary information such as version, type or source, which is sent by the server and displayed on the operation interface, can be distinguished or selected, and the configuration modification can be performed according to the corresponding installation path queried.
[0137] The above implementation can achieve fast and accurate acquisition of the installation location of the third-party software installed on the terminal device, improving the efficiency and reliability of the software configuration saving processing method. In this way, when modifying the configuration, the executable file or configuration file of the third-party software can be directly located according to the obtained installation path, without the need for complex and time-consuming search or traversal operations.
[0138] In addition, there is an optional embodiment. In the case where multiple software with different functions or uses but the same or similar data formats or interfaces are installed on a terminal device, the target software can be distinguished or selected based on the name of the target software with auxiliary information such as the data format or interface sent by the server and displayed on the operation interface, and the configuration can be modified based on the corresponding installation path queried.
[0139] In an optional implementation manner, after redirecting the operation parameters of the software configuration operation to the remote disk file, the method further includes:
[0140] In response to the shutdown operation of the terminal device, the desktop operating system is restored to obtain a restored desktop operating system.
[0141] Optionally, in an embodiment of the present application, by restoring the above-mentioned desktop operating system in response to a shutdown operation of the above-mentioned terminal device, a restored desktop operating system is obtained, and the software configuration information on the terminal device can be temporarily modified and restored. In this way, when the software configuration is modified on the terminal device, it will not affect the original software configuration information, nor will it cause conflicts or confusion in the software configuration information, and it can also protect the user's privacy and data security.
[0142] For example, in an optional implementation scenario, when using public or shared third-party software on a terminal device, the third-party software that needs to be modified can be selected according to the target software name, and the modified configuration information can be saved in a remote disk file on the server. After use, the shutdown operation will trigger the desktop operating system's restore process, so that the third-party software on the terminal device is restored to its original state, avoiding affecting other users or leaking personal information.
[0143] For another example, there is another optional implementation scenario. When using third-party software with the same or similar functions or uses but different configuration requirements in different versions, types, or sources, etc. on a terminal device, the third-party software that needs to be modified can be selected according to the target software name, and the modified configuration information can be saved in a remote disk file on the server. After use, the shutdown operation will trigger the desktop operating system's restore process, so that the third-party software on the terminal device is restored to its initial state, avoiding impact or errors on other third-party software with the same or similar functions or uses but different configuration requirements in other versions, types, or sources, etc.
[0144] For another example, there is another optional implementation scenario. When multiple different functions or uses are used on a terminal device but have the same or similar data format or interface, etc., and data exchange or collaborative work is required, the third-party software that needs to be modified in configuration to achieve data exchange or collaborative work can be selected according to the target software name, and the modified configuration information is saved in the remote disk file of the server. After use, the shutdown operation will trigger the desktop operating system's restore process, so that the third-party software on the terminal device is restored to its original state, avoiding impact or errors on third-party software with other functions or uses.
[0145] In an optional implementation manner, after redirecting the operation parameters of the software configuration operation to the remote disk file, the method further includes:
[0146] In response to the restarting operation of the terminal device, the third-party software is run.
[0147] In response to a read operation on the configuration information of the third-party software, an operation parameter of the read operation in the third-party software is determined.
[0148] The operation parameters of the above-mentioned read operation are redirected to the above-mentioned remote disk file to read the historical configuration information of the above-mentioned third-party software.
[0149] In an embodiment of the present application, the above-mentioned optional implementation method redirects the operating parameters of the above-mentioned software configuration operation to the above-mentioned remote disk file, and after the terminal device is shut down, in response to the above-mentioned terminal device being turned on again, runs the above-mentioned third-party software, and in response to the read operation of the configuration information of the above-mentioned third-party software, determines the operating parameters of the read operation in the above-mentioned third-party software, and redirects the operating parameters of the above-mentioned read operation to the above-mentioned remote disk file to read the historical configuration information of the above-mentioned third-party software, thereby realizing persistent storage and recovery of the software configuration information on the terminal device.
[0150] For example, after modifying the software configuration on the terminal device, the modified configuration information will not be lost or damaged even if it is turned off or powered off, but will be saved in the remote disk file of the server. When you start the computer again and run the third-party software, you can read the modified configuration information from the remote disk file of the server and apply it to the third-party software without having to modify the configuration again.
[0151] In another example, when multiple different functions or uses are used on a terminal device but are related or dependent on each other and data exchange or collaborative work is required, the target software name with auxiliary information such as association or dependency, which is sent by the server and displayed on the operation interface, can be distinguished or selected, and the configuration can be modified according to the corresponding installation path queried, and the modified configuration information can be saved in the remote disk file of the server. When the computer is turned on again and the third-party software is run, the modified configuration information can be read from the remote disk file of the server and applied to the third-party software, so that the consistency and synchronization of the software configuration information required for data exchange or collaborative work can be achieved.
[0152] There is another optional example. When data analysis or processing is required on a terminal device with multiple different functions or uses but the same or similar data formats or interfaces, the target software name with auxiliary information such as data formats or interfaces issued by the server and displayed on the operation interface can be distinguished or selected, and the configuration can be modified according to the corresponding installation path queried, and the modified configuration information can be saved in the remote disk file of the server. When the computer is turned on again and the third-party software is run, the modified configuration information can be read from the remote disk file of the server and applied to the third-party software. In this way, the persistence and reusability of the software configuration information required for data analysis or processing can be improved.
[0153] In the embodiments of the present application, it can be understood that, in one example, when a terminal device uses multiple different functions or uses but has the same or similar functional modules or components and needs to perform functional expansion or optimization, it can be distinguished or selected according to the target software name with auxiliary information such as functional modules or components issued by the server and displayed on the operation interface, and the configuration can be modified according to the corresponding installation path queried, and the modified configuration information can be saved in the remote disk file of the server. When the computer is turned on again and the third-party software is run, the modified configuration information can be read from the remote disk file of the server and applied to the third-party software, thereby realizing the scalability and optimizability of the software configuration information required for functional expansion or optimization.
[0154] The above embodiment is specifically described below using an optional implementation method and schematic diagram to better understand the software configuration preservation processing method provided in the embodiment of the present application, the technical problems solved, and the technical effects achieved.
[0155] like Figure 4 As shown, an optional schematic diagram of redirecting the creation and modification operations of files is shown. The application module determines which third-party software is installed on Windows by scanning the Windows registry, the start menu, and desktop shortcuts, and then uploads the software names of the third-party software to the Web server. The Web server displays the software list on the operation interface to facilitate the administrator to check which third-party software configurations need to be saved.
[0156] In response to the target software name checked by the administrator, the installation directory of the third-party software in Windows is found according to the target software name, so that the administrator does not need to worry about how many exe files there are under this software, in which folders they are saved, etc.
[0157] Moreover, after the executable file exe of the third-party software is run, the process monitoring driver finds that it is in the installation directory of the software selected by the administrator, and saves its process id. When the file filter driver and the registry filter driver capture the access of this process id to the file and registry, they perform redirection operations.
[0158] For example, the web server sends the target software name selected by the administrator, such as "Instant Messaging Software 2". The application determines the path of the local computer where the third-party software is installed by searching the registry, start menu, and desktop shortcuts, for example, "C:\Program Files(x86)\Tent\Chat".
[0159] After that, when the user opens the software, the process monitoring driver module receives a message and learns the process ID of the startup program and the executable file exe path, such as "C:\Program Files(x86)\Tent\Chat\Chat.exe". If the executable file path matches the above installation path, it is determined that the running configuration of this exe is to be saved, and the process ID of the software startup process is recorded.
[0160] In such Figure 4 The file filter driver module shown in Figure 5 The registry filter driver module shown, in response to an administrator or user operating a third-party software to modify the software configuration of the third-party software, the exe program will write configuration information to the local configuration file, local database, and registry. The file filter driver and the registry filter driver will intercept the write operation in advance, and after comparison, it is found that the process id performing the write operation is the process id recorded in the above steps, and the parameters of the write operation (target file / registry address) will be redirected to the remote end, so that the configuration information is saved on the remote disk.
[0161] Finally, we still use Figure 4 The file configuration processing scheme shown, or as Figure 5 The registry configuration processing scheme shown responds to the shutdown operation of the terminal device operated by the user. When the virtual desktop is shut down after running for a period of time, a differential file will be generated in addition to the original system image file. The differential file records the file and registry modifications after the local startup. If the above differential file is deleted and the virtual desktop is turned on again, the data of the desktop system at this time is the same as the first startup, so it is called a restored desktop system (restored desktop system). In the embodiment of the present application, in response to the terminal device being turned on again, the last third-party software is run. The third-party software reads its own configuration information. This read operation is intercepted by the file filter driver module or the registry filter driver module. After querying and determining that there are files / registries to be read on the remote disk, the parameters of the read operation are changed to remote ones, so that the third-party software can read the configuration information written by it at the last startup.
[0162] In an optional embodiment, the above method further includes:
[0163] Acquiring a system disk operation performed by a user on the desktop operating system, wherein the system disk operation is used to represent a modification operation performed by the user on a third-party software in the system disk within a predetermined time period, wherein the modification operation includes at least one of the following: an installation operation and a removal operation;
[0164] The operation parameters of the system disk operation are redirected to the remote disk file, so that the operation parameters of the system disk operation are read into the desktop operating system when the terminal device is turned on.
[0165] In an embodiment of the present application, administrators and other users can be allowed to edit the original image on the server and install third-party software required for the business. After that, all changes to the system disk on the desktop operating system within a period of time can redirect the operating parameters of the system disk operation to a remote disk file (that is, an application layered disk with one file in essence), so that the operating parameters of the system disk operation can be read into the desktop operating system when the above-mentioned terminal device is turned on.
[0166] In this way, the application layered disk can be merged with the system disk when the administrator controls the terminal device to start up. Then the user will see that the third-party software previously installed by the administrator in the desktop operating system is added to Windows. In this way, the administrator can use the above solution to flexibly install and / or remove business software.
[0167] When the administrator edits the image to install business software or records the software configuration, the system or other software may be silently upgraded, and these upgrade operations will also be recorded. If only half of them are recorded, it may cause instability in the end user's system. To solve the above-mentioned "excessive recording" problem, the software configuration storage processing solution provided by this application can be used.
[0168] In addition, the embodiment of the present application provides a personalized configuration retention solution. When it is detected that the administrator or other users edit the original image on the server, only the files and registry changes generated by the installation package process (and its child processes) are saved, and only the files and registry changes generated by the exe directory where the third-party software operated by the administrator are located are recorded. In this way, the problem of "excessive recording" can be solved.
[0169] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0170] According to one or more embodiments of the present application, a software configuration storage processing device embodiment is provided. Figure 6 A structural block diagram of a software configuration storage processing device provided in an embodiment of the present application, such as Figure 6 As shown, the above device comprises:
[0171] The first determination module 601 is used to determine the third-party software corresponding to the target software name in the desktop operating system of the terminal device in response to the received target software name.
[0172] The acquisition module 602 is used to obtain, in response to a software startup operation on the third-party software, a process identifier and an executable file path of a software startup process corresponding to the software startup operation.
[0173] The second determination module 603 is used to determine the process identifier of the software configuration operation in response to the software configuration operation on the third-party software, wherein the software configuration operation is a write operation on the configuration of the third-party software.
[0174] The redirection module 604 is used to redirect the operation parameters of the software configuration operation to the remote disk file in response to the process identifier of the software configuration operation successfully matching the process identifier of the startup process.
[0175] According to one or more embodiments of the present application, the above device further includes:
[0176] A path determination module, used to determine the installation path of the third-party software in the desktop operating system;
[0177] The recording module is used to record the process identifier of the software startup process in response to the executable file path and the installation path successfully matching each other.
[0178] According to one or more embodiments of the present application, the above device further includes:
[0179] An information acquisition module, used to obtain the registry, start menu and desktop shortcuts in the above desktop operating system;
[0180] A third determination module, configured to determine the third-party software installed in the desktop operating system according to at least one of the registry, the start menu, and the desktop shortcut;
[0181] A first uploading module, used to upload the software name of the third-party software to the server, so that the server displays the software name on the operation interface of the desktop operating system;
[0182] The second uploading module is used to upload the target software name to the server in response to a selection operation on the software name displayed on the operation interface.
[0183] According to one or more embodiments of the present application, the path determination module includes:
[0184] A query unit, configured to query at least one of a registry, a start menu, and a desktop shortcut in the desktop operating system according to the target software name of the third-party software to obtain a query result;
[0185] The determination unit is used to determine the installation path of the third-party software based on the query result.
[0186] According to one or more embodiments of the present application, the above device further includes:
[0187] The restoration module is used to restore the desktop operating system in response to the shutdown operation of the terminal device to obtain a restored desktop operating system.
[0188] According to one or more embodiments of the present application, the above device further includes:
[0189] A running module, used for running the third-party software in response to the restart operation of the terminal device;
[0190] A fourth determination module, configured to determine, in response to a read operation on the configuration information of the third-party software, an operation parameter of the read operation in the third-party software;
[0191] The reading module is used to redirect the operation parameters of the above-mentioned reading operation to the above-mentioned remote disk file to read the historical configuration information of the above-mentioned third-party software.
[0192] In an exemplary embodiment, the present application also provides an electronic device, including: a processor, and a memory connected to the processor;
[0193] The memory stores computer-executable instructions;
[0194] The processor executes the computer-executable instructions stored in the memory to implement any of the above methods.
[0195] In an exemplary embodiment, the embodiment of the present application further provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement any of the above methods.
[0196] In an exemplary embodiment, the present application also provides a computer program product, including a computer program, which implements any of the above methods when executed by a processor.
[0197] In order to implement the above embodiment, the present application embodiment also provides an electronic device. Figure 7, which shows a schematic diagram of the structure of an electronic device 700 suitable for implementing the embodiment of the present application, and the electronic device 700 may be a terminal device or a server. The terminal device may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, message transceiver devices, game consoles, medical equipment, fitness equipment, personal digital assistants (PDAs), tablet computers (Portable Android Devices, PADs), portable multimedia players (PMPs), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 7 The electronic device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0198] like Figure 7 As shown, the electronic device 700 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage device 708 to a random access memory (RAM) 703. Various programs and data required for the operation of the electronic device 700 are also stored in the RAM 703. The processing device 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.
[0199] Typically, the following devices may be connected to the I / O interface 705: input devices 706 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; output devices 707 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 708 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 709. The communication devices 709 may allow the electronic device 700 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 7 The electronic device 700 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.
[0200] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 709, or installed from the storage device 708, or installed from the ROM 702. When the computer program is executed by the processing device 701, the above-mentioned functions defined in the method of the embodiment of the present application are executed.
[0201] It should be noted that the computer-readable medium mentioned above in the present application may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution device or device. In the present application, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution device or device. The program code contained on the computer readable medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
[0202] The computer-readable medium may be included in the electronic device, or may exist independently without being incorporated into the electronic device.
[0203] The computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device executes the method shown in the above embodiment.
[0204] The computer program code for performing the operation of the present application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on the remote computer, or entirely on the remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (e.g., using an Internet service provider to connect through the Internet).
[0205] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the method and computer program product according to various embodiments of the present application. In this regard, each box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0206] The units involved in the embodiments described in the present application may be implemented by software or hardware. The name of the unit does not limit the unit itself in some cases. For example, the first acquisition unit may also be described as a "unit for acquiring at least two Internet Protocol addresses".
[0207] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.
[0208] In the context of the present application, a machine-readable medium may be a tangible medium that may contain or store a program for use by an instruction execution device or device or used in combination with an instruction execution device or device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor devices or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0209] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the invention disclosed herein. The present application is intended to cover any modification, use or adaptation of the present application, which follows the general principles of the present application and includes common knowledge or customary techniques in the art that are not disclosed in the present application. The specification and examples are intended to be exemplary only, and the true scope and spirit of the present application are indicated by the following claims.
[0210] It should be understood that the present application is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.
Claims
1. A software configuration saving processing method, characterized in that: The method comprises: In response to the received target software name, determining a third-party software corresponding to the target software name in the desktop operating system of the terminal device; In response to a software startup operation on the third-party software, obtaining a process identifier and an executable file path of a software startup process corresponding to the software startup operation; In response to a software configuration operation on the third-party software, determining a process identifier of the software configuration operation, wherein the software configuration operation is a write operation on the configuration of the third-party software; In response to a successful match between the process identifier of the software configuration operation and the process identifier of the startup process, the operation parameters of the software configuration operation are redirected to a remote disk file.
2. The method according to claim 1, characterized in that Before determining the process identifier of the software configuration operation, the method further includes: Determine the installation path of the third-party software in the desktop operating system; In response to the executable file path and the installation path successfully matching, a process identifier of the software startup process is recorded.
3. The method according to claim 1, characterized in that Before determining the third-party software corresponding to the target software name in the desktop operating system of the terminal device, the method further includes: Obtaining a registry, a start menu, and desktop shortcuts in the desktop operating system; Determining the third-party software installed in the desktop operating system according to at least one of the registry, the start menu, and the desktop shortcut; Uploading the software name of the third-party software to the server so that the server displays the software name on the operation interface of the desktop operating system; In response to a selection operation on a software name displayed on the operation interface, the target software name is uploaded to the server.
4. The method according to claim 2, characterized in that: Determining the installation path of the third-party software in the desktop operating system includes: According to the target software name of the third-party software, query at least one of a registry, a start menu, and a desktop shortcut in the desktop operating system to obtain a query result; The installation path of the third-party software is determined based on the query result.
5. The method according to any one of claims 1 to 4, characterized in that: After redirecting the operation parameters of the software configuration operation to the remote disk file, the method further includes: In response to a shutdown operation of the terminal device, the desktop operating system is restored to obtain a restored desktop operating system.
6. The method according to any one of claims 1 to 4, characterized in that After redirecting the operation parameters of the software configuration operation to the remote disk file, the method further includes: In response to a restart operation of the terminal device, running the third-party software; In response to a read operation on the configuration information of the third-party software, determining an operation parameter of the read operation in the third-party software; The operation parameters of the read operation are redirected to the remote disk file to read the historical configuration information of the third-party software.
7. The method according to any one of claims 1 to 4, characterized in that The method further comprises: Acquiring a system disk operation performed by a user on the desktop operating system, wherein the system disk operation is used to represent a modification operation performed by the user on a third-party software in the system disk within a predetermined time period, wherein the modification operation includes at least one of the following: an installation operation and a removal operation; The operation parameters of the system disk operation are redirected to the remote disk file, so that the operation parameters of the system disk operation are read into the desktop operating system when the terminal device is turned on.
8. A software configuration storage processing device, characterized in that: The device comprises: A first determination module is used to determine, in response to the received target software name, a third-party software corresponding to the target software name in the desktop operating system of the terminal device; An acquisition module, configured to, in response to a software startup operation on the third-party software, acquire a process identifier and an executable file path of a software startup process corresponding to the software startup operation; a second determining module, configured to determine a process identifier of a software configuration operation on the third-party software in response to the software configuration operation on the third-party software, wherein the software configuration operation is a write operation on the configuration of the third-party software; The redirection module is used to redirect the operation parameters of the software configuration operation to a remote disk file in response to a successful match between the process identifier of the software configuration operation and the process identifier of the startup process.
9. An electronic device, characterized in that: include: A processor, and a memory connected to the processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 7 when executed by a processor.