Auto-generere implementeringspakke grensesnitt /coclasses

Denne artikkelen forklarer en rask og enkel metode for å la Delphi å automatisk generere implementeringspakkere for hvert grensesnitt /CoClass du legge til en type library.If du noen gang har laget en Active-X-biblioteket før og har lagt til et automatiseringsobjekt, har du sikkert lagt merke til at Delphi var hyggelig nok til å skape en enhet som inneholder en implementering wrapper, bruker TAutoObject og din første grensesnitt som base.If, men bruker du typebiblioteket editor for å legge påfølgende grensesnitt og coclasses, har du sikkert lagt merke til at Delphi ikke skapte pakke disse nyopprettede grensesnitt for you.I've sett folk Kopier og lim inn koden fra den første enheten som Delphi generert for dem inn i nye enheter, erstatte respektive GUID-tallet, og skrive wrapper seg selv. Jeg har også sett folk gå så langt som å skrive hele gjennomføringen wrapper seg selv for hånd. Atter andre sitte, frustrert, lurer på nøyaktig hva de gjorde wrong.well, er svaret enkelt. Når du ønsker å legge til et nytt grensesnitt /CoClass til din type bibliotek, bare sett den via Fil - > Nyhet - > Active-X - > Automatisering Object. Dette vil ikke skape et nytt prosjekt; det er hva Fil - > Nyhet - > Active-X - > Active-X DLL gjør. Ved å bruke den nye - > Automatisering Object alternativet, vil Delphi ikke bare setter inn nye grensesnittet og CoClass (og eventuelt et dispinterface) inn din type bibliotek, men det vil også generere gjennomføringen wrapper for deg. Nå, når du setter inn flere metoder og egenskaper, og klikk på Oppdater, gjennomføring wrapper enhet av Delphi vil automatisk bli oppdatert for å gjenspeile endringene. Ikke mer å legge til metodeerklæringer for hånd! Også huske på at når du navnet ditt Automation Object, ikke prefiks objektet med en jeg eller en T. Delphi vil gjøre dette for deg. Et formål navnet "MyNewObject» vil resultere i en IMyNewObject grensesnitt og en MyNewObject CoClass som opprettes på typebiblioteket. Hvis du aktiverer event støtte, vil dispinterface bli navngitt MyNewObjectEvents.Enjoy, Jason PlackeyVice President of Business DevelopmentRaven2K Integrert Solutionshttp: //[email protected]



Previous:
Next Page: