Newsgroup: it.comp.lang.delphi
Titolo: ActiveX in D2007

Sto passando da Delphi 7 a Delphi 2007 ma in quest'ultimo non riesco ad 
installare un ActiveX da me creato e funzionante perfettamente sotto 
Delphi 7.
Potete aiutarmi?

 Potete aiutarmi?
Qualche info più specifica di "non riesco ad installare un ActiveX" ?
Giuseppe

 
Innanzitutto grazie per l'attenzione. In oggetto ho sbagliato mettendo 
Delphi2007 anzichè Delphi2006.
Allora l'ActiveX è stato sviluppato in D7, in questo IDE riesco ad 
installarlo senza problemi.
Questa è la procedura che seguo in Delphi 2006:
Menù Component->Import Component...
nella dialog che si apre Seleziono 'Import ActiveX Control';
nella lista ' Registered ActiveX Controls evidenzio il mio componente;
a questo punto si apre un'altra dialogo, con il campo 'Class Name' 
uguale al nome del componente selezionato, in 'Palette Page' metto 
'Delphi Projects | ActiveX', gli altri due campi li lascio con i valori 
di default;
il checkbox 'Generate Conponent Wrappers' è abilitato;
nell'ultima dialog c'è il radiobox 'create unit' abilitato;
infine premo il pulsante 'Finish' ma non succede nulla!
Nella palette ActiveX non c'è nulla.
Nel file MyDICOMProj_TLB.pas c'è la procedura di registrazione
procedure Register;
begin
   RegisterComponents(dtlOcxPage, [TMyDICOMX]);
end;
con dtlOcxPage = 'ActiveX';

 Menù Component->Import Component... [...]
Il problema potrebbe essere dovuto al fatto che da D2005 in poi non 
esiste più il package predefinito "Borland User Components" che 
raccoglie automaticamente tutti i componenti da inserire nella 
Palette/ToolBox quando il sorgente di quei componenti non viene inserito 
in un package ad hoc, creato appositamente.
Prova ad eseguire l'importazione del controllo ActiveX dopo aver creato 
un package in cui inserire la unit generata automaticamente da Delphi.
Ciao,
   Marco.
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)

 
Ho provato seguendo il tuo consiglio, ma purtroppo non vedo in nessuna
palette il mio controllo.
Mi sono creato un nuovo package, ho importato l'activex nel package, ed 
infine ho installato il package. Infatti se vado a controllare le 
componenti del package vedo presente il mio controllo. Adesso per 
visualizzare il nuovo package nella palette che cosa devo fare?
Grazie

 visualizzare il nuovo package nella palette che cosa devo fare?
Quando installi il package, Delphi generalmente ti fornisce un elenco 
dei nuovi componenti che sono stati installati: hai trovato in quel 
messaggio il componente in esame?
Eventualmente, verifica che la unit del componente contenga una 
procedura "Register", che invoca la procedura "RegisterComponents" la 
quale provvede ad installare il tuo componente nell'IDE, specificando la 
pagina predefinita di appartenenza.
Se la procedura manca, aggiungila tu. Se è presente, verifica qual è la 
pagina selezionata e controlla se il componente è effettivamente 
presente in quella pagina.
Nel caso fallissero tutti questi tentativi, eventualmente posta il 
codice che è stato generato (le parti salienti) per controllare che non 
vi siano altre mancanze o problemi, in breve per indagare più a fondo.


 
Finalmente ci sono riuscito, dopo aver installato il package ho aperto 
un vecchio progetto che faceva uso del activex incriminato ed 
effettivamente c'è una nuova palette con il mio controllo.
Adesso posso continuare lo sviluppo con Delphi 2006 :-)
Ti ringrazio sinceramente per il tuo aiuto,
ciao.