in reply to Perl 5.8 on WIn32 vs perl56.dll, DBI and ODBC

These dll's have perl<version>.dll hard-coded in them, where <version> is the version of PERL that the DBI and ODBC modules were installed with.
Not quite. When those modules were compiled, they were linked against perl56.dll. Perl 5.6.x is not binary compatible with perl 5.8.x.

As for your PPM troubles, says:

The PPM config file, ppm.xml, got corrupted and PPM no longer works properly.
If this occurs, a new minimal PPM config file can be generated using the 'genconfig' command at a Command Prompt:
C:\> ppm genconfig &gt; ppm.xml
The new ppm.xml should be copied to the directory Perl/site/lib. PPM should now work properly, but all information about previously installed packages will be lost.

Of all the things I've lost, I miss my mind the most.
perl -e "$q=$_;map({chr unpack qq;H*;,$_}split(q;;,q*H*));print;$q/$q;"