Per quanto ne so, l'uso della VFI (Visual Form Inheritance) "cross package" è una funzionalità che viene un po' ostacolata ed è senz'altro poco agevole rispetto a come dovrebbe realmente essere nel cosiddetto "mondo ideale".

Il fatto che sia basata sul DFM consente di lavorare agevolmente rispetto ad altri ambienti, ad esempio quelli ".NET based", in cui è necessaria una compilazione per poter ereditare gli elementi di un progetto, ma tuttavia questo ne limita l'uso in certi casi quando un Form o un Frame devono essere ereditati da progetti differenti (package, applicazioni, ecc.) che si referenziano a vicenda.

Non ho ben compreso, nel quadro che hai descritto, la necessità di utilizzare package di tipo designtime, che dovrebbero essere impiegati solo quando ci sono classi che devono essere caricate dall'IDE di Delphi, come i Component Editor, i Property Editor, ecc.

In merito all'ereditarietà "cross package" tra Form e Frame, l'unico espediente che ho trovato per ottenere questo effetto è quello di
[list=1][*]aggiungere il Form da ereditare, presente nel package di base, nell'Object Repository di Delphi;[*]aggiungere un nuovo Form nel package discendente ereditando dalla classe del repository;[*]rimuovere la classe base duplicata da Delphi nel package discendente al termine delle operazioni.[/list=1]

Non so se il panorama che ho descritto è lo stesso che riscontri nel tuo caso.

Eventualmente, possiamo vedere di esaminarlo per capirne qualcosa di più, visto che mi trovo spesso nella situazione di dover implementare architetture simili a quella che hai descritto, ma non ho ancora trovato un modo agevole per realizzarle senza incorrere in "escamotage" vari.

Ciao!