Patent ID: 7752290

Claim:
An information processing apparatus comprising: a computer processor; a memory unit coupled to said computer processor, said memory unit configured to store a plurality of print control modules, including first and second print control modules, for performing processing corresponding to printer functions, each of the first and second print control modules supporting a plurality of types of printers, and store a management table that contains identification information of the first print control module, version information of the first print control module, and printer type information regarding printers supported by the first print control module; an obtaining unit configured to obtain, from the second print control module, version information of the second print control module and printer type information regarding the plurality of types of printers supported by the second print control module; an updating unit configured to update the management table stored in said memory unit by recording identification information of the second print control module, and the version information and the printer type information obtained by said obtaining unit in the management table, if at least one printer type of the printer type information for the second print control module obtained by said obtaining unit is identical to at least one printer type of the printer type information for the first print control module contained in the management table and if the version information of the second print control module obtained by said obtaining unit is newer than the version information of the first print control module contained in the management table, wherein said updating unit updates the management table without updating the second print control module; a recognition unit configured to recognize a printer type of a certain printer; a selection unit configured to select one of the first and second print control modules in correspondence with the printer type recognized by said recognition unit by referring to the management table updated by said updating unit; and an execution unit configured to execute the print control module selected by said selection unit.