CN111142969A - Method, device, medium and equipment for calling 32-bit program module by 64-bit program - Google Patents

Method, device, medium and equipment for calling 32-bit program module by 64-bit program Download PDF

Info

Publication number
CN111142969A
CN111142969A CN201911375244.7A CN201911375244A CN111142969A CN 111142969 A CN111142969 A CN 111142969A CN 201911375244 A CN201911375244 A CN 201911375244A CN 111142969 A CN111142969 A CN 111142969A
Authority
CN
China
Prior art keywords
function
bit
calling
module
program
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.)
Pending
Application number
CN201911375244.7A
Other languages
Chinese (zh)
Inventor
高古尊
何晓文
李启光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guiyang Gloud Technology Co ltd
Original Assignee
Guiyang Gloud Technology 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 Guiyang Gloud Technology Co ltd filed Critical Guiyang Gloud Technology Co ltd
Priority to CN201911375244.7A priority Critical patent/CN111142969A/en
Publication of CN111142969A publication Critical patent/CN111142969A/en
Pending legal-status Critical Current

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/44536Selecting among different versions
    • G06F9/44542Retargetable

Abstract

With respect to a method, apparatus, medium, and device for a 64-bit procedure to call a 32-bit procedure module, the method for the 64-bit procedure to call the 32-bit procedure module includes: calling LoadLibrary32 function and GetProdcAddress 32 function; loading a 32-bit target program module by calling a LoadLibrary function through the LoadLibrary32 function, and calling a GetPrAddRess function through the GetPrAddRess 32 function to obtain a target function in the target program module; saving the parameters in the register to a stack, and adjusting the access range of the pointer; and calling a target function in the target program module. The method can realize that the 64-bit program calls the 32-bit program module, the 64-bit program and the 32-bit program module run in the same process, each function needing to be called does not need to be packaged independently, the process is not synchronous, and an additional registration component is not needed.

Description

Method, device, medium and equipment for calling 32-bit program module by 64-bit program
Technical Field
The present disclosure relates to the field of computer applications, and more particularly, to a method, apparatus, medium, and device for invoking a 32-bit program module by a 64-bit program.
Background
In the prior computer system, for example, Windows Xp is a 32-bit system, so people write 32-bit programs, and then have 64-bit systems, 64-bit programs can be run under the 64-bit system, and 32-bit programs can also be run, but the 64-bit programs cannot directly call 32-bit program modules, such as program DLLs, plug-ins, game MOD, and the like, and in most cases, source codes of the 32-bit program modules need to be recompiled into 64-bit programs, but in many cases, if the source codes of the modules do not exist, the support for the modules needs to be abandoned, or the modules are rewritten by imitating the modules, but the development cycle is greatly increased.
In the related art, a 32-bit program is used to package a program module into a COM service, and then the program module is called under a 64-bit program. Or using the shared memory, writing the parameters into the shared memory under a 64-bit program, taking out the parameters from the shared memory under 32 bits to call the program module, writing the results into the shared memory, and taking out the results from the shared memory under the 64-bit program. However, the method of packaging the COM service requires the COM service to be registered, and the deployment and maintenance are troublesome; the method for sharing the memory needs to solve the problem of process synchronization, a 64-bit program and a 32-bit program module are not in the same process space, and the 64-bit program and the 32-bit program module need to be processed separately, so that the development and maintenance cost is increased.
Disclosure of Invention
To overcome the problems in the related art, provided herein are a method, apparatus, medium, and device for a 64-bit program to call a 32-bit program module.
According to a first aspect herein, there is provided a method of a 64-bit procedure calling a 32-bit procedure module, comprising:
calling LoadLibrary32 function and GetProdcAddress 32 function;
loading a 32-bit target program module by calling a LoadLibrary function through the LoadLibrary32 function, and calling a GetPrAddRess function through the GetPrAddRess 32 function to obtain a target function in the target program module;
saving the parameters in the register to a stack, and adjusting the access range of the pointer;
and calling a target function in the target program module.
The call to the LoadLibrary32 function and the getprocaddress 32 function previously included:
loading 32-bit Kernel32.dll to a memory under a 64-bit program;
repairing redirection of Kernel32.dll, repairing import table and export table;
acquiring a LoadLibrary function and a GetProdcAddress function in Kernel 32.dll;
and packaging the code for calling the LoadLibrary function into a LoadLibrary32 function, and packaging the code for calling the GetProddress function into a GetProddress 32 function.
The method for calling the 32-bit program module by the 64-bit program further comprises the following steps:
the value of the modification register is 0x 23.
The adjusting the pointer access range comprises:
and modifying the base address of the PE file of the 64-bit program into an address within 0 xffffffff.
According to another aspect herein, there is provided an apparatus for a 64-bit procedure call to a 32-bit procedure module, comprising:
the first calling module is used for calling a LoadLibrary32 function and a GetProdcAddress 32 function;
the loading module is used for loading a 32-bit target program module by calling a LoadLibrary function through the LoadLibrary32 function, and calling a GetProddress function through the GetProddress 32 function to acquire a target function in the target program module;
the pointer module is used for storing the parameters in the register into a stack and adjusting the access range of the pointer;
and the second calling module is used for calling the target function in the target program module.
The device for calling the 32-bit program module by the 64-bit program further comprises an encapsulation module for:
loading 32-bit Kernel32.dll to a memory under a 64-bit program;
repairing redirection of Kernel32.dll, repairing import table and export table;
acquiring a LoadLibrary function and a GetProdcAddress function in Kernel 32.dll;
and packaging the code for calling the LoadLibrary function into a LoadLibrary32 function, and packaging the code for calling the GetProddress function into a GetProddress 32 function.
The 64-bit program calling device of the 32-bit program module also comprises a register conversion module for modifying the value of the register to be 0x 23.
The adjusting the pointer access range comprises:
and modifying the base address of the PE file of the 64-bit program into an address within 0 xffffffff.
According to another aspect herein, there is provided a computer readable storage medium having stored thereon a computer program which, when executed, implements the steps of a method for a 64-bit program to call a 32-bit program module.
According to another aspect herein, there is provided a computer apparatus comprising a processor, a memory and a computer program stored on the memory, the processor implementing the steps of the method for a 64-bit program call to a 32-bit program module when executing the computer program.
By providing the method for calling the 32-bit program module by the 64-bit program, the 64-bit program can call the 32-bit program module, the 64-bit program and the 32-bit program module run in the same process, each function to be called does not need to be packaged independently, the process is not synchronized, and an additional registration component is not needed.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, are included to provide a further understanding of the disclosure, and are incorporated in and constitute a part of this specification. In the drawings:
FIG. 1 is a flow diagram illustrating a method for a 64-bit procedure to call a 32-bit procedure module in accordance with an illustrative embodiment.
FIG. 2 is a block diagram illustrating an apparatus for a 64-bit procedure call to a 32-bit procedure module in accordance with an illustrative embodiment.
FIG. 3 is a block diagram illustrating an apparatus for a 64-bit procedure call to a 32-bit procedure module in accordance with an illustrative embodiment.
FIG. 4 is a block diagram illustrating an apparatus for a 64-bit procedure call to a 32-bit procedure module in accordance with an illustrative embodiment.
FIG. 5 is a block diagram illustrating a computer device according to an example embodiment.
Detailed Description
To make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the drawings of the embodiments of the present invention, and it is obvious that the described embodiments are some but not all of the embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments herein without making any creative effort, shall fall within the scope of protection. It should be noted that the embodiments and features of the embodiments may be arbitrarily combined with each other without conflict.
FIG. 1 is a flow diagram illustrating a method for a 64-bit procedure to call a 32-bit procedure module in accordance with an illustrative embodiment. Referring to fig. 1, the method for calling a 32-bit program module by a 64-bit program includes:
step S11, calling LoadLibrary32 function and GetProdcAddress 32 function;
step S12, the LoadLibrary function is called through the LoadLibrary32 function to load the 32-bit target program module, and the GetProddress function is called through the GetProddress 32 function to obtain the target function in the target program module;
step S13, saving the parameters in the register to the stack, and adjusting the access range of the pointer;
in step S14, the target function in the target program module is called.
In a 64-bit system, a 64-bit program can be run, and a 32-bit program can also be run, but the 64-bit program cannot directly call 32-bit program modules, such as program DLL, plug-ins, game MOD and the like. In order to implement the 64-bit program, calling the 32-bit program module requires first obtaining a 32-bit LoadLibrary function and a getprocaddress function, encapsulating the LoadLibrary function into a LoadLibrary32 function for loading the 32-bit program module, and encapsulating the getprocaddress function into a getprocaddress 32 function for obtaining a function in the 32-bit program module.
In an embodiment, the step S11, before the step of calling the LoadLibrary32 function and the getprocaddress 32 function, further includes:
loading 32-bit Kernel32.dll to a memory under a 64-bit program;
repairing redirection of Kernel32.dll, repairing import table and export table;
acquiring a LoadLibrary function and a GetProdcAddress function in Kernel 32.dll;
the code encapsulating bit calling the LoadLibrary function is the LoadLibrary32 function, and the code calling the getprocaddress function is encapsulated as the getprocaddress 32 function.
The 32-bit LoadLibrary function and the getprocaddress function exist in the 32-bit kernel.dll, in order to obtain the two functions, the 32-bit kernel32.dll needs to be loaded into a system memory through a 64-bit program, a PE file of the 32-bit kernel32.dll is opened through corresponding assembly software, a PE file header of the kernel32.dll is analyzed to obtain a relocation table, and then the addresses of the programs are redirected according to the addresses of the programs recorded in the relocation table to determine the real addresses of the programs. And restoring the export table according to the restored relocation table. And acquiring an import table of Kernel32.dll, acquiring a DLL (dynamic link library) and a corresponding function which the Kernel32.dll depends on, loading the corresponding DLL to acquire a function address, and filling the function address into the import table to finish the repair of the import table. The LoadLibrary function and the getprocaddress function can be obtained based on the repaired import table. Packaging the code for calling the LoadLibrary function into a LoadLibrary32 function; and encapsulating the code for calling the GetProddress function into the GetProddress 32 function.
In an embodiment, before step S12, the method further includes: the value of the modification register is 0x 23. In a 64-bit system, either a 32-bit program or a 64-bit program, after the system function is called and the system kernel is entered, the 64-bit program mode is used. For 32-bit programs, the program mode needs to be converted into a 64-bit program mode through Wow64, and the program mode needs to be converted into a 32-bit program mode through Wow64 after the calling is completed. In order to call the LoadLibrary function and getprocaddress function in 32 bits to load a 32-bit program module in a 32-bit environment, the CS register of the CPU may be modified to have a value of 0x23 by an assembler instruction such as retf, so that the CPU operates in a 32-bit mode to execute a 32-bit program.
The getprocaddress 32 function loads the target program module through LoadLibrary32, and further obtains the target function.
In one embodiment, step S13, save the parameters in the register to the stack, and adjust the pointer access range. Since programs in 64 bits pass parameters through registers and programs in 32 bits pass parameters through the stack, parameters in registers need to be saved to the stack in order to be able to call functions in the target program module. Meanwhile, the maximum access range of the program pointer is 0 xfffffffffffin the 32-bit mode, and the maximum access range of the program pointer is 0 xfffffffffffffffffffffin the 64-bit mode. Under the condition of loading a random base address of a 64-bit program, the address of a pointer is generally larger than 0xfffffffff, so that a CPU in a 32-bit mode cannot access parameters in a stack, and therefore, the access range of the program pointer needs to be further modified, and the access base address is modified to an address within 0 xffffffffff. For example, the base address of the PE file of the 64-bit program is modified to an address within 0xfffffffff, and the random base address of the PE file is removed.
Finally, the 32-bit program module can be loaded and the target function in the 32-bit program module is called, so that the 64-bit program calling the 32-bit program module is realized.
Through the embodiments, the method for calling the 32-bit program module by the 64-bit program provided by the invention can realize that the 64-bit program calls the 32-bit program module, the 64-bit program and the 32-bit program module run in the same process, each function to be called does not need to be packaged independently, the process is not synchronized, and an additional registration component is not needed.
FIG. 2 is a block diagram illustrating an apparatus for a 64-bit procedure call to a 32-bit procedure module in accordance with an illustrative embodiment. Referring to fig. 2, the device for calling the 32-bit program module by the 64-bit program comprises a first calling module 201, a loading module 202, a pointer module 203 and a second calling module 204.
The first calling module 201 is configured to call the LoadLibrary32 function, getprocaddress 32 function.
The load module 202 is configured to load a target program module via the LoadLibrary32 function, the getprocaddress 32 function, and obtain a target function.
The pointer module 203 is configured to save parameters in registers to the stack and adjust pointer access ranges.
The second calling module 204 is configured to call a target function in a target program module.
FIG. 3 is a block diagram illustrating an apparatus for a 64-bit procedure call to a 32-bit procedure module in accordance with an illustrative embodiment. Referring to fig. 3, the apparatus for calling a 32-bit program module by a 64-bit program further includes an encapsulation module 301.
The encapsulation module 301 is used to load 32-bit kernels 32.dll to the memory under a 64-bit program;
repairing redirection of Kernel32.dll, repairing import table and export table; acquiring a LoadLibrary function and a GetProdcAddress function in Kernel 32.dll; the code calling the LoadLibrary function is packaged as the LoadLibrary32 function, and the code calling the getprocaddress function is packaged as the getprocaddress 32 function.
FIG. 4 is a block diagram illustrating an apparatus for a 64-bit procedure call to a 32-bit procedure module in accordance with an illustrative embodiment. Referring to fig. 4, the means for the 64-bit program to call a 32-bit program module also includes a register conversion module 401. The register conversion module 401 is configured to modify the value of the register to 0x 23.
The pointer module 203 adjusts the pointer access range including:
and modifying the base address of the PE file of the 64-bit program into an address within 0 xffffffff.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
FIG. 5 is a block diagram illustrating a computer device 500 for 64-bit procedure calls to 32-bit procedure modules in accordance with an exemplary embodiment. For example, the computer device 500 may be provided as a server. Referring to fig. 5, the computer device 500 includes a processor 501, and the number of the processors may be set to one or more as necessary. The computer device 500 further comprises a memory 502 for storing instructions, such as an application program, executable by the processor 501. The number of the memories can be set to one or more according to needs. Which may store one or more application programs. The processor 501 is configured to execute instructions to perform the method of the 64-bit procedure call 32-bit procedure module described above.
As will be appreciated by one skilled in the art, the embodiments herein may be provided as a method, apparatus (device), or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present disclosure may take the form of a computer program product embodied on one or more computer-usable storage media having computer-usable program code embodied in the medium. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data, including, but not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer, and the like. In addition, communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media as known to those skilled in the art.
The present disclosure is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (devices) and computer program products according to embodiments herein. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that an article or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such article or apparatus. Without further limitation, an element defined by the phrase "comprising … …" does not exclude the presence of additional like elements in the article or device comprising the element.
While the preferred embodiments herein have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. It is therefore intended that the following appended claims be interpreted as including the preferred embodiments and all such alterations and modifications as fall within the scope of this disclosure.
It will be apparent to those skilled in the art that various changes and modifications may be made herein without departing from the spirit and scope thereof. Thus, it is intended that such changes and modifications be included herein, provided they come within the scope of the appended claims and their equivalents.

Claims (10)

1. A method for a 64-bit program to call a 32-bit program module, comprising:
calling LoadLibrary32 function and GetProdcAddress 32 function;
loading a 32-bit target program module by calling a LoadLibrary function through the LoadLibrary32 function, and calling a GetPrAddRess function through the GetPrAddRess 32 function to obtain a target function in the target program module;
saving the parameters in the register to a stack, and adjusting the access range of the pointer;
and calling a target function in the target program module.
2. The method of claim 1, wherein the calling the LoadLibrary32 function and the getprocaddress 32 function is preceded by:
loading 32-bit Kernel32.dll to a memory under a 64-bit program;
repairing redirection of Kernel32.dll, repairing import table and export table;
acquiring a LoadLibrary function and a GetProdcAddress function in Kernel 32.dll;
and packaging the code for calling the LoadLibrary function into a LoadLibrary32 function, and packaging the code for calling the GetProddress function into a GetProddress 32 function.
3. The method of claim 1, wherein the 64-bit procedure calls a 32-bit procedure module, further comprising:
the value of the modification register is 0x 23.
4. The method of claim 2, wherein the adjusting the pointer access range comprises:
and modifying the base address of the PE file of the 64-bit program into an address within 0 xffffffff.
5. An apparatus for a 64-bit procedure to call a 32-bit procedure module, comprising:
the first calling module is used for calling a LoadLibrary32 function and a GetProdcAddress 32 function;
the loading module is used for loading a 32-bit target program module by calling a LoadLibrary function through the LoadLibrary32 function, and calling a GetProddress function through the GetProddress 32 function to acquire a target function in the target program module;
the pointer module is used for storing the parameters in the register into a stack and adjusting the access range of the pointer;
and the second calling module is used for calling the target function in the target program module.
6. The apparatus for 64-bit procedure calls to a 32-bit procedure module according to claim 5, further comprising an encapsulation module for:
loading 32-bit Kernel32.dll to a memory under a 64-bit program;
repairing redirection of Kernel32.dll, repairing import table and export table;
acquiring a LoadLibrary function and a GetProdcAddress function in Kernel 32.dll;
and packaging the code for calling the LoadLibrary function into a LoadLibrary32 function, and packaging the code for calling the GetProddress function into a GetProddress 32 function.
7. The apparatus of claim 5 further comprising a register conversion module for modifying the register to a value of 0x 23. .
8. The apparatus of claim 6, wherein the means for the 64-bit procedure to invoke the 32-bit procedure module, wherein the adjusting the pointer access range comprises:
and modifying the base address of the PE file of the 64-bit program into an address within 0 xffffffff.
9. A computer-readable storage medium, on which a computer program is stored, characterized in that the computer program, when executed, implements the steps of the method according to any one of claims 1-4.
10. A computer arrangement comprising a processor, a memory and a computer program stored on the memory, characterized in that the steps of the method according to any of claims 1-4 are implemented when the computer program is executed by the processor.
CN201911375244.7A 2019-12-27 2019-12-27 Method, device, medium and equipment for calling 32-bit program module by 64-bit program Pending CN111142969A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911375244.7A CN111142969A (en) 2019-12-27 2019-12-27 Method, device, medium and equipment for calling 32-bit program module by 64-bit program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911375244.7A CN111142969A (en) 2019-12-27 2019-12-27 Method, device, medium and equipment for calling 32-bit program module by 64-bit program

Publications (1)

Publication Number Publication Date
CN111142969A true CN111142969A (en) 2020-05-12

Family

ID=70520885

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911375244.7A Pending CN111142969A (en) 2019-12-27 2019-12-27 Method, device, medium and equipment for calling 32-bit program module by 64-bit program

Country Status (1)

Country Link
CN (1) CN111142969A (en)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102098510A (en) * 2010-11-25 2011-06-15 深圳市融创天下科技发展有限公司 Methods and devices for decoding and coding audio/video data
WO2011159005A1 (en) * 2010-06-15 2011-12-22 주식회사 파수닷컴 Device for injecting an application module, computing device having a function of injecting an application module, and recording medium having a program recorded thereon for executing a method for injection of an application module
CN102651690A (en) * 2011-02-28 2012-08-29 国际商业机器公司 Method and device for controlling shared memory
CN102662739A (en) * 2012-03-23 2012-09-12 深圳市文鼎创数据科技有限公司 Method and device for realizing function calling
CN103218428A (en) * 2013-04-09 2013-07-24 深圳市九洲电器有限公司 Dynamic link method and system
CN103455361A (en) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 Design method for calling 32-bit decoding library under 64-bit operating system
US20150189034A1 (en) * 2013-12-31 2015-07-02 Rasesh Kelkar Enhanced Shared Memory Based Communication Driver for Improved Performance and Scalability
CN104951296A (en) * 2014-03-28 2015-09-30 英特尔公司 Inter-architecture compatability module to allow code module of one architecture to use library module of another architecture
US20160085604A1 (en) * 2014-09-24 2016-03-24 Unisys Corporation Dynamic method invocation via proxy framework
CN107291480A (en) * 2017-08-15 2017-10-24 中国农业银行股份有限公司 A kind of function calling method and device
CN108255719A (en) * 2018-01-11 2018-07-06 武汉斗鱼网络科技有限公司 A kind of application program dump file acquisition methods, device and electronic equipment
CN109614165A (en) * 2018-12-04 2019-04-12 山东财经大学 A kind of parallel operation method of the multi version of com component and device
CN110554998A (en) * 2018-03-30 2019-12-10 腾讯科技(深圳)有限公司 hook method, device, terminal and storage medium for replacing function internal instruction

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011159005A1 (en) * 2010-06-15 2011-12-22 주식회사 파수닷컴 Device for injecting an application module, computing device having a function of injecting an application module, and recording medium having a program recorded thereon for executing a method for injection of an application module
CN102098510A (en) * 2010-11-25 2011-06-15 深圳市融创天下科技发展有限公司 Methods and devices for decoding and coding audio/video data
CN102651690A (en) * 2011-02-28 2012-08-29 国际商业机器公司 Method and device for controlling shared memory
CN102662739A (en) * 2012-03-23 2012-09-12 深圳市文鼎创数据科技有限公司 Method and device for realizing function calling
CN103218428A (en) * 2013-04-09 2013-07-24 深圳市九洲电器有限公司 Dynamic link method and system
CN103455361A (en) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 Design method for calling 32-bit decoding library under 64-bit operating system
US20150189034A1 (en) * 2013-12-31 2015-07-02 Rasesh Kelkar Enhanced Shared Memory Based Communication Driver for Improved Performance and Scalability
CN104951296A (en) * 2014-03-28 2015-09-30 英特尔公司 Inter-architecture compatability module to allow code module of one architecture to use library module of another architecture
US20160085604A1 (en) * 2014-09-24 2016-03-24 Unisys Corporation Dynamic method invocation via proxy framework
CN107291480A (en) * 2017-08-15 2017-10-24 中国农业银行股份有限公司 A kind of function calling method and device
CN108255719A (en) * 2018-01-11 2018-07-06 武汉斗鱼网络科技有限公司 A kind of application program dump file acquisition methods, device and electronic equipment
CN110554998A (en) * 2018-03-30 2019-12-10 腾讯科技(深圳)有限公司 hook method, device, terminal and storage medium for replacing function internal instruction
CN109614165A (en) * 2018-12-04 2019-04-12 山东财经大学 A kind of parallel operation method of the multi version of com component and device

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
ALEX SKALETSKY; TEVI DEVOR;: "Dynamic program analysis of Microsoft Windows applications", 《2010 IEEE INTERNATIONAL SYMPOSIUM ON PERFORMANCE ANALYSIS OF SYSTEMS & SOFTWARE (ISPASS)》 *
JIYANGLIN: "64位程序如何调用32位dll(简单解决方案)", 《HTTPS://BLOG.CSDN.NET/JIYANGLIN/ARTICLE/DETAILS/53548124》 *
JZDWAJUE: "32位程序注入64位DLL到64位进程", 《HTTPS://WWW.CNBLOGS.COM/JZDWAJUE/P/7029145.HTML》 *
MIKE BECKER: "Accessing 32-bit DLLs from 64-bit code", 《HTTPS://BLOG.MATTMAGS.COM/2007/06/30/ACCESSING-32-BIT-DLLS-FROM-64-BIT-CODE/》 *
SCARLETT_OHARA: "64位程序调用32位dll", 《HTTPS://BLOG.CSDN.NET/SCARLETT_OHARA/ARTICLE/DETAILS/103086617》 *
周理军等: "基于Windows的API函数挂接技术及其实现", 《上海理工大学学报》 *
曹子建; 容晓峰; 刘宝龙: "一种64位进程调用32位DLL的方法", 《计算机技术与发展》 *
陈国钦等: "多窗口的动态链接库设计", 《福建电脑》 *

Similar Documents

Publication Publication Date Title
US11626972B2 (en) Data processing method and apparatus
CN107077337B (en) System and method for executing application code compiled from two instruction set architectures
CN110768912A (en) API gateway current limiting method and device
CN109933350B (en) Method and device for embedding codes in application and electronic equipment
CN111290866B (en) Service processing method and device
CN110058864B (en) Micro-service deployment method and device
TWI754658B (en) Application compression method and device
WO2014022980A1 (en) Isa bridging including support for call to overidding virtual functions
WO2021082661A1 (en) Webpage screenshot capturing method, apparatus and device
CN113867719A (en) Third-party library function disassembling and calling method and system for software platform
CN111142969A (en) Method, device, medium and equipment for calling 32-bit program module by 64-bit program
CN112579310A (en) Service calling method and device
US8341606B2 (en) Method of invoking inlined method and java virtual machine using the method
CN111061501A (en) Hot updating method of android application and computer readable storage medium
CN111309402A (en) Data monitoring and application program processing method, device and equipment
CN111651469B (en) Method and device for managing blockchain system contracts
CN110750271B (en) Service aggregation, method and device for executing aggregated service and electronic equipment
CN111061686A (en) Resource processing method, device, server and storage medium
CN109561123B (en) Token caching method and device
LU102412B1 (en) A Method and Apparatus for Embedding Codes in an Application, and an Electronic Device
CN112866354B (en) Resource packaging method and device and asset packaging method
CN106909408B (en) Method and device for calling APK plug-in of application program
CN112835654B (en) Method, device and processor for calling functions in dynamic link library
CN115794927B (en) Service function expansion method and system
US10789075B2 (en) Method and apparatus for security certified smart card OS diversification system

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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200512