Transfer programs to another machine

My ancient XP laptop is (probably) dying. The screen has lots of vertical lines on it (so I have a separate monitor). The hard drive is starting to creak, etc.

So I have bought a "refurbished" XP laptop as a replacement. I need this to run my scanners (which won't run under WinX), to run some of my old programs such as genealogy (which also won't run under WinX), and to take with me to give "slide show" talks. My desktop WinX (spit) I use for "everything else", including internet use.

I don't store much data, and transfer that (to & from the Desktop) by USB memory stick.

Question:- How can I transfer all the programs across ?

Yes, I know - by finding (Ha !) all the original diskettes. tedious, or what ?

Can I connect them by a cross-linked cable ? Or would Macrium's Reflect do the job ?

What do you suggest ?
Unless the 2 comps are identical, an image prolly wont work, all drivers from old one are not (necessarily) the same. Trying to copy over just the (particular) program files also a not, as most prog installs make registry settings/entries. Which a just 'copy' dosen't do. You pretty much need to find those install disks, , , , ,
Thank you both for your responses.

Erm... ISTR when I got the Desktop [with Win7 (spit) ] I just plugged in a cable to the LapTop, and away it went. But I then found that many of the programs & the scanners didn't work.

I COULD boot up the old one to DOS, and just copy "everything", including the registry, and then fire up the new LapTop also on DOS, and then paste all that onto it, except for the Registry, to which I could just add the old one. Somehow ?

Similarly, deal with the drivers separately... i.e. on a cse by case basis as & when needed ?
drivers can be found at the manufacturers website for the particular brand, model and model number, and you can look at device manager for which drivers are needed. any not installed will have yellow exclamation points.

programs install registry entries, dll cache dll's and various files here and there, you could attempt to search the registry for all entries pertaining to an individual program, export them to desktop or flash drive and then merge them into the new registry, but this is very time consuming and may or may not get all the pertinent registry entries as some are not listed with the plain jane name of the program. But, you could try, like cornemuse states the install cds would be best, and you might also look online for the programs website may have downloads available for your particular program.
Thank you. Before I try that, can I / How can I set a milestone to revert to if all goes pear-shaped ? And, in that event, how do I revert ?
on the new pc, you can set a system restore, or use ERUNT which I like better, but I cannot really say as I have never had to reinstall a program without the install software.

but remember that both the above only save the registries and with ERUNT you have the option to save all 5 hives not just a few.