You can run X -configure. It will try to probe all the available devices and write XF86Config/XF86Config-4 file. Copy that file to /etc/X11/XF86Config-4
There are various set of device detection mechenisms in debian. But none of them is integrated into the installer.
discover is one of them. install it from apt archive and test if it able to detect your devices.
There are various printer driver architectures/daemons available for debian.
In my case I have been using cups with RedHat and Debian. It supports wide range of devices and is easy to configure.
Cups should have driver for Cannon inkjet printer. If you use the cups web based interface, it walks you through the whole install process which helps in case of newbie
HTH
Supreet
PS: It helps if you send exact error messages