Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Wizards & Builders GmbH Erstellen von OLE-Servern Design von OLE-Server- Anwendungen unter Microsoft Visual FoxPro.

Ähnliche Präsentationen


Präsentation zum Thema: "Wizards & Builders GmbH Erstellen von OLE-Servern Design von OLE-Server- Anwendungen unter Microsoft Visual FoxPro."—  Präsentation transkript:

1 Wizards & Builders GmbH Erstellen von OLE-Servern Design von OLE-Server- Anwendungen unter Microsoft Visual FoxPro

2 Wizards & Builders GmbH Diese Schulung dient der Einführung in die Erstellung von eigenen OLE-Server-Anwendungen mit Microsoft Visual FoxPro

3 Wizards & Builders GmbH Themenübersicht Einführung in OLE Einführung in OLE Anforderungen, OLE-Bereiche, Erläuterungen Anforderungen, OLE-Bereiche, Erläuterungen Einführung in COM Einführung in COM COM-Definition, Vorteile COM-Definition, Vorteile Erstellen von eigenen OLE-Servern Erstellen von eigenen OLE-Servern VFP-Befehle und Hinweise VFP-Befehle und Hinweise Beispielanwendung Beispielanwendung Applikationsklasse, Administrationsklasse, Geschäftsobjektklasse Applikationsklasse, Administrationsklasse, Geschäftsobjektklasse

4 Wizards & Builders GmbH OLE-Teilbereiche Darstellung des Leistungsumfangs von Microsoft - OLE 2.0

5 Wizards & Builders GmbH Anforderungen Kundenforderungen Kundenforderungen neue Funktionalitäten neue Funktionalitäten Integration von Anwendungen Integration von Anwendungen Konsistenz zwischen versch. App. Konsistenz zwischen versch. App. Technische Forderungen Technische Forderungen Anwendungsarchitektur Anwendungsarchitektur Performance Performance

6 Wizards & Builders GmbH OLE-Basis-Bereiche Component Object Model (COM) Component Object Model (COM) Compound Files Compound Files Monikers (Objekt-Referenzen) Monikers (Objekt-Referenzen) Uniform Data Transfer Uniform Data Transfer OLE Drag & Drop OLE Drag & Drop OLE Automation OLE Automation

7 Wizards & Builders GmbH OLE-Integrationsbereiche OLE Embedding OLE Embedding OLE Linking OLE Linking Moniker für Datenbezug Moniker für Datenbezug Daten ggf. in embedded object Daten ggf. in embedded object In-Place-Activation In-Place-Activation Embedded/Linked statt in eigenem Fenster direkt im Container bearbeiten Embedded/Linked statt in eigenem Fenster direkt im Container bearbeiten Tools im Document Context Tools im Document Context

8 Wizards & Builders GmbH Erläuterungen 1/3 Compound File Compound File Root-Store, Sub-Store (Stream,Sub-Store) Root-Store, Sub-Store (Stream,Sub-Store) Transaktion, Garbage-Collection Transaktion, Garbage-Collection Uniform Data Transfer Uniform Data Transfer Basis für Clipboard, Drag&Drop, Daten-transfer in OLE-Documents Basis für Clipboard, Drag&Drop, Daten-transfer in OLE-Documents OLE-Drag & Drop OLE-Drag & Drop Ctrl Move->Copy, CtrlShift=Link, Esc Ctrl Move->Copy, CtrlShift=Link, Esc

9 Wizards & Builders GmbH Erläuterungen 2/3 OLE-Automation OLE-Automation Publikation von Eigenschaften (mit Typ) und Methoden (mit Paramtern) über eine Type Library Publikation von Eigenschaften (mit Typ) und Methoden (mit Paramtern) über eine Type Library Angesteuert von Programmiersprache oder Makro / Makro- Sprache (VBA/Script) Angesteuert von Programmiersprache oder Makro / Makro- Sprache (VBA/Script) OLE-Documents OLE-Documents Container (Präsentationsfläche) Container (Präsentationsfläche) Server (Datenangebot aller Art) Server (Datenangebot aller Art) Cache (Abbild falls Server fehlt) Cache (Abbild falls Server fehlt)

10 Wizards & Builders GmbH Erläuterungen 3/3 Embedding & Linking Embedding & Linking Embedding ruft Server für Bearbeitung Embedding ruft Server für Bearbeitung Linking speichert nur Moniker Linking speichert nur Moniker Emulation nutzt andere Server Emulation nutzt andere Server Conversion wandelt Servertyp um Conversion wandelt Servertyp um In-Place-Activation In-Place-Activation siehe Embedding siehe Embedding Definition von Toolbars/Fenster u.ä. Definition von Toolbars/Fenster u.ä.

11 Wizards & Builders GmbH Component Object Model Die wichtigsten Grundlagen von Microsoft COM

12 Wizards & Builders GmbH Allgemein Binärer Standard für Interface Binärer Standard für Interface Interface ist eine Pointerliste Interface ist eine Pointerliste enthält Zeiger auf Funktionen enthält Zeiger auf Funktionen Beliebig viele Interfaces erlaubt Beliebig viele Interfaces erlaubt Basis-Interface: Iunknown Basis-Interface: Iunknown Addref Addref Release Release QueryInterface QueryInterface

13 Wizards & Builders GmbH Funktionalität Mit Hilfe der CLSID leistet COM: Suchen in Registry Suchen in Registry Ggf. Verbindungsherstellung Remote Ggf. Verbindungsherstellung Remote Laden und Starten des Servers Laden und Starten des Servers Aufruf zur Objekterzeugung Aufruf zur Objekterzeugung Rückgabe Objektreferenz Rückgabe Objektreferenz Abwicklung der Kommunikation Abwicklung der Kommunikation Ggf. Beenden des Servers Ggf. Beenden des Servers

14 Wizards & Builders GmbH Anforderungen Anforderungen an OLE-Server: IClassFactory-Interface IClassFactory-Interface DLL: DllGetClassObject bzw. DLL: DllGetClassObject bzw. EXE: RegisterClassObject DLL: DllCanUnloadNow bzw. DLL: DllCanUnloadNow bzw. EXE: RevokeClassObject

15 Wizards & Builders GmbH Vorteile Pfadunabhängigkeit Pfadunabhängigkeit mehrere Provider für Service mehrere Provider für Service Eindeutige Kennung (GUIDs) Eindeutige Kennung (GUIDs) Einheitliches API Einheitliches API Einheitlich Lokal und Remote Einheitlich Lokal und Remote Verschiedene Interfaces Verschiedene Interfaces Mehrfachnutzung von Instanzen Mehrfachnutzung von Instanzen Versionierung Versionierung

16 Wizards & Builders GmbH Erstellen von OLE-Servern Hinweise zur Erstellung von OLE-Servern mit Microsoft Visual FoxPro

17 Wizards & Builders GmbH Verbesserungen in VFP 6.0 Apartment Model Threading Apartment Model Threading Disablen Benutzeroberfläche Disablen Benutzeroberfläche Dual-Interface-Support Dual-Interface-Support Multiple Runtime-Bibliotheken Multiple Runtime-Bibliotheken Type-Libraries Type-Libraries Exception Handling Exception Handling Array-Handling / Übergabe Array-Handling / Übergabe

18 Wizards & Builders GmbH Befehle in VFP 6.0 ComArray() ComArray() ComClassInfo() ComClassInfo() Sys(3004), Sys(3005) Sys(3004), Sys(3005) ComReturnError() ComReturnError() Sys(2334) (Server Invocation Mode) Sys(2334) (Server Invocation Mode) Sys(2335) (Unattended Server Mode) Sys(2335) (Unattended Server Mode)

19 Wizards & Builders GmbH Eigenschaften in VFP 6.0 _VFP.Startmode _VFP.Startmode Application.Servername Application.Servername Application nicht mehr nach außen sichtbar - aber selbst definierbar Application nicht mehr nach außen sichtbar - aber selbst definierbaraußerdem: Createobjectex für Selbstaufruf Createobjectex für Selbstaufruf

20 Wizards & Builders GmbH Hinweise zu Modellen Siehe Objektmodelle von Outlook, Excel, WinWord Siehe Objektmodelle von Outlook, Excel, WinWord Applikations-Objekt Applikations-Objekt Probleme mit Collections Probleme mit Collections mit Assign-Methoden realisierbar... mit Assign-Methoden realisierbar... Probleme mit Child-Objekten Probleme mit Child-Objekten

21 Wizards & Builders GmbH Registrieren von Servern Anmelden. Anmelden. EXE: EXE: /regserver /regserver DLL: DLL:REGSRV32.EXE Abmelden. Abmelden. EXE: EXE: /unregserver /unregserver DLL: DLL:REGSRV32.EXE /u /u

22 Wizards & Builders GmbH Anmelden Remote-Server Server. Server. EXE-Aufruf mit /regserver EXE-Aufruf mit /regserver RACMGR32.EXE RACMGR32.EXE Allow Remote Creates by Key Allow Remote Creates by Key Allow Remote Activation Allow Remote Activation Client. Client. VBR-Datei auf Client kopieren VBR-Datei auf Client kopieren CLIREG32.EXE CLIREG32.EXE Eintrag Netz- werkadresse und - protokoll Eintrag Netz- werkadresse und - protokoll

23 Wizards & Builders GmbH Eigene Remote-Server Mögliche Verwendungszwecke: Reindizieren/Packen Tabellen Reindizieren/Packen Tabellen Komprimieren/Datensicherung Komprimieren/Datensicherung Buchungsläufe Buchungsläufe Berichtserstellung Berichtserstellung Faxversand Faxversand Hinweis: CREATEOBJECTEX nicht vergessen! Hinweis: CREATEOBJECTEX nicht vergessen!

24 Wizards & Builders GmbH Aufräumen Registry Schlüssel: HKEY_CLASSES_ROOT Einträge:.. CLSID (Verweis TLB, Category) CLSID (Verweis TLB, Category) Typelib Typelib Component Categories Component Categories

25 Wizards & Builders GmbH Beispielanwendung Darstellung der OLE-Objekte in Account View unter Visual FoxPro

26 Wizards & Builders GmbH Übersicht OLE-Objekte Application (Anwendung) Application (Anwendung) Einloggen der Anwendung Einloggen der Anwendung Erzeugt Objekte auf Applikationsebene Erzeugt Objekte auf Applikationsebene Admin_Manager (Mandant) Admin_Manager (Mandant) Erzeugt Geschäftsobjekte Erzeugt Geschäftsobjekte Business (Geschäftsobjekt/BO) Business (Geschäftsobjekt/BO) Zugriffe auf Datensätze, Masken usw. Zugriffe auf Datensätze, Masken usw.

27 Wizards & Builders GmbH Applikationsklasse Login ( user, pwd ) Login ( user, pwd ) Anmelden der Anwendung / Benutzer Anmelden der Anwendung / Benutzer Create_Object (form, para ) Create_Object (form, para ) Erzeugen Objekte Applikationsebene Erzeugen Objekte Applikationsebene Menu_Exec ( event, para ) Menu_Exec ( event, para ) Ausführen Menü auf Applikationsebene Ausführen Menü auf Applikationsebene Open_Admin ( admin, para /e ) Open_Admin ( admin, para /e )

28 Wizards & Builders GmbH Administrationsklasse Create_Object ( form, para ) Create_Object ( form, para ) Erzeugen eines Geschäftsobjekts Erzeugen eines Geschäftsobjekts Get_Field ( field ) Get_Field ( field ) Lesen von Präferenzen Lesen von Präferenzen Set_Field ( field, value ) Set_Field ( field, value ) Setzen von Präferenzen Setzen von Präferenzen

29 Wizards & Builders GmbH BO - Eigenschaften List_class / List_vcx List_class / List_vcx Klasse für Listenansicht Klasse für Listenansicht Menu_file Menu_file Menüdefinitionsdatei für Kontextmenü Menüdefinitionsdatei für Kontextmenü Pick_class / Pick_vcx Pick_class / Pick_vcx Klasse für Lookup-Auswahl Klasse für Lookup-Auswahl Setup_class / Setup_vcx Setup_class / Setup_vcx Klasse für Stammdatenbearbeitung Klasse für Stammdatenbearbeitung

30 Wizards & Builders GmbH BO - Anzeigefunktionen Show Show Aufruf von List oder Picklist (pseudomodal) Aufruf von List oder Picklist (pseudomodal) Show_List Show_List Anzeige Listendarstellung Anzeige Listendarstellung Show_Picklist Show_Picklist Anzeige Picklistenmaske Anzeige Picklistenmaske Show_Setup Show_Setup Anzeige Stammdatenmaske Anzeige Stammdatenmaske

31 Wizards & Builders GmbH BO - Zustandsabfragen Delete_Enabled Delete_Enabled Insert_Enabled Insert_Enabled Read_Enabled Read_Enabled Update_Enabled Update_Enabled

32 Wizards & Builders GmbH BO - Pointerfunktionen Locate Locate Move_First Move_First Move_Last Move_Last Move_Next Move_Next Move_Previous Move_Previous Move_Pointer Move_Pointer Set_Key Set_Key

33 Wizards & Builders GmbH BO - Datensatzfunktionen Create_Recordset Create_Recordset Record_Delete Record_Delete Record_Insert Record_Insert Get_Field Get_Field Set_Field Set_Field Table_Update Table_Update Cancel_Update Cancel_Update

34 Wizards & Builders GmbH BO - diverse Funktionen Menu_Exec Menu_Exec Ausführen Kontextmenüfunktion Ausführen Kontextmenüfunktion Meth_Exec Meth_Exec Ausführen Methode Geschäftsobjekt Ausführen Methode Geschäftsobjekt Generate_Script Generate_Script Ausgabe Script für Datenobjekt Ausgabe Script für Datenobjekt

35 Wizards & Builders GmbH Was ist zu beachten? OLE hat sehr viele Einsatz-bereiche... OLE hat sehr viele Einsatz-bereiche... Objektmodell einfach halten Objektmodell einfach halten Interface klein Interface klein OLE-BOs separat definieren OLE-BOs separat definieren

36 Wizards & Builders GmbH Vielen Dank! Das waren die Themen: Einführung in OLE Einführung in OLE Anforderungen, OLE-Bereiche, Erläuterungen Anforderungen, OLE-Bereiche, Erläuterungen Einführung in COM Einführung in COM COM-Definition, Vorteile COM-Definition, Vorteile Erstellen von eigenen OLE- Servern Erstellen von eigenen OLE- Servern VFP-Befehle und Hinweise VFP-Befehle und Hinweise Beispielanwendung Beispielanwendung Applikationsklasse, Administrationsklasse, Geschäftsobjektklasse Applikationsklasse, Administrationsklasse, Geschäftsobjektklasse

37 Wizards & Builders GmbH Wenn Fragen bestehen: Wizards & Builders Methodische Software- Entwicklung GmbH Frankfurter Str. 21b Kronberg Tel.: Fax: CIS: ,175


Herunterladen ppt "Wizards & Builders GmbH Erstellen von OLE-Servern Design von OLE-Server- Anwendungen unter Microsoft Visual FoxPro."

Ähnliche Präsentationen


Google-Anzeigen