CN113254101B - Data processing method and device, electronic equipment and storage medium - Google Patents

Data processing method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN113254101B
CN113254101B CN202110587147.5A CN202110587147A CN113254101B CN 113254101 B CN113254101 B CN 113254101B CN 202110587147 A CN202110587147 A CN 202110587147A CN 113254101 B CN113254101 B CN 113254101B
Authority
CN
China
Prior art keywords
window
identification
main
monitored
dynamic link
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.)
Active
Application number
CN202110587147.5A
Other languages
Chinese (zh)
Other versions
CN113254101A (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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202110587147.5A priority Critical patent/CN113254101B/en
Publication of CN113254101A publication Critical patent/CN113254101A/en
Application granted granted Critical
Publication of CN113254101B publication Critical patent/CN113254101B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications

Abstract

The application discloses a data processing method and device, electronic equipment and a storage medium. The method comprises the following steps: when a first process is monitored to be established, injecting a target dynamic link library into the first process, and transmitting distinguishing attribute information of the first process into the target dynamic link library; the target dynamic link library judges whether a window started by the first process meets a first condition, and the window meeting the first condition is used as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; and adding an identification window to the main window according to the target marking strategy.

Description

Data processing method and device, electronic equipment and storage medium
Technical Field
The present application relates to the field of computer technologies, and in particular, to a data processing method and apparatus, an electronic device, and a storage medium.
Background
In the related art, in order to distinguish and identify windows, an identification mark may be added to the windows. However, the added identification mark may affect the operation of the window by the user.
Disclosure of Invention
In order to solve the related technical problems, embodiments of the present application provide a data processing method, an apparatus, an electronic device, and a storage medium.
The technical scheme of the embodiment of the application is realized as follows:
the embodiment of the application provides a data processing method, which comprises the following steps:
when a first process is monitored to be established, injecting a target dynamic link library into the first process, and transmitting distinguishing attribute information of the first process into the target dynamic link library;
the target dynamic link library judges whether a window started by the first process meets a first condition, and the window meeting the first condition is used as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy; wherein the content of the first and second substances,
the first condition includes at least one of:
the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window;
the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button;
the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button.
In the above scheme, when it is monitored that the first process is created, injecting a target dynamic link library into the first process includes:
and when monitoring that the first process is established, the monitoring process of the driving layer injects a target dynamic link library into the first process.
In the above scheme, the monitoring process is specifically a process creation callback function.
In the foregoing solution, the method further includes:
and the target dynamic link library monitors a window creating event and a window displaying event in the first process through an event monitoring mechanism and determines a window started by the first process.
In the above solution, the adding an identifier window to the main window according to the target mark policy includes:
and when the target dynamic link library determines that the main window is not processed, modifying the window callback function of the main window, and adding the identification window to the main window through the modified window callback function.
In the foregoing solution, the adding an identifier window to the main window through the modified window callback function includes:
monitoring an operation event aiming at the main window through the modified window callback function; and executing corresponding operation on the identification window according to the monitored operation event so as to dynamically adjust the display mode of the identification window along with the change of the display state of the main window.
In the above scheme, the performing, according to the monitored operation event, a corresponding operation on the identification window includes at least one of:
when a first operation event for displaying the main window in a full screen mode is monitored, configuring the identification window into a window which is transmitted through messages, can not be activated, is layered and does not occupy a focus;
when a second operation event for enabling the main window to be displayed in a non-full screen mode is monitored, configuring the identification window into a window which can capture messages, cannot be activated and does not preempt a focus, and moving the identification window to the outside of the main window for displaying;
when a third operation event for moving the main window is monitored, moving the identification window according to the moving track of the main window;
hiding the identification window when a fourth operation event for hiding the main window is monitored;
and when a fifth operation event for displaying the main window is monitored, displaying the identification window.
In the above solution, the performing, according to the monitored operation event, a corresponding operation on the identifier window includes:
when a sixth operation event for switching the main window from an inactivated state to an activated state is monitored, displaying the identification window;
and hiding the identification window when a seventh operation event for switching the main window from the activated state to the inactivated state is monitored.
In the above solution, the displaying the identification window includes:
fading in animation to display the identification window;
the hiding the identification window comprises:
the fading animation hides the identification window.
In the above solution, the identification window includes a first identification window and a second identification window; the displaying the identification window includes:
and displaying the first identification window, and gradually drawing in and out to present the second identification window.
An embodiment of the present application further provides a data processing apparatus, including:
the monitoring unit is used for injecting a target dynamic link library unit into a first process when the first process is monitored to be established, and transmitting distinguishing attribute information of the first process into the target dynamic link library unit;
the target dynamic link library unit is used for judging whether the window started by the first process meets a first condition or not, and taking the window meeting the first condition as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy; wherein the content of the first and second substances,
the first condition comprises at least one of:
the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window;
the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button;
the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button.
An embodiment of the present application further provides an electronic device, including: a processor and a memory for storing a computer program operable on the processor, wherein the processor is operable to perform the steps of any of the methods described above when executing the computer program.
Embodiments of the present application also provide a storage medium having a computer program stored thereon, where the computer program is executed by a processor to implement the steps of any one of the above methods.
According to the data processing method, the data processing device, the electronic equipment and the storage medium, when a first process is monitored to be established, a target dynamic link library is injected into the first process, and distinguishing attribute information of the first process is transmitted into the target dynamic link library; the target dynamic link library judges whether a window started by the first process meets a first condition, and the window meeting the first condition is used as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy; wherein the first condition comprises at least one of: the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window; the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button; the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button. According to the scheme of the embodiment of the application, the identification window is only added to the window meeting the first condition; therefore, the method and the device can avoid the influence on the use of the electronic equipment by the user due to the fact that all windows of the process have the identification windows, and therefore user experience can be improved.
Drawings
FIG. 1 is a schematic flow chart of a data processing method according to an embodiment of the present application;
FIG. 2 is a schematic flow chart of an Asynchronous Procedure Call (APC) injection according to an embodiment of the present application;
fig. 3 is a schematic flowchart of determining whether a dyeing window and a watermark window need to be created according to an embodiment of the present application;
FIG. 4 is a schematic diagram illustrating internal logic of a main window callback function according to an embodiment of the present application;
FIG. 5 is a schematic structural diagram of a data processing apparatus according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
The present application will be described in further detail with reference to the following drawings and examples.
An embodiment of the present application provides a data processing method, as shown in fig. 1, the method includes:
step 101: when a first process is monitored to be established, injecting a target dynamic link library into the first process, and transmitting distinguishing attribute information of the first process into the target dynamic link library;
step 102: the target dynamic link library judges whether a window started by the first process meets a first condition, and the window meeting the first condition is used as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy;
wherein the first condition comprises at least one of:
the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window;
the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button;
the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button.
Here, the identification window is a child window of the main window.
It should be noted that the data processing method provided by the embodiment of the present application is applied to an electronic device, and the electronic device may be a Personal Computer (PC), a mobile phone, and the like; the PC may include a desktop computer, a notebook computer, a tablet computer, and the like.
In actual application, the target dynamic link library may obtain attribute information and handle information of a window, and determine whether the window started by the first process satisfies a first condition based on the obtained attribute information and handle information.
Specifically, in a case where the attribute information includes a WS _ VISIBLE attribute, it may be determined that the corresponding window is a VISIBLE window; in case the attribute information does not contain a WS _ VISIBLE attribute, it may be determined that the corresponding window is not a VISIBLE window.
In actual application, the corresponding window does not correspond to the parent window and the owner window, and it can be understood that the corresponding window is an independent window, in other words, the corresponding window is not owned by other windows, and the corresponding window is not a child window of other windows. Specifically, the target dynamic link library may obtain a Parent window (Parent) and an Owner window (Owner) of a corresponding window based on handle information of the window and an Application Program Interface (API) provided by an operating system of the electronic device, and may determine that the corresponding window does not correspond to the Parent window and the Owner window in a case that the Parent window and the Owner window are not obtained; in the case where the parent window and the owner window are obtained, it may be determined that the corresponding windows correspond to the parent window and the owner window.
In actual application, under the condition that the attribute information of the window contains a WS _ SYSMENU attribute (the WS _ SYSMENU attribute represents the window with a control menu on a title bar), the target dynamic link library can determine that the corresponding window corresponds to a system menu attribute; in the case that the attribute information of the window does not include the WS _ SYSMENU attribute, the target dynamic link library may determine that the corresponding window does not correspond to the system menu attribute.
In actual application, under the condition that a MaxButton attribute (whether a maximized button of the MaxButton attribute representation window is displayed) and a MinButton attribute (whether a minimized button of the MinButton attribute representation window is displayed) in attribute information of a window are valid (True), the target dynamic link library can determine that the corresponding window comprises the maximized button and the minimized button; in the case where the MaxButton attribute and the MinButton attribute in the attribute information of the window are invalid (False), the target dynamic link library may determine that the corresponding window does not contain the maximize button and the minimize button.
In an embodiment, the monitoring that the first process is created, injecting a target dynamic link library into the first process may include:
and when monitoring that the first process is established, the monitoring process of the driving layer injects a target dynamic link library into the first process.
In practical application, the monitoring process of the driver layer may be implemented by a callback function set in the driver layer, in other words, the monitoring process specifically creates the callback function for the process. The driver layer may be understood as a driver layer of an operating system, such as a Microsoft Windows (Windows for short) operating system. The injection mode for injecting the target dynamic link library into the first process can be set according to requirements, such as APC injection. In this way, when the monitoring process of the driver layer monitors that the process of the electronic device is created, the target dynamic link library can be quickly injected into the monitored process (i.e., the first process), so that all the main windows of the monitored process are created after the target dynamic link library is injected, in other words, omission of the main windows of the process can be avoided, that is, the situation that the identification window is not added in time is avoided, and thus, the stability of the addition mechanism of the identification window can be improved.
In practical application, the distinguishing attribute information may be used to distinguish a process to which a window belongs. Of course, the distinguishing attribute information may also be used to distinguish the desktop to which the window belongs. Here, the electronic device may include a plurality of desktops, and the plurality of desktops may specifically be at least two desktops, where the desktop refers to a home screen area presented by the electronic device after the electronic device is opened and successfully logs in to an operating system.
Specifically, each desktop in a plurality of desktops included in the electronic device may correspond to a virtual workspace, the desktops use the same physical disk, a use area of each desktop is not partitioned on the disk, and a picture displayed by the electronic device when a user operates the corresponding desktop is a workspace corresponding to the corresponding desktop. In addition, the working space corresponding to each desktop in the multiple desktops may be isolated by using a sandbox implemented based on Unified Endpoint Management (UEM), in other words, the sandbox may be used to isolate files in the file directory corresponding to each desktop. In actual application, each desktop in the multiple desktops can also perform process isolation, network isolation, registry isolation, clipboard isolation, service isolation and the like based on the sandbox, so as to improve the security of user data. In addition, in actual application, the system operation permissions corresponding to the desktops of the multiple desktops included in the electronic device may be the same or different, and a user may set the system operation permissions according to requirements.
In actual application, a user can set the corresponding relation between the distinguishing attribute information and the marking strategy according to requirements; after the distinguishing attribute information is obtained, the target dynamic link library can determine a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information by combining the preset corresponding relation between the distinguishing attribute information and the marking strategy.
In practical application, a plurality of identification windows, such as a dyeing window for presenting a dyeing effect, a watermark window for presenting a watermark, and the like, may be added to the main window; accordingly, a user may set a marking policy according to a requirement, where the marking policy may include characteristic information of a color, a resolution, and the like of a dyeing effect of the dyeing window, and/or characteristic information of a picture (i.e., a watermark pattern), a width, a height, and the like of a watermark of the watermark window.
Illustratively, in the case that the distinguishing attribute information is used for distinguishing the desktop to which the window belongs, for three desktops included in the electronic device: the system comprises a desktop A, a desktop B and a desktop C, wherein the system operation authority corresponding to the desktop A is higher than the system operation authority corresponding to the desktop B, the system operation authority corresponding to the desktop B is higher than the system operation authority corresponding to the desktop C, and through the setting of a user, a marking strategy corresponding to the desktop A can be used for creating a dyeing window with a red dyeing effect and a watermark window presenting watermark information of the desktop A for a window of the desktop A; the marking strategy corresponding to the desktop B can be used for creating a dyeing window with a green dyeing effect for the window of the desktop B; the marking strategy corresponding to the desktop C may be unmarked, in other words, it is not necessary to create a coloring window and/or a watermarking window for the window of the desktop C.
In actual application, because the behavior of the application program is too complex and the time for creating the window in the process cannot be predicted, an event monitoring mechanism can be adopted to determine the window started by the first process.
Based on this, in an embodiment, the method may further include:
and the target dynamic link library monitors a window creating event and a window displaying event in the first process through an event monitoring mechanism and determines a window started by the first process.
In actual application, after a process creates a window, the created window may be in a display state or a hidden state, so that an event monitoring mechanism monitors a window creating event and a window displaying event in the first process, and a window started by the first process can be determined.
In an embodiment, the adding an identification window to the main window according to the target marking policy may include:
and when the target dynamic link library determines that the main window is not processed, modifying the window callback function of the main window, and adding the identification window to the main window through the modified window callback function.
In actual application, the target dynamic link library can judge whether the main window is processed or not based on the handle information of the main window; the process may be understood as having added an identification window to the main window.
In actual application, the modifying of the window callback function of the main window includes, but is not limited to, replacing the address of the window callback function, that is, replacing the address of the original window callback function with the address of a new, preset window callback function; and the new and preset window callback function is the modified window callback function and is used for adding the identification window to the main window.
In practical application, in order to improve user experience, the identification window may be correspondingly processed according to the moving, displaying and hiding states of the main window, so that the identification window and the main window can be presented as a whole.
Based on this, in an embodiment, the adding, by the modified window callback function, the identification window to the main window may include:
monitoring an operation event aiming at the main window through the modified window callback function; and according to the monitored operation event, performing corresponding operation on the identification window so as to dynamically adjust the display mode of the identification window along with the change of the display state of the main window.
Specifically, in an embodiment, the performing, according to the monitored operation event, a corresponding operation on the identification window may include at least one of:
when a first operation event for enabling the main window to be displayed in a full screen mode is monitored, configuring the identification window into a window which is transmitted in a message-transparent mode, is not activated, is layered and does not occupy a focus;
when a second operation event for enabling the main window to be displayed in a non-full screen mode is monitored, configuring the identification window into a window which can capture messages, cannot be activated and does not preempt a focus, and moving the identification window to the outside of the main window for displaying;
when a third operation event for moving the main window is monitored, moving the identification window according to the moving track of the main window;
hiding the identification window when a fourth operation event for hiding the main window is monitored;
and when a fifth operation event for displaying the main window is monitored, displaying the identification window.
In actual application, the display mode of the identification window can be dynamically adjusted along with the change of the display state of the main window by configuring the attribute information of the identification window.
Specifically, the identification window may be configured as a message pass-through window by adding a WS _ EX _ transfer attribute to the attribute information of the identification window; the identification window can be configured into a LAYERED window by adding a WS _ EX _ LAYERED attribute to the attribute information of the identification window; adding a WS _ EX _ NOACTIVATE attribute to the attribute information of the identification window, so that the identification window can be configured into a window which cannot be activated and does not occupy the focus; the identification window may be configured as a window that can capture a message by deleting the WS _ EX _ transfer attribute and the WS _ EX _ layer attribute from the attribute information of the identification window, in other words, the identification window is a window that can capture a message in a case where the attribute information of the identification window does not include the WS _ EX _ transfer attribute and the WS _ EX _ layer attribute; the identification window can be displayed by adding a WS-VISIBLE attribute to the attribute information of the identification window; the identification window may be hidden by deleting the WS _ VISIBLE attribute from the attribute information of the identification window.
In practical application, in order to further improve user experience and avoid the influence of the identification window on the operation of the user, the identification window may be displayed only when the main window is switched from the inactive state to the active state.
Based on this, in an embodiment, the performing, according to the monitored operation event, a corresponding operation on the identification window may include:
when a sixth operation event for switching the main window from an inactivated state to an activated state is monitored, displaying the identification window;
and hiding the identification window when a seventh operation event for switching the main window from an activated state to an inactivated state is monitored.
In practical application, under the condition that a plurality of identification windows exist, only part of the identification windows can be hidden when the identification windows are hidden; correspondingly, when the identification window is displayed, a hidden part of the identification window can be displayed; therefore, the user can distinguish the current window, and the influence of a plurality of identification windows on the operation of the user can be avoided.
In actual application, when a user sets a marking strategy according to requirements, the animation presentation effect of the identification window can be set.
Based on this, in an embodiment, the displaying the identification window may include:
fading in animation to display the identification window;
the hiding the identification window may include:
the fading animation hides the identification window.
In practical applications, when there are multiple markup windows, the way of displaying each markup window may be the same or different.
Based on this, in an embodiment, the identification window may include a first identification window and a second identification window; the displaying the identification window may include:
and displaying the first identification window, and gradually drawing in and out to present the second identification window.
Here, the displaying the first identification window may include: gradually moving into animation to display the first identification window, or instantaneously displaying the first identification window; of course, the display mode of the first identification window may be set according to requirements, and this is not specifically limited in this embodiment of the application.
In addition, if the first identification window is in a display state when the main window is in an inactive state (i.e. the first identification window is not hidden when the main window is switched from the active state to the inactive state), the displaying the first identification window may include: and maintaining the display state of the first identification window.
In practical application, the first identification window may be a coloring window, and the second identification window may be a watermarking window; of course, the first identification window and the second identification window may also be other windows with identification functions, which is not limited in this embodiment of the application.
According to the data processing method provided by the embodiment of the application, when a first process is monitored to be established, a target dynamic link library is injected into the first process, and distinguishing attribute information of the first process is transmitted into the target dynamic link library; the target dynamic link library judges whether a window started by the first process meets a first condition, and the window meeting the first condition is used as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy; wherein the first condition comprises at least one of: the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window; the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button; the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button. According to the scheme of the embodiment of the application, the identification window is only added to the window meeting the first condition; therefore, the method and the device can avoid the influence on the use of the electronic equipment by the user due to the fact that all windows of the process have the identification windows, and therefore user experience can be improved.
The present application will be described in further detail with reference to the following application examples.
In the embodiment of the application, the target dynamic link library is expressed as UEM.dll; the identification window comprises a dyeing window and a watermark window; the distinguishing attribute information is called desktop information and is used for distinguishing the desktop to which the window belongs; the electronic device includes two desktops: the system operation authority corresponding to the safe desktop is higher than the system operation authority corresponding to the personal desktop, namely, a user cannot open or edit files under a file directory corresponding to the safe desktop through the personal desktop, but can open or edit files under the file directory corresponding to the personal desktop through the safe desktop; the marking policy corresponding to the personal desktop is not to mark, in other words, only to create (i.e., add) a coloring window and a watermarking window for the main window of the process of the secure desktop (denoted as the secure process in the following description).
In the embodiment of the present application, as shown in fig. 2, APC injection into uem.dll may include the following steps:
step 201: starting a process; then step 202 is executed;
step 202: the driving layer captures process starting information; then step 203 is executed;
step 203: injecting UEM.dll by APC, and transmitting desktop information; then step 204 is executed;
step 204: dll internal start staining logic.
Specifically, when an application program of the electronic device starts to create a process, a process creation callback function (i.e., the monitoring process) of the driver layer is triggered, so that the driver layer captures start information of the process (i.e., it is monitored that the process is created); the start information may include desktop information that characterizes a desktop to which the corresponding process belongs. The driver layer then injects the uem.dll to the captured process by means of APC injection and passes the desktop information inside the uem.dll. After the process loads the UEM.dll, the inside of the UEM.dll can create dyeing windows and watermark windows with different styles (namely different marking strategies) for different desktops according to desktop information, and the most visual prompt is provided for a user.
Here, the process creation callback function of the driver layer can quickly inject the uem.dll to the captured process by means of APC injection, and the ntdll.dll is usually loaded first when the process is started, in other words, the ntdll.dll is usually loaded first and then the uem.dll is loaded, and the injection time of the uem.dll is early enough; thus, it can be ensured that all windows of a process are created after the injection of a uem.
In the embodiment of the application, in order to avoid that all windows of a process have a coloring and watermarking, and thus a user is influenced to use the windows, that is, the user is influenced to operate the windows, a coloring window and a watermarking window are only created for a main window. Therefore, in step 204, the coloring logic inside the uem.dll needs to determine whether a coloring window and a watermark window need to be created by determining whether the monitored process creates a main window.
Specifically, as shown in fig. 3, the uem.dll determining whether a coloring window and a watermark window need to be created may include the following steps:
step 301: judging whether the current process is a process of the safe desktop or not; if yes, go to step 302; if not, finishing the judgment;
step 302: setting window creating and displaying monitoring events; then step 303 is executed;
step 303: initializing configuration information for the staining (i.e., determining a target marking strategy); then step 304 is executed;
step 304: a listening event is triggered; then step 305 is executed;
step 305: judging whether the current window (namely the created or displayed main window) is the main window; if yes, go to step 306; if not, finishing the judgment;
step 306: judging whether the current window is unprocessed or not; if yes, go to step 307; if not, finishing the judgment;
step 307: acquiring a callback function of the current window, and replacing the callback function with a preset callback function of the main window (namely the modified callback function of the window); then step 308 is executed;
step 308: a message (which may be denoted WM _ CREATE _ dye _ WINDOW) is sent to the current WINDOW to CREATE the dye WINDOW and the watermark WINDOW.
Specifically, in step 301, the APC injects the uem.dll, and after the injected process loads the uem.dll, the uem.dll may determine whether the current process is a process of the secure desktop according to the desktop information.
In step 302, because the behavior of the application program is too complex and the creation time of the main window cannot be predicted, an event monitoring mechanism is adopted to monitor the current window creation event and window display event inside the uem.dll; when a window is created or displayed, the listening mechanism may be triggered (i.e., step 304).
Dll may acquire the attribute information of the current window, and determine whether the current window is the main window according to the preset characteristics of the main window (i.e., the first condition) in step 305. The main window features may include: properties that are not owned by other windows (i.e. no Owner window (Owner)), no Parent window (Parent), window VISIBLE (WS _ VISIBLE), etc. In practical applications, the main window feature may further include: a system menu attribute (WS _ SYSMENU), a maximize button (i.e., maxButton = True), or a minimize button (i.e., minButton = True); alternatively, the main window feature may further include: a maximize button and a minimize button.
Dll, in step 306, may determine whether the window is processed based on handle information of the window. The process may be understood as having created a dye window and a watermark window for the main window.
In step 307, the uem.dll may replace the address of the original window callback function of the main window (i.e., the window callback function of the operating system of the electronic device) with the address of the preset main window callback function (i.e., the new and preset window callback function in the uem.dll), so as to call the preset main window callback function for service processing.
In the embodiment of the application, after the uem.dll replaces the original window callback function of the main window with the preset main window callback function, the dyeing window is created in the new main window callback function, so that the same life cycle of the dyeing window and the attached main window can be ensured. When the user selects to display the main window in a full screen mode, the dyeing window is displayed inside the main window, at this time, the dyeing effect occupies few pixels, and the attributes of the dyeing window include: message pass-through (WS _ EX _ TRANSPARENT), unActivate (WS _ EX _ NOACTIVATE), hierarchical (WS _ EX _ LAYERED), and Un-preempt Focus (WS _ EX _ NOACTIVATE). When the user selects the non-full screen display main window, the dyed window is displayed outside the main window, and in order to enable the user to click the dyed window for operation, the attributes of the dyed window may include: messages (not containing WS _ EX _ transfer and WS _ EX _ layer), may be captured, may not be activated and does not preempt focus (WS _ EX _ activate). Therefore, the method can prompt the user and ensure that the operation of the user is not influenced. In practical application, the main window callback function can also control the dyeing window to realize corresponding processing according to the state changes of the main window, such as movement, display, hiding and the like, so that the dyeing window and the main window are presented as a whole.
In this application embodiment, uem.dll also creates a watermark window inside the new main window callback function, but in order to ensure that the user is not prompted, but the operation of the user is not affected, the watermark window may not be displayed all the time. Specifically, only when the main window is switched from the inactive state to the active state or from the active state to the inactive state, the watermark window is displayed and hidden with a fade-in and fade-out animation effect, and preset prompt information can be dynamically displayed according to the marking strategy. Here, the properties of the watermark window may include: message pass-through, layering, non-activateable and non-preemptive focus.
In this application embodiment, the internal logic of the main WINDOW callback function is as shown in fig. 4, the main WINDOW callback function acquires information of a current WINDOW, and CREATEs a coloring WINDOW and a watermark WINDOW under the condition that WINDOW information is WM _ CREATE _ dye _ WINDOW.
Under the condition that the window information is a system message (which can be represented as WM _ WINDOWPOSCHANGED) representing the upcoming change of the window position, judging whether the main window is displayed in a full screen mode (specifically, judging whether the main window is maximized, and judging whether the display area of the main window exceeds the screen of the current display); under the condition that the main window is displayed in a full screen mode, the dyeing window is moved to the interior of the main window according to the position of the main window, a display area is established (namely the display areas of the main window and the dyeing window are determined), and the watermark window is moved based on the display area; in the case where the main window is displayed in a non-full screen, the dyed window is moved to the outside of the main window according to the position of the main window, a display area is created (i.e., the display areas of the main window and the dyed window are determined), and the watermark window is moved based on the display area.
Under the condition that the window information is a system message (which can be represented as WM _ SHOOWWINDOW) for representing the display state change of the window, whether the main window is to be displayed or not can be judged according to the WM _ SHOOWWINDOW; in the case where the main window is to be displayed, the coloring window may be displayed when the main window is in an inactive state; in case the main window is not displayed (i.e. the main window is in a hidden state), the stain window and the watermark window are hidden.
Under the condition that the window information is a system message (which can be represented as WM _ ACTIVATAAPPP) representing the activation state of the window, whether the main window is changed from the non-activation state to the activation state or not can be judged, and whether the watermark window is invisible or not (namely whether the watermark window is in a hidden state or not) can be judged; in the case where the main window changes from the inactive state to the active state and the watermark window is not visible, the watermark window is animated (e.g., fading in and out animation effects).
In this application embodiment, after the internal logic of the main window callback function is finished, an original window processing function (that is, a window processing function of an operating system of the electronic device) may be called to perform subsequent processing on a corresponding window.
And in actual application, the UEM.dll can also process the information of the dyeing window and the watermark window so as to realize the presentation effect of the dyeing window and the watermark window. For a stained window, for example, the uem.dll may configure a system message (which may be denoted WM _ PAINT) characterizing window drawing according to the marking policy to achieve a gradual staining effect; also, the dye window may be moved according to WM _ WINDOWPOSCHANGED. For watermark windows, the uem.dll may configure a system message (which may be denoted WM _ TIMER) characterizing the window TIMER according to the marking policy to achieve the fade-in and fade-out effect of the watermark window.
The scheme of the embodiment of the application has the following advantages:
firstly, because the process of the drive layer establishes a callback function, the uem.dll can be quickly injected into the captured process in an APC injection manner, the ntdll is usually loaded first and then the uem.dll is loaded, and the injection time of the uem.dll is early enough; therefore, all windows of the process can be ensured to be created after UEM.dll is injected, the existence of an undyed main window is avoided, and the stability of an identification mechanism for identifying the desktop to which the parent window belongs through the dyeing effect and/or the watermark of the child window is improved.
Secondly, adding a dyeing window and a watermark window only for the main window; therefore, the method can avoid the influence on the use of the electronic equipment by a user due to the fact that all windows of the process are provided with the dyeing window and the watermark window, and therefore user experience can be improved.
Thirdly, the watermark window and the dyeing window can dynamically change along with the change of the state of the main window, thereby not only prompting the user, but also ensuring that the operation of the user is not influenced.
In order to implement the method according to the embodiment of the present application, an embodiment of the present application further provides a data processing apparatus, and as shown in fig. 5, the apparatus includes:
a monitoring unit 501, configured to inject a target dynamic link library unit 502 into a first process when it is monitored that the first process is created, and transmit distinguishing attribute information of the first process to the target dynamic link library unit 502;
the target dynamic link library unit 502 is configured to determine whether a window started by the first process meets a first condition, and use the window meeting the first condition as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy; wherein the content of the first and second substances,
the first condition comprises at least one of:
the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window;
the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button;
the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button.
In an embodiment, the monitoring unit 501 is specifically configured to inject a target dynamic link library into a first process when it is monitored that the first process is created through a monitoring process of a driver layer.
In an embodiment, the target dynamically linked library unit 502 is further configured to monitor a window creation event and a window display event in the first process through an event monitoring mechanism, and determine a window started by the first process.
In an embodiment, the target dynamic link library unit 502 is specifically configured to modify a window callback function of the main window when it is determined that the main window is not processed, and add the identifier window to the main window through the modified window callback function.
In an embodiment, the target dynamic link library unit 502 is specifically configured to monitor an operation event for the main window through a modified window callback function; and executing corresponding operation on the identification window according to the monitored operation event so as to dynamically adjust the display mode of the identification window along with the change of the display state of the main window.
In an embodiment, the target dynamically linked library unit 502 is specifically configured to perform at least one of the following:
when a first operation event for displaying the main window in a full screen mode is monitored, configuring the identification window into a window which is transmitted through messages, can not be activated, is layered and does not occupy a focus;
when a second operation event for enabling the main window to be displayed in a non-full screen mode is monitored, configuring the identification window into a window which can capture messages, cannot be activated and does not preempt a focus, and moving the identification window to the outside of the main window for displaying;
when a third operation event for moving the main window is monitored, moving the identification window according to the moving track of the main window;
hiding the identification window when a fourth operation event for hiding the main window is monitored;
and displaying the identification window when a fifth operation event for displaying the main window is monitored.
In an embodiment, the target dynamic link library unit 502 is specifically configured to:
when a sixth operation event for switching the main window from an inactivated state to an activated state is monitored, displaying the identification window;
and hiding the identification window when a seventh operation event for switching the main window from an activated state to an inactivated state is monitored.
In an embodiment, the target dynamically linked library element 502 is specifically configured to fade-in animation to display the identification window; and fading the animation to hide the identification window.
In one embodiment, the identification windows include a first identification window and a second identification window; the target dynamic link library unit 502 is specifically configured to display the first identifier window, and gradually draw in and out to present the second identifier window.
In actual application, the monitoring unit 501 and the target dynamic link library unit 502 can be implemented by a processor in a data processing device.
It should be noted that: the data processing apparatus provided in the above embodiment is only illustrated by the division of the program modules when processing data, and in practical applications, the processing may be distributed to different program modules according to needs, that is, the internal structure of the apparatus may be divided into different program modules to complete all or part of the processing described above. In addition, the data processing apparatus and the data processing method provided by the above embodiments belong to the same concept, and specific implementation processes thereof are described in the method embodiments for details, which are not described herein again.
Based on the hardware implementation of the program module, and in order to implement the method according to the embodiment of the present application, an embodiment of the present application further provides an electronic device, as shown in fig. 6, where the electronic device 600 includes:
the communication interface 601 can perform information interaction with other electronic equipment;
the processor 602 is connected with the communication interface 601 to implement information interaction with other electronic devices, and is used for executing the method provided by one or more technical solutions when running a computer program;
a memory 603 storing a computer program capable of running on the processor 602.
Specifically, the processor 602 is configured to, when it is monitored that a first process is created, inject a target dynamic link library into the first process, and transmit distinguishing attribute information of the first process to the target dynamic link library;
the target dynamic link library is used for judging whether the window started by the first process meets a first condition or not, and taking the window meeting the first condition as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy; wherein, the first and the second end of the pipe are connected with each other,
the first condition comprises at least one of:
the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window;
the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button;
the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button.
In an embodiment, the processor 602 is specifically configured to inject a target dynamic link library into a first process when it is monitored that the first process is created through a monitoring process of a driver layer of the electronic device 600.
In an embodiment, the target dynamic link library is further configured to monitor a window creation event and a window display event in the first process through an event monitoring mechanism, and determine a window started by the first process.
In an embodiment, the target dynamic link library is specifically configured to modify a window callback function of the main window when it is determined that the main window is not processed, and add an identifier window to the main window through the modified window callback function.
In an embodiment, the target dynamic link library is specifically configured to monitor an operation event for the main window through a modified window callback function; and executing corresponding operation on the identification window according to the monitored operation event so as to dynamically adjust the display mode of the identification window along with the change of the display state of the main window.
In an embodiment, the target dynamic link library is specifically configured to perform at least one of:
when a first operation event for displaying the main window in a full screen mode is monitored, configuring the identification window into a window which is transmitted through messages, can not be activated, is layered and does not occupy a focus;
when a second operation event for enabling the main window to be displayed in a non-full screen mode is monitored, configuring the identification window into a window which can capture messages, cannot be activated and does not preempt a focus, and moving the identification window to the outside of the main window for displaying;
when a third operation event for moving the main window is monitored, moving the identification window according to the moving track of the main window;
hiding the identification window when a fourth operation event for hiding the main window is monitored;
and when a fifth operation event for displaying the main window is monitored, displaying the identification window.
In an embodiment, the target dynamic link library is specifically configured to:
when a sixth operation event for switching the main window from an inactivated state to an activated state is monitored, displaying the identification window;
and hiding the identification window when a seventh operation event for switching the main window from an activated state to an inactivated state is monitored.
In an embodiment, the target dynamic link library is specifically configured to fade-in animation to display the identification window; and fading the animation to hide the identification window.
In one embodiment, the identification window comprises a first identification window and a second identification window; and the target dynamic link library is specifically used for displaying the first identification window and gradually drawing in and out to present the second identification window.
It should be noted that: the process of the processor 602 specifically executing the above operations is detailed in the method embodiment, and is not described here again.
Of course, in practice, the various components in the electronic device 600 are coupled together by a bus system 604. It is understood that the bus system 604 is used to enable connected communication between these components. The bus system 604 includes a power bus, a control bus, and a status signal bus in addition to a data bus. For clarity of illustration, however, the various buses are labeled as bus system 604 in fig. 6.
The memory 603 in the embodiments of the present application is used to store various types of data to support the operation of the electronic device 600. Examples of such data include: any computer program for operating on the electronic device 600.
The methods disclosed in the embodiments of the present application may be applied to the processor 602, or implemented by the processor 602. The processor 602 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 602. The Processor 602 may be a general purpose Processor, a Digital Signal Processor (DSP), or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, or the like. The processor 602 may implement or perform the methods, steps, and logic blocks disclosed in the embodiments of the present application. The general purpose processor may be a microprocessor or any conventional processor or the like. The steps of the method disclosed in the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium located in the memory 603, and the processor 602 reads the information in the memory 603 and performs the steps of the aforementioned methods in conjunction with its hardware.
In an exemplary embodiment, the electronic Device 600 may be implemented by one or more Application Specific Integrated Circuits (ASICs), DSPs, programmable Logic Devices (PLDs), complex Programmable Logic Devices (CPLDs), field Programmable Gate Arrays (FPGAs), general purpose processors, controllers, micro Controllers (MCUs), microprocessors (microprocessors), or other electronic components for performing the aforementioned methods.
It is to be appreciated that the memory 603 in the embodiments of the subject application can be either volatile memory or nonvolatile memory, and can include both volatile and nonvolatile memory. Among them, the nonvolatile Memory may be a Read Only Memory (ROM), a Programmable Read Only Memory (PROM), an Erasable Programmable Read-Only Memory (EPROM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a magnetic random access Memory (FRAM), a magnetic random access Memory (Flash Memory), a magnetic surface Memory, an optical Disc, or a Compact Disc Read-Only Memory (CD-ROM); the magnetic surface storage may be disk storage or tape storage. Volatile Memory can be Random Access Memory (RAM), which acts as external cache Memory. By way of illustration, and not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), synchronous Static Random Access Memory (SSRAM), dynamic Random Access Memory (DRAM), synchronous Dynamic Random Access Memory (SDRAM), double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), double Data Rate Synchronous Random Access Memory (ESDRAM), enhanced Synchronous Dynamic Random Access Memory (ESDRAM), enhanced Synchronous Random Access Memory (DRAM), synchronous Random Access Memory (DRAM), direct Random Access Memory (DRmb Access Memory). The memories described in the embodiments of the present application are intended to comprise, without being limited to, these and any other suitable types of memory.
In an exemplary embodiment, the present application further provides a storage medium, i.e., a computer storage medium, specifically a computer readable storage medium, for example, a memory 603 for storing a computer program, which can be executed by a processor 602 of the electronic device 600 to complete the steps of the foregoing method. The computer readable storage medium may be Memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash Memory, magnetic surface Memory, optical disk, or CD-ROM.
It should be noted that: "first," "second," and the like are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order.
The technical means described in the embodiments of the present application may be arbitrarily combined without conflict.
The above description is only a preferred embodiment of the present application, and is not intended to limit the scope of the present application.

Claims (13)

1. A data processing method, comprising:
when a first process is monitored to be established, injecting a target dynamic link library into the first process, and transmitting distinguishing attribute information of the first process into the target dynamic link library;
the target dynamic link library judges whether a window started by the first process meets a first condition, and the window meeting the first condition is used as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy; wherein, the first and the second end of the pipe are connected with each other,
the first condition includes at least one of:
the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window;
the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button;
the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button.
2. The method of claim 1, wherein the monitoring that a first process is created, injecting a target dynamic link library into the first process comprises:
and when monitoring that the first process is established, the monitoring process of the driving layer injects a target dynamic link library into the first process.
3. The method of claim 2, wherein the monitoring process is specifically a process creation callback function.
4. The method of claim 1, further comprising:
and the target dynamic link library monitors a window creating event and a window displaying event in the first process through an event monitoring mechanism and determines a window started by the first process.
5. The method of any of claims 1 to 4, wherein the adding an identification window to the main window according to the target marking policy comprises:
and when the target dynamic link library determines that the main window is not processed, modifying the window callback function of the main window, and adding the identification window to the main window through the modified window callback function.
6. The method of claim 5, wherein said adding an identified window to said main window via a modified window callback function comprises:
monitoring an operation event aiming at the main window through the modified window callback function; and according to the monitored operation event, performing corresponding operation on the identification window so as to dynamically adjust the display mode of the identification window along with the change of the display state of the main window.
7. The method of claim 6, wherein performing a corresponding operation on the identified window based on the monitored operational event comprises at least one of:
when a first operation event for enabling the main window to be displayed in a full screen mode is monitored, configuring the identification window into a window which is transmitted in a message-transparent mode, is not activated, is layered and does not occupy a focus;
when a second operation event for enabling the main window to be displayed in a non-full screen mode is monitored, configuring the identification window into a window which can capture messages, cannot be activated and does not preempt a focus, and moving the identification window to the outside of the main window for displaying;
when a third operation event for moving the main window is monitored, moving the identification window according to the moving track of the main window;
hiding the identification window when a fourth operation event for hiding the main window is monitored;
and when a fifth operation event for displaying the main window is monitored, displaying the identification window.
8. The method of claim 6, wherein performing corresponding operations on the identification window according to the monitored operation events comprises:
when a sixth operation event for switching the main window from an inactivated state to an activated state is monitored, displaying the identification window;
and hiding the identification window when a seventh operation event for switching the main window from an activated state to an inactivated state is monitored.
9. The method of claim 8, wherein the displaying the identification window comprises:
fading in animation to display the identification window;
the hiding the identification window comprises:
the fading animation hides the identification window.
10. The method of claim 8, wherein the identification window comprises a first identification window and a second identification window; the displaying the identification window includes:
and displaying the first identification window, and gradually drawing in and out to present the second identification window.
11. A data processing apparatus, comprising:
the monitoring unit is used for injecting a target dynamic link library unit into a first process when the first process is monitored to be established, and transmitting distinguishing attribute information of the first process into the target dynamic link library unit;
the target dynamic link library unit is used for judging whether the window started by the first process meets a first condition or not, and taking the window meeting the first condition as a main window of the first process; determining a target marking strategy corresponding to the distinguishing attribute information according to the distinguishing attribute information; adding an identification window to the main window according to the target marking strategy; wherein the content of the first and second substances,
the first condition comprises at least one of:
the corresponding window is a visible window, and the corresponding window does not correspond to the parent window and the owner window;
the corresponding window corresponds to the system menu attribute and comprises a maximization button or a minimization button;
the respective window does not correspond to a system menu attribute, and the respective window includes a maximize button and a minimize button.
12. An electronic device, comprising: a processor and a memory for storing a computer program operable on the processor, wherein the processor is operable to perform the steps of the method of any of claims 1 to 10 when executing the computer program.
13. A storage medium having a computer program stored thereon, the computer program, when being executed by a processor, realizing the steps of the method according to any of the claims 1 to 10.
CN202110587147.5A 2021-05-27 2021-05-27 Data processing method and device, electronic equipment and storage medium Active CN113254101B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110587147.5A CN113254101B (en) 2021-05-27 2021-05-27 Data processing method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110587147.5A CN113254101B (en) 2021-05-27 2021-05-27 Data processing method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113254101A CN113254101A (en) 2021-08-13
CN113254101B true CN113254101B (en) 2023-02-03

Family

ID=77184868

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110587147.5A Active CN113254101B (en) 2021-05-27 2021-05-27 Data processing method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113254101B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6550060B1 (en) * 1999-04-08 2003-04-15 Novadigm, Inc. Method and system for dynamic injection of dynamic link libraries into a windowed operating system
US6871348B1 (en) * 1999-09-15 2005-03-22 Intel Corporation Method and apparatus for integrating the user interfaces of multiple applications into one application
US8375324B1 (en) * 2002-03-05 2013-02-12 Hyland Software, Inc. Computer-implemented document manager application enabler system and method
CN103019840A (en) * 2012-11-22 2013-04-03 北京奇虎科技有限公司 Method and device for setting desktop
CN111382399A (en) * 2020-03-06 2020-07-07 北京明朝万达科技股份有限公司 Method and device for adding watermark

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7856637B1 (en) * 2006-10-25 2010-12-21 Vmware, Inc. Runtime emulating static thread local storage of portable executable software code

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6550060B1 (en) * 1999-04-08 2003-04-15 Novadigm, Inc. Method and system for dynamic injection of dynamic link libraries into a windowed operating system
US6871348B1 (en) * 1999-09-15 2005-03-22 Intel Corporation Method and apparatus for integrating the user interfaces of multiple applications into one application
US8375324B1 (en) * 2002-03-05 2013-02-12 Hyland Software, Inc. Computer-implemented document manager application enabler system and method
CN103019840A (en) * 2012-11-22 2013-04-03 北京奇虎科技有限公司 Method and device for setting desktop
CN111382399A (en) * 2020-03-06 2020-07-07 北京明朝万达科技股份有限公司 Method and device for adding watermark

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
进程隐藏技术的研究和实现;史国川 等;《合肥学院学报(自然科学版)》;20090531;第19卷(第2期);第26-28页 *

Also Published As

Publication number Publication date
CN113254101A (en) 2021-08-13

Similar Documents

Publication Publication Date Title
CN101770399B (en) Electronic equipment, method and device for switching operating system desktop
US8856950B2 (en) Mobile terminal and method of managing information therein including first operating system acting in first mode and second operating system acting in second mode
CN111858277B (en) Screen recording method and screen recording device for electronic terminal
CN107463369B (en) Access device control method and device for virtual desktop
EP2469814B1 (en) Mobile terminal and method of controlling a mode switching therein
CN106951335B (en) Process daemon method and mobile terminal
CN114244953B (en) Interface display method, electronic equipment and storage medium
KR20130006992A (en) Mobile terminal and method for controlling display thereof
CN107832105B (en) Application program starting method, starting device and computer readable storage medium
WO2018130085A1 (en) Method and apparatus for page presentation
CN112148163B (en) Screen recording method and device and electronic equipment
KR20200052950A (en) User interface display method and terminal device
WO2019019954A1 (en) Terminal-based method for realising multiple android systems, storage medium and terminal
WO2017008415A1 (en) Apparatus and method for launching mobile applications from a lock screen
CN113254102B (en) Data processing method, device, electronic equipment and storage medium
CN113296654B (en) Data processing method, device, electronic equipment and storage medium
CN113254101B (en) Data processing method and device, electronic equipment and storage medium
CN103257788A (en) Windows desktop dynamic icon forming method
US7596762B1 (en) System and method for installing image editing toolbars in standard image viewers
CN114175026A (en) Application monitoring method and device, storage medium and electronic equipment
US20240012938A1 (en) Information Display Method and Related Apparatus
CN113824830A (en) Application management method and device
WO2018014400A1 (en) User input managing method, device and terminal
CN107450913B (en) ExtJS-based window component access control method
CN112527399A (en) Dual-system mobile terminal and system switching method thereof

Legal Events

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