Αν και τις προηγούμενες ημέρες έψαξα αρκετή ώρα, δεν βρήκα κατι ικανοποιητικό και γι'αυτό και δεν έγραψα τίποτα. Καπου μεσα στις αναζητήσεις, είδα κάτι το οποίο είναι ψιλοπροφανές, αλλα το γράφω εδώ σε περίπτωση που βοηθάει (δεν το έχω τεστάρει στην πράξη):
Με reflection θα πάρεις στο 2005 τα assemblies τα οποία οντως χρησιμοποιούνται. Ενας τρόπος να "χρησιμοποιήσεις" όλα τα assemblies (και άρα να τα πάρεις με το GetReferencedAssemblies) είναι να δημιουργήσεις dummy references ξεκινώντας την εκτέλεση. Αυτό το προτείνουν διάφοροι, το θεωρώ όμως λίγο overkill.
Απο την άλλη, αν θέλεις τα assemblies τα οποία κάνει reference το Project αυτό καθαυτό, διάφοροι τύποι προτείνουν να χρησιμοποιήσεις το extensibility model του VS παίρνοντας το EnvDTE.Project και κάνοντας cast το
EnvDTE.Project.Object σε VSLangProj.VSProject. Επειτα μπορείς να χρησιμοποιησεις το VSProject.References.
Επαναλαμβάνω, βεβαια, οτι δεν το έχω δοκιμάσει.
Σωτήρης Φιλιππίδης
DotSee Web Services