Also aus eigener Erfahrung:
GUID kann dieselbe sein. Die eine wird ja unter
HKLM\SOFTWARE\Classes\ registriert, die andere unter
HKLM\SOFTWARE\Wow6432Node\Classes\.
In meinem Fall kompiliere ich die MyExtension32.dpr mit Delphi XE und MyExtension64.pas mit FreePascal (64 bit).
Das Argument des doppelt gepflegten Codes kann ich nicht ganz nachvollziehen - außer einem uses und 4 Exporten steht in den beiden genannten Dateien eh nichts drin, und beide verwenden dieselbe UnitMyExtension.pas.
Aber auch wenn man mit derselben Datei in Delphi XE2 beide Konfigurationen kompilieren würde, würden sie ja in unterschiedlichen Ordnern landen, und das Post Build Script oder aber entsprechende weiterführende Build Tools übernähmen das Verschieben und Umbenennen.
Aber: das hört sich nicht wirklich an, als hätte es etwas mit dem Problem zu tun