An information processing apparatus connectable to an external device,
having a first driver storage unit to store a first driver to control a
connected external device in a general-purpose manner, a determination
unit to determine whether or not a second driver, to control the
connected external device in a device-specific manner exists in the
external device, an acquisition unit to, if the determination unit
determines that the second driver exits, obtain the second driver from
the connected external device, and a second driver storage unit to store
the obtained second driver.