Newsgroup: it.comp.lang.delphi
Titolo: DLL e OOP

Come tutti sanno Delphi non permette
di Creare DLL che esportano degli oggetti ( Il C++ mi pare invece che
suporti questa posibilità ma non ne sono sicuro )
 
Le DirectX sono orientate ad Oggetti  ( Le DelphiX sono una ottimia
implementazione ). 
 
Se uno vuole puo' anche non usare le DelphiX e usare i file header
delle DirectX ma mi chiedo visto che il Delphi non riesce a esportarle
come fa ad importarle ( non credo che il Delphi sia in grado di fare
una sola delle 2 operazioni o tutte e due o nussuna ) 
 
In pratica come si passa da un oggetto dentro ad una DLL a una classe?
e al contrario ( da Classe a Ogetto dentro ad una DLL ) 
 
Questi ogetti hanno nomi particolorari ( mi sembra di aver letto da
qualke pizzo Ogetti COM ma non sono sicuro che si riferiscano a questo
)
Il Razziatore,
The Only Good Windows is an uninstalled Windows
-----------------------------------------------
E-MAILs : IlRazziat...@NOSPAMnetscape.net
ICQ     : 67552596
-----------------------------------------------
Founder of MediaPlayer Project
http://mpp.iwebland.com

 di Creare DLL che esportano degli oggetti
[CUT]
Sicuro?
Da Delphi 6 Developer's Guide (Steve Teixeira and Xavier Pacheco):
[Part II - Advanced Techniques; Chapter 6: Dynamic Link Libraries; p. 287]
Exporting Objects from DLLs
It’s possible to access an object and its methods even if that object is 
contained within a DLL.
There are some requirements, however, to how that object is defined within 
the DLL as well as
some limitations as to how the object can be used. The technique we 
illustrate here is useful in
very specific situations. Typically, you can achieve the same functionality 
by using packages or
interfaces.
The following list summarizes the conditions and limitations to exporting 
an object from a
DLL:
1) The calling application can only use methods of the object that have 
been declared as
virtual.
2) The object instances must be created only within the DLL.
3) The object must be defined in both the DLL and calling application with 
methods
defined in the same order.
4) You cannot create a descendant object from the object contained within 
the DLL.
Some additional limitations might exist, but the ones listed are the 
primary limitations.
-- 
Ciao,
   Stefano
"Ho smesso di essere presuntuoso quando ho scoperto di essere perfetto"
"Prima di parlare assicurati che quello che hai da dire sia piů importante 
del silenzio"

Da Delphi 6 Developer's Guide (Steve Teixeira and Xavier Pacheco):
L'ebook del libro quotato è ancora in bella mostra pronto per download
al link 
http://safariexamples.informit.com/0672321157/Ebooks/D6DG/
E' incredibile che non abbiano ancora tappato la falla impedendo gli accessi
alle directory inopportune, eppure dovrebbero aver notato un'impennata di 
collegamenti al loro server 2 settimane fa...
Mah....
Morde.
morde [at] programmer [.] net

primary limitations.
Uhm... 



Downloading in progress...


 Questo non l'ho capita... che centrano i packages? 
[CUT]
I packages possono essere visti come una sorta di dll che possono essere 
gestiti solo da Delphi (e altri prodotti Borland). Dato che questi nascono 
hanno proprio lo scopo di maneggiare oggetti forse potresti fare un package 
piuttosto che una dll.
Sempre da D6DG (p. 644):
Exporting Functions from Packages
Given that packages are simply enhanced DLLs, it seems that you should be 
able to export
functions and procedures from packages just as you can from DLLs. Well, you 
can. In this section,
we’ll show you how to use packages in the same way.
Se vuoi ti spedisco in email il paragrafo (o anche tutto il capitolo) con 
l'esempio cosě approfondisci (lo so che hai D5 perň la parte di gestione 
delle dll e dei packages potrebbe non essere stata modificata a tal punto 
da rendere inutile una tale lettura).


da rendere inutile una tale lettura).
Come ho scaricato l'intero manuale ( a dire il vero ho scarica anche
quello per la versione 5 :D ) 
 
Secondo te dovrei cercare di migrare alla 6 o addiritura alla 7? 



cosa cosa??
questo sarebbe il link da cui si può scaricare la guida su delphi
6???????????????
addirittura completa?????????

Scusate l'intrusione, ma perchè non riesco a scaricare la guida al link che
avete scritto ???
http://safariexamples.informit.com/0672321157/Ebooks/D6DG/
--------------------------------
Inviato via 
http://usenet.libero.it

 Secondo te dovrei cercare di migrare alla 6 o addiritura alla 7? 
Questo dipende da quello che ci fai con Delphi. Io uso la 6 ma sarei potuto 
rimanere benissimo alla 5. Non intendo passare alla 7 perchè (a leggere 
cosa hanno introdotto) non sembrano esserci cose che mi interessano.
-- 
Ciao,
   Stefano
"Ho smesso di essere presuntuoso quando ho scoperto di essere perfetto"
"Prima di parlare assicurati che quello che hai da dire sia più importante 
del silenzio"

avete scritto ???
Perche' finalmente si sono accorti di questa oscena falla, aperta gia' da tempo....
Ciao


cosa hanno introdotto) non sembrano esserci cose che mi interessano.
Ma io con Delphi faccio sopratutto piccoli programmi ( nulla di
impegantivo ) diciamo giusto quello ke mi serve per le mie esigenze e
finora D5 mi ha sempre servito alla grande ma non vorei che tra un po'
ci fossere problemi di compatibilità con componenti e cose cosi...


 ci fossere problemi di compatibilità con componenti e cose cosi...
Prima o poi avrai problemi di compatibilità (io ho aggiornato i miei 
componenti semplicemente aprendo i dpk e rispondendo si all'avviso che mi 
chiedeva di aggiornarli) ma non so quando e di che portata. Credo che se 
salti una o due release di Delphi non dovresti avere grossi problemi.


ci sia la possibilitą di passarli dal builder a delphi
Il contrario, da Delphi a C++ Builder ed e` una gran cosa, visto che
gli stessi componenti per Delphi girano anche sotto C++ Builder.
Il problema e` che non vale il viceversa: non e` possibile scrivere
componenti con C++ Builder e installarli sotto Delphi.
-- 
Andrea Laforgia
#exclude <windows.h>