[go: up one dir, main page]

HK1068702B - Method of controlling user application program - Google Patents

Method of controlling user application program Download PDF

Info

Publication number
HK1068702B
HK1068702B HK05100974.5A HK05100974A HK1068702B HK 1068702 B HK1068702 B HK 1068702B HK 05100974 A HK05100974 A HK 05100974A HK 1068702 B HK1068702 B HK 1068702B
Authority
HK
Hong Kong
Prior art keywords
file
user application
data
client computer
priority
Prior art date
Application number
HK05100974.5A
Other languages
Chinese (zh)
Other versions
HK1068702A1 (en
Inventor
郑翔元
Original Assignee
韩国乐线株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020030004366A external-priority patent/KR100408758B1/en
Application filed by 韩国乐线株式会社 filed Critical 韩国乐线株式会社
Publication of HK1068702A1 publication Critical patent/HK1068702A1/en
Publication of HK1068702B publication Critical patent/HK1068702B/en

Links

Description

Control method of user application program
Technical Field
The present invention relates to a method for controlling a user application executed on a user terminal, and more particularly, to a method for controlling a user application capable of executing a user application while downloading necessary data from a predetermined server during execution of the user application.
Background
A package (offline game) of the related art stores a game program and all data necessary for the game in a storage medium such as a CD (compact disc) and then distributes the game program to a user. However, a software product in the form of a package including such a package game is illegally copied and is often used by a user who does not have a legitimate right. Therefore, if such a package-form software product is made online, it is possible to take advantage of various advantages of online software such as automatic update, as well as preventing the above-described illegal copying. For this reason, there is a need for a method of easily converting a software product in the form of a package into online software.
In addition, even in the case of online software, the online game cannot be played until all files required for playing the online game are downloaded to the user computer. Moreover, online games will become more complex as they evolve, and the amount of data that must be downloaded by a user in the early stages will become greater. Recently, in order to play an online game, a case where the amount of data that must be downloaded in the early stage exceeds 200Mbyte frequently occurs. As described above, since the amount of data that must be downloaded in the early stage is excessively large, there is a disadvantage that the initial user of the online game cannot easily participate in the online game. Therefore, there is a need for a method of playing an online game after downloading only a small portion thereof even though the amount of data required to play the entire online game is large.
The present invention has been made to solve the above-mentioned problems, and an object of the present invention is to easily make a conventional package-type software product online, obtain an online data stream (on-line) effect, and effectively prevent fraudulent use (hacking), decryption (cracking), and illegal use of software by maintaining a connection to a server through a network.
Further, the present invention has an object to prevent illegal copying by periodically monitoring whether package software is illegally copied by easily making the package software online, and stopping the operation of the package software if the package software is an illegally copied product. It is another object of the present invention to charge package software for the usage time by making the package software online.
Further, the present invention has an object to download online software in units of file modules, not in units of entire files, to minimize the amount of data that must be downloaded at an initial stage, so that a user can easily enjoy a game at an initial stage.
It is another object of the present invention to optimize downloaded data by checking a data pattern (pattern) required for an online game, and to receive necessary data previously downloaded through the background P2P using the checked data pattern when a user application requests to read out the data, thereby minimizing the waiting time of a user for downloading data and minimizing the use of a server bandwidth.
Disclosure of Invention
In order to achieve the above object, according to one embodiment of the present invention, there is provided a user application control method for controlling a user application executed by a client computer, comprising the steps of: a step of receiving a file read request for a file from a user application; judging whether the file is stored in the client computer; if the file is stored in the client computer, transmitting the data of the file to the user application program; and receiving a part of data of the file from a predetermined server connected to the client computer through a network, in which the file is stored, and storing the received data in the client computer, if the file is not stored in the client computer, and then transmitting the received data to the user application.
Drawings
Fig. 1 is a diagram showing a network connection of a client computer and a file server according to the present invention.
FIG. 2 is a block diagram showing the relationship of a user application, an online data stream file repository, and a network interface included in a client computer of the present invention.
Fig. 3 is a flowchart showing a procedure of processing a file read request from a user application executed in a client computer according to the present invention.
Fig. 4 is a flowchart showing a procedure of processing a file write request from a user application executed in a client computer according to the present invention.
Fig. 5 is a diagram showing the relationship between data modules and priority files in the case where the data modules in the file accessed by the user application of the present invention are structured to constitute the priority files.
Fig. 6 is a diagram showing an index table according to an embodiment of the present invention.
Detailed Description
Embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
Fig. 1 is a diagram showing a network connection of a client computer and a file server according to the present invention.
In order to play an online game, a user connects to a predetermined online game server 104 via the internet on his or her own client computer 102 or 103. In the case of the conventional package-type game software, the present invention can easily realize the online game, and the game server 104 can be connected to the game software during the game. That is, in the case of the conventional package game, the user can start the game directly after downloading only all files or data of the game by the present invention by connecting to the game server 104 without purchasing a CD or the like.
FIG. 2 is a block diagram showing the relationship of a user application, an online data stream file repository, and a network interface embodied in a client computer utilizing the present invention. The user application 201 is an existing package or a part of an existing package modified by the present invention. Further, the user application 201 may be existing online software. The present invention is used to bring existing package software online to obtain various useful effects, but some concepts of the present invention can also be easily applied to existing online software to obtain useful effects.
The online streaming file library (online streaming file library)202 hooks (hooks) a file read request and a file write request of the user application 201 to perform the file read request and the file write request, and has functions of maintaining a connection with the server 104, monitoring illegal software use, and the like. In addition, the online data stream repository also has the function of downloading the required data from a server or other client computers adjacent on the network. The online data stream file repository may also have different forms other than a repository.
The online data stream file repository 202 is hooked to a file input output API (application program interface) of an existing operating system standard. Examples of the file input/output API of the existing operating system standard include functions such as CreateFile (), ReadFile (), and WriteFile () in the windows operating system of microsoft corporation. In the window execution system, there is an Import Section (Import Section) for all Win32 APIs. The lead-in is a Jump vector table (Jump vector table). For example, in the case of a CreateFile () function, a pointer to the aforementioned CreateFile () function is saved in the import fragment. Therefore, when a CreateFile () function is used in an executable file (a file having an. exe extension in a window runtime system), the executable file refers to the above-mentioned lead-in segment, obtains a pointer to the CreateFile () function, and executes the function to which the pointer refers. The API Hooking function (API Hooking) changes the address of each input/output function in the above-described import segment to the address of another function. For example, in the lead-in section, if the pointer of the CreateFile () function does not point to the address of the CreateFile () function provided by the execution hierarchy, but is changed to point to an address of another function, when the CreateFile () function is executed in the user application, the CreateFile () function provided by the execution hierarchy is not executed, but the other function is executed.
In order to execute the API hook function, the API hook function is executed by adding a hook initialization function and an API hook end function to the beginning and end of a main function (main function) of a user application (e.g., a winmain () function in a window system). The API hook initialization function is a function provided by the present invention, and has a function of changing the pointer of each input/output API function in the above-mentioned lead-in section of the user application program to the pointer of the input/output function of the present invention. The API hook termination function has a function of restoring the changed import section. Therefore, according to the present invention, the online implementation of package software is performed by adding 2 functions to the main function of the existing package software. According to other embodiments of the present invention, the entry pointer (entry point) itself of the main function may be hooked. As an example of this method, there is a method similar to a method in which a computer virus program attaches its own code to an executable file. According to the present embodiment, there is an advantage that the online of the package software can be realized without modifying all the applications.
Fig. 3 is a flowchart showing a procedure for processing a file read request from a user application program, which is executed in a client computer by using the present invention.
Firstly, by using the invention, the jump vector table of the input/output API function for the API hook function is modified to execute the input/output API function of the invention. In step 301, a file read request is received from the user application 201, and the request is hooked (hooking). That is, the ReadFile () function in the user application 201 is executed, but the execution of the ReadFile () function is suspended, and the online data stream File input/output API function (onlineviewing File I/O API function) of the present invention is executed. The online data stream file input output API functions of the present invention are stored in the online data stream file repository 202.
In step 302, the online data stream file input/output API function of the present invention determines whether or not the file requested by the user application 201 is stored in the client computer where the user application 201 is stored. If the file requested by the user application 201 is stored in the client computer, the data of the file is read in step 303, and the data of the file is transmitted to the user application 201. The data of the file may be all the data of the file or may be a part of the data included in the file. For example, in the case where the user application is a predetermined game program, the game program is a file storing graphic data necessary for executing the game program, and the game program requires the graphic data and therefore issues a read request.
If the data requested by the user application 201 is not stored in the local client computer in step 302, the online data stream file input output API function is connected to the prescribed server 104 via the network interface 203 in step 304. The predetermined server is connected to the client computer via a network. The predetermined server stores all data required by the user application 201.
The online data stream file input output API function receives data for a file from the server 104 in step 305 and hooks the received data to the local client computer in step 306. There is an advantage that not only the same data is repeatedly downloaded by such hooking, but also data estimated to be downloaded is downloaded in advance by using the concept of a priority file described later. For example, if it is determined that the user application 201 uses both the module 5 and the module 6 based on the result of the investigation of the operation of the module 5 of the file 1 while the user application 201 is executed, the module 5 and the module 6 are downloaded from the server 104 and hooked.
In step 307, the online data stream file input output API function transmits the data of the file received from the server 104 to the user application 201. In this way, the user application 201 can continue to be executed.
For example, although the total data amount of the data file required for executing the entire game software is 200Mbyte, if the graphics data required for displaying the current screen by the game software is 3Mbyte and the graphics file is stored in the local client computer, the server storing the graphics file is connected to download the required graphics data and use it. Therefore, according to the present invention, the user can easily enjoy the online game without downloading a large amount of data files at an initial stage. In addition, when the package software is online by the present invention, only a part of necessary data may be downloaded from the server at a proper time to play the game. That is, according to the present invention, the user application can be executed without saving all data necessary for executing the user application in the local client computer in advance.
Further, according to another embodiment of the present invention, a part of data of a file is received to perform data reading and reception of the file, the part of data being received using an area distance (offset) of the file and a size of the part of data. This will be described in detail later with reference to fig. 5 and 6.
According to another embodiment of the present invention, while a file read request is not issued by the user application 201 executed on one client computer 102, it is recognized whether or not data necessary for executing the user application 201 is stored in another client computer 103 adjacent to the network, and if the necessary data is stored in the other client computer 103, the data is received and stored in the client computer 102. Similarly, other client computers 103 may also receive data from the client computer 102. The program that executes this processing may start in the background at the same time as the user application 201 starts, or may start execution from the client computer 102, 103 independently of the start and end of the user application 201. According to the present invention, since necessary data is downloaded in advance and stored in the local client computer before the user application requests the data, the user application can be executed efficiently, and the load on the server 104 can be reduced.
According to another embodiment of the present invention, a data read request is hooked from the user application 201, and if the data is stored in the local client computer, the data is transmitted to the user application 201, and if the data is not stored in the local client computer, it is determined whether the data is stored in another client computer adjacent to the network. If saved in another client computer, the data is downloaded using P2P. If not, the server is connected to download.
According to another embodiment of the present invention, a data read request is hooked from the user application 201, and the user application 201 stored in the client computer and the data associated with the user application 201 are checked in response to the file read request. If the user application 201 or the data is modulated, the user application 201 or the data is considered to be stolen or decrypted, and therefore, the situation is reported to the server 104. The above-described judgment of whether or not to be modulated may employ various methods of checking whether or not data is modulated, such as CRC check (cyclic redundancy check). Therefore, according to the present invention, it is possible to confirm whether the user application is stolen or decrypted, and take appropriate measures therefor. The checking of the user applications and data of the present invention may be performed at certain time intervals.
According to another embodiment of the present invention, a file read request from the user application 201 is hooked to the server 104 at predetermined time intervals, and predetermined authentication is performed. The predetermined time interval includes a fixed time interval and also includes a time interval that is not fixed. The authentication is an authentication related to whether or not the user of the user application is a legitimate user. If the authentication fails, the online data stream file input output API function does not perform any processing on the subsequent file read request of the user application, or displays an error message on the user display and causes the user application not to execute correctly. According to the present embodiment, it is possible to prevent a user from using an illegal program by illegal copying or the like. Further, according to the present invention, it is possible to simply bring a package online and perform charging in proportion to the usage time. That is, although it is difficult to charge the package based on the usage time, the present invention makes it online, and the server 104 manages the usage time of the user application, thereby enabling the user to be charged based on the usage time. In the case of a general package game, since the game is completed in about one month and the game is not played any more, the user can enjoy the game by paying a use fee of about one month. Therefore, there is an advantage that the user can enjoy the game program at a low cost.
FIG. 4 is a flow chart showing the sequence of processing file write requests from a user application executed in a client computer utilizing the present invention.
In step 401, a file write request is received from the user application 201 and the request is hooked (hooking). That is, the user application 201 executes the WriteFile () function, but since the execution of the WriteFile () function is suspended, the online data stream file input/output API function of the present invention is executed. An online data stream file input/output API function corresponding to the above-described WriteFile () function is stored in the online data stream file repository 202.
In step 402, the online data stream file input/output API function of the present invention determines whether the file requested by the user application 201 needs to be uploaded (Upload) to the server 104. If the file requested by the user application 201 is not required to be uploaded to the server 104, the user application 201 saves the file requested by the write request in the local client computer in step 404. For example, data that does not need to be managed by the server 104 among the user-dependent data may be saved for management only in the local client computer. Thus, whether any data needs to be uploaded to the server is determined by the provider of the computer program of the present invention, and the logic associated therewith is included in the online data stream file input output API function described above.
If the file requested by the user application 201 is uploaded to the server 104, the online data stream file input/output API function is connected to the predetermined server 104 via the network interface 203 in step 403. The predetermined server 104 is connected to the client computer via a network.
In step 405, the online data stream file input output API function hooks data of the file uploaded to the server 104 to the local client computer. Such hooking makes it unnecessary to download the same data from the server 104 again when the data is read, and therefore, the efficiency of executing the program can be improved.
In step 406, the online data stream file input output API function uploads the data of the file to be uploaded to the server 104.
Fig. 5 is a diagram showing the relationship between data modules and priority files in the case where priority files (priority files) are formed by filing (profiling) data modules in files accessed by a user application program according to the present invention.
In order to explain the present embodiment more easily, in a program for a user application to play a game, the program name is assumed to be game. Dat is a data file having a size of 10 Mbyte. And a part of the main function of the game.exe is modified, and the file input and output API function is hooked by the online data stream file input and output API function.
First, a procedure of profiling (profiling) a user application for searching data to be referred to in order will be described.
The user application 201 identifies data to be referred to while causing the user application 201 to execute. According to an embodiment of the present invention, while the user application 201 is executed, data to be referred to is collectively stored in one file for a certain period of time, but this is merely an example of a priority file (priority file) in the present invention. The priority file may be a part of data stored in one file or a combination of parts of data stored in a plurality of files. That is, the data module a included in the file 1 and the data module B included in the file 2 may be combined to generate one priority file. Thus, there is an advantage in that hacking and decryption will become more difficult due to difficulty in grasping the structure of data downloaded while executing the user application.
Exe is executed while generating a priority file by aggregating the referenced data in units of 5 seconds. For example, if the data for which the read request is made within 0 to 5 seconds is 1024 bytes from the space 100 of the data1.dat file, the game is executed, and the 1024 bytes of data from the space 100 of the data1.dat file are stored in 502 of the priority file 0. Exe, and data in which a read request occurs during 5 to 10 seconds is stored in the priority file 1. Exe is executed, and no read request occurs during 5 seconds to 15 seconds. Exe is executed, and data in which a read request occurs during from 15 seconds to 20 seconds is 4096 bytes in size from the area distance 2000 of the data1.dat file, but it is saved in 503 of the priority file 3. In this embodiment, data in which a read request has occurred is stored in one file in units of 5 seconds, and when there is no read request, only the number of the priority file is increased without generating the priority file. For example, after the generation of the priority file 0, the priority files generated subsequently may be generated in the order of the priority files 1, 2, and the like, without generating an empty priority file. In any case, if the user application is executed, data with a high possibility of being requested is first designated as data with a high priority and used. That is, the data modules may be managed as different files according to the priority order, and the priority order may be given to each data module in one file, and only the priority order may be managed to read out the necessary data module and provide the read data module to the user application. The priority file thus generated is stored in the server 104.
According to another embodiment of the present invention, priority may not be given in the order of data modules having a high possibility of being requested during execution of a program, but priority may be determined in consideration of different data sizes and the like. When a data read request is made from a user application, if data having a different priority is requested, the data read request is processed in the order of the data having the higher priority, and the data requested first is read in the same priority.
Further, according to another embodiment of the present invention, in the case where the priority order is high, a data read request from the user application is received in the priority order, and then the data is immediately received from the server 104, but in the case where the priority order is low, it is downloaded from another client computer adjacent thereto using the background P2P.
Thus, if the priority file is generated in advance, the priority file can be generated in the order of the required data at the start of the user application. Therefore, statistically, since it is expected that the user application will request the data of the priority file 3 after requesting the priority file 0, the priority file 3 is downloaded in advance to the local client computer in the background during the period when the user application does not make a read request, for example, during 5 seconds to 15 seconds after the start of the game.exe in the above-described embodiment, so that it is not necessary to wait for downloading when necessary since the user downloads the required data to the local client computer in advance when executing the user application.
In addition, in order to allow each user to execute different commands first while executing the user application, the order of data requested by each user application may be made different. According to another embodiment of the present invention, compared to this case, the user application usage patterns of a plurality of users are analyzed and reflected, thereby generating a priority file. Thus, various statistical methods known in the art can be used. For example, a plurality of users may execute a user application program, analyze request data of each user, give a certain weight to the data requested first if the data is requested first, and store the most requested data as a priority file for the time slot according to the time slot. According to another embodiment of the present invention, the priority file is generated by first arbitrarily generating the priority file, and then giving priority to the data requested by the server 104 in the order of the most requested data, observing the frequency of the requested data while using the user application.
Fig. 6 is a diagram illustrating an index table constructed according to an embodiment of the present invention.
The index table (index table)600 contains information on how large data modules the priority file starts from, and is generated at the time of filing. The index table of fig. 6 assumes that there is one data file and does not include information relating to the data file, but also includes information relating to which data file corresponding to the priority file is when the data file is a plurality of individuals. Fig. 6 is an index table 600 for a priority file composed of the profiling of fig. 5.
The following describes in detail the processing when the user program issues a data read request, with reference to the index table 600 of fig. 6 and fig. 3.
Hereinafter, a case will be described as an example where the game.exe as the user application issues a file read request for 1024 bytes of data starting from the region distance 2500 of data1.dat as the data file. The user application may use the ReadFile () function to request that a certain size of data be read starting from a particular region distance of a particular file. The ReadFile () function of the user application is hooked by the online data stream file input output API function.
The online data stream file input/output API function refers to the index table 600 in order to determine which priority file the requested data is stored in. As a result of referring to the index table 600, it is recognized that the priority file corresponding to the above data is the priority file 3. The online data stream file input output API function confirms whether the priority file 3 is stored in the local client computer.
If the priority file is stored in the local client computer, the data of the file is read out, and only the data of 1024 bytes requested by the game.
If the priority file is not stored in the local client computer, the online data stream file input/output API function is connected to the predetermined server 104 via the network interface 203. The predetermined server is connected to the local client computer via a network, and stores all priority files. According to an embodiment of the present invention, the server 104 also stores all data excluding the priority file.
The online data stream file input output API function receives priority file 3 from server 104 and caches the received priority file 3 in the local client computer. By this cache, when the user application requests different data contained in the priority file 3, it is not necessary to download the priority file 3 again.
The online data stream file input/output API function reads the priority file 3 received from the server 104, and transmits the data requested by the game. In this way, the user application 201 can continue to execute.
In the above embodiment, a configuration in which a read request for a file is received from a user application is described as a method of hooking (hooking) a file read request from a user application. However, as described above, those skilled in the art will recognize that the present invention can be implemented by a function remapping method that maps input/output functions of a file with other functions, without using hooks, and other methods within other equivalent ranges can be used.
Furthermore, embodiments of the present invention include computer-readable media embodying various program instructions for actions to be implemented by a computer. The computer readable medium may contain program commands, data files, data structures, etc. alone or in combination. The program commands of the above-mentioned medium may be program commands specifically designed for the present invention or program commands known to those using computer software technology. Examples of the computer-readable recording medium include magnetic media (magnetic media) such as a hard disk, a floppy disk (registered trademark), and a magnetic tape, optical write media (optical media) such as a CD-ROM and a DVD, magneto-optical media (magnetic-optical media) such as a floptical disk (floptical disk), and hardware devices such as a ROM, a RAM, and a flash memory that are configured to store and execute program commands. The medium may be a transmission medium such as an optical or metal wire or a waveguide including a carrier wave for transmitting a signal specifying a program command, a data structure, and the like. Examples of the program command include not only a machine language code generated by a compiler but also a high-level language code executable by a computer using a compiler.
While the preferred embodiments of the present invention have been illustrated and described, it will be apparent to those skilled in the art that various changes in form and detail may be made therein without departing from the scope of the invention as defined in the appended claims.
ADVANTAGEOUS EFFECTS OF INVENTION
According to the invention, the existing software product in the form of a program package can be easily online, the effect of online data stream file can be obtained, and the connection with the server can be maintained through the network, thereby effectively preventing embezzlement and decryption from the outside and preventing illegal software use.
In addition, the present invention can periodically monitor whether the package software is illegally copied by easily making the existing package software online, and if the package software is an illegally copied product, the operation of the package software is stopped, thereby preventing the illegal copying. Further, according to the present invention, by making the package software online, the package software can be charged according to the usage time.
Further, according to the present invention, data to be downloaded at an initial stage is minimized in units of file modules, instead of downloading all files of online software, so that a user can enjoy a game at an initial stage. That is, according to the present invention, it is possible to execute a program without saving all program data in a local computer before the program starts, and to realize a data request of an on-demand (on-demand) response.
Further, according to the present invention, it is possible to investigate the pattern of data requested by online software, thereby optimizing downloaded data, and to download in advance according to the investigated data pattern even when a user application does not request to read out data, thereby minimizing waiting time for data download by a user and minimizing bandwidth use of a server.

Claims (17)

1. A user application control method for controlling a user application executed by a client computer, comprising the steps of:
a step of receiving a file read request for a file from a user application;
associating the file read request with a correlation function for processing the file read request, said correlation function performing the steps of:
judging whether the file is stored in the client computer;
if the file is stored in the client computer, transmitting the data of the file to the user application program; and
and a step of receiving a part of data of the file from a predetermined server connected to the client computer via a network, in which the file is stored, and storing the received data in the client computer, and then transmitting the received data to the user application program, if the file is not stored in the client computer.
2. The method of claim 1, wherein receiving a portion of the data of the file is performed using a space of the file and a size of the portion of the data.
3. The method of claim 1, further comprising the step of continuing to execute the user application in a state where only the portion of the data is received and not all of the data of the file is received.
4. The user application control method according to claim 1, wherein the step of receiving a file read request for a file from the user application includes a step of hooking the file read request for the file from the user application or mapping an original function for processing the file read request to another function.
5. The user application control method according to claim 1, further comprising a step of receiving data of the file from a predetermined server in which the file is stored, and caching the data in the client computer.
6. The user application control method of claim 1, further comprising:
identifying a second client computer storing the file; and
and a step of receiving the file from the second client computer and transmitting the file to the user application program.
7. The method according to claim 1, further comprising a step of receiving and storing data expected to be necessary for the user application from a second client computer storing the data, when a file read request for a file is not received from the user application.
8. The method of claim 7, wherein the determination of the data expected to be needed by the user application is determined based on data requested by the user application when the user application is executed in the front.
9. The user application control method according to claim 1, wherein the user application control method further comprises the steps of:
checking the user application program and data related to the user application program stored in the client computer based on the file read request; and
and reporting the user application and the data to a predetermined server connected to the client computer through a network if the user application and the data are modulated as a result of the checking.
10. The user application control method of claim 9, wherein the checking step performs a check using a cyclic redundancy check.
11. The user application control method according to claim 1, wherein the user application control method further comprises the steps of:
connecting to a predetermined server at predetermined time intervals, and performing predetermined authentication; and
when the authentication is not performed, the file read request is not processed, and the user application is not executed.
12. The method of claim 11, wherein the user of the user application is billed based on a time of use of the user application by the user.
13. The user application control method according to claim 7, wherein the user application control method further comprises the steps of:
storing at least one of a plurality of data modules in a data file accessed by a user application as a priority file in a predetermined server;
storing the distances of the data modules, the sizes of the data modules and the priority file identification marks related to the data modules in an index storage unit;
receiving a read request for any data module in the data file from the user application;
a step of identifying a priority file corresponding to the arbitrary module by referring to an index storage unit; and
and a step of receiving the priority file from the predetermined server and transmitting the priority file to the user application.
14. The user application control method of claim 13, further comprising the steps of:
identifying a second client computer storing the priority file; and
receiving the priority file from the second client computer.
15. The method of claim 13, further comprising the step of receiving and storing a priority file expected to be needed by the user application from a second client computer storing the priority file when a file read request for a file is not received from the user application.
16. The method of claim 15, wherein the determination of the priority file expected to be needed by the user application is determined based on the priority file requested by the user application when the user application is executed in the front.
17. A user application control method for controlling a user application executed by a client computer, comprising the steps of:
a step of receiving a file write request for a file from a user application;
judging whether the file is required to be uploaded to a predetermined server connected to the client computer via a network;
if the file needs to be uploaded to the specified server, uploading the file to the specified server; and
and writing the file into the client computer if the file does not need to be uploaded to the predetermined server.
HK05100974.5A 2003-01-22 2005-02-04 Method of controlling user application program HK1068702B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020030004366A KR100408758B1 (en) 2003-01-22 2003-01-22 Method for controlling user application program
KR4366/2003 2003-01-22

Publications (2)

Publication Number Publication Date
HK1068702A1 HK1068702A1 (en) 2005-04-29
HK1068702B true HK1068702B (en) 2009-02-06

Family

ID=

Similar Documents

Publication Publication Date Title
JP7297769B2 (en) Shader distribution among client machines for pre-caching
US8756694B2 (en) Prevention of exploitation of update rollback
KR101979621B1 (en) System and method for optimizing transfers of downloadable content
US7533370B2 (en) Security features in on-line and off-line delivery of applications
US7225264B2 (en) Systems and methods for delivering content over a computer network
US8880651B2 (en) Method and system for efficient download of data package
KR101238572B1 (en) Automatic update of computer-readable components to support a trusted environment
US20020188940A1 (en) Method and apparatus for gaming device software configuration
CN100416558C (en) User Application Control Methods
CN113110849A (en) Loading resources on demand
WO2002023363A1 (en) Systems and methods for delivering content over a computer network
HK1068702B (en) Method of controlling user application program
KR101741026B1 (en) Method and Computer Readable Recording Medium for Detecting Malicious Module of On-Line Game
JP7725500B2 (en) Efficient file distribution technology
KR101456389B1 (en) Server, System and Method for Providing Game Subsidiary Program
KR20130011836A (en) Server, system and method for providing game subsidiary program
US10033783B1 (en) Tracking media consumption
KR20060103733A (en) How to Control Applications Running on Your Computer
KR20060091122A (en) How to deliver content