DE19742804A1 - Computer-Verfahren und -Vorrichtung für interaktive Objektsteuerungen - Google Patents
Computer-Verfahren und -Vorrichtung für interaktive ObjektsteuerungenInfo
- Publication number
- DE19742804A1 DE19742804A1 DE19742804A DE19742804A DE19742804A1 DE 19742804 A1 DE19742804 A1 DE 19742804A1 DE 19742804 A DE19742804 A DE 19742804A DE 19742804 A DE19742804 A DE 19742804A DE 19742804 A1 DE19742804 A1 DE 19742804A1
- Authority
- DE
- Germany
- Prior art keywords
- control
- memory
- objects
- control object
- access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- User Interface Of Digital Computer (AREA)
- Digital Computer Display Output (AREA)
Description
In den letzten Jahren hat die objektorientierte Programmierung signifikant die Art des
Einsatzes und der Anwendung von Anwendungsprogrammen in Unternehmen ver
bessert. Bis zur vollständigen Automatisierung von Geschäftsvorgängen gibt es aber
noch eine Reihe von Problemen. Die Hauptprobleme sind darauf zurückzuführen,
daß die meisten Geschäftsinformationen in Form von Dokumenten auf Papier vor
liegen. Ein Problem in Zusammenhang mit der Aufbewahrung von Dokumenten auf
Papier ist, daß sich Papier nicht gut in Computersysteme integrieren läßt. Bei
spielsweise können Computer große Mengen von Kundendaten verfolgen. Daten auf
Computer-Basis können verwendet werden, um auf einfache Weise Informationen zu
finden, wie z. B. Profile von Kundenkonten und Versandunterlagen, während auf Pa
pier vorliegende Dokumente, beispielsweise mit dem Original der Unterschrift, oft
nicht aufzufinden sind, gerade wenn sie am dringendsten benötigt werden. Weiter
werden Papierdokumente und auf Papier erfaßte Informationen im Gegensatz zu im
Computer verwahrten Informationen und Dokumenten normalerweise getrennt von
anderen Daten und Begleitdokumenten aufbewahrt bzw. abgelegt.
In diesem Zusammenhang ist die Dokumenten-Bildverarbeitung von großem Inter
esse hinsichtlich der Automatisierung von Geschäftsvorgängen, und zwar insbeson
dere bezüglich der Implementierung von objektorientierten Programmierungskon
zepten. Die Dokumenten-Bildverarbeitung ist eine Technologie, bei der auf Papier
vorliegende Dokumente/Informationen in eine elektronische Form umgesetzt wer
den, so daß die Speicherung die Abfrage und die Verwendung des Dokuments mit
Hilfe von standardmäßiger Computertechnik automatisiert werden können. Durch die
Erfassung von Papierdokumenten in Form von elektronischen Bildern, die im Com
puter gespeichert sind, lassen sich alle Vorteile und Funktionen von Datenbanken,
elektronischer Post (E-Mail), Netztechnik, Telefax und Speichertechnologie bei den
früher manuell bearbeiteten Informationen verwenden.
Andererseits fehlen bei der objektorientierten Programmierung aber Standards oder
Protokolle, mit denen Objekte oder Daten zwischen verschiedenen Anwendungsum
gebungen transportiert werden. Das heißt, daß obwohl Bilddokumente mit einer
Vielzahl von Index- und Archivierungsverfahren elektronisch archiviert, anschließend
gesucht und abgerufen und schließlich für den Zugriff durch eine Vielzahl von Benut
zern freigegeben werden können, jede einzelne Aufgabe über ein gemeinsames
Anwendungsprogramm gesteuert und verwaltet werden muß.
Die Objektverknüpfung und -einbettung (OLE) von Microsoft ist eine Gruppe von
Standards für den Aufbau einer Software aus verbindbaren Komponenten. Der Be
griff "Komponenten" bezeichnet hierbei wiederverwendbare abgeschlossene Soft
ware-Teile, die eine selbständige Funktion bereitstellen, wie z. B. Druck, Telefax-
Übertragung usw. Dabei können die Komponenten in andere Komponenten einge
stellt werden (d. h. damit verbunden werden), so daß ein erwünschtes arbeitsfähiges
System gebildet wird. Im Unterschied dazu ist ein "Objekt" eine Programm-Einheit,
die einige Zustände und einen Satz definierter Verhaltensweisen umfaßt. Ein Zu
stand ist durch Daten (Eigenschaften) wiedergegeben, die vom Objekt verwaltet
werden. Eine Verhaltensweise ist angegeben durch Vorgänge, Funktionen oder
Methoden, die das Objekt ausführen kann. Vorgänge werden über ausführbaren
Code realisiert. Konzeptionell sind die Daten und der Code untrennbar im Objekt
miteinander verbunden. Objekte können "beständig" sein, d. h. daß sie weiter beste
hen können, auch wenn sie inaktiv sind oder wenn der Computer, auf dem sie vor
liegen, versagt hat oder ausgeschaltet ist. Ein elementarer Unterschied zwischen
Objekten und Komponenten besteht damit darin, daß ein Objekt ein Stück
Quellcode oder eine Spezifikation ist, die zum Aufbau eines Teils einer Anwendung
verwendet werden kann, während eine Komponente ein (selbständig) funktionieren
des Softwaremodul ist.
OLE ermöglicht eine Form der Integration und des Austauschs zwischen Software
modulen, die gemeinsam auf proprietäres Wissen (Daten) zugreifen. Ein OLE-Stan
dard ist die Spezifikation eines Komponenten-Objekt-Modells (COM), das den Me
chanismus für die Verbindung binärer Objektcodes unterschiedlicher Komponenten
liefert. Das gemeinsame Element bei allen OLE-Verknüpfungen ist, daß sie über
COM miteinander verbunden werden. COM ist also eine objektorientierte Spezifika
tion zur Definition von Schnittstellen, die die Kontaktpunkte zwischen Komponenten
sind. Hierzu liefert COM eine Grundlage, auf der alle OLE-Merkmale aufgebaut sind.
OLE-Steuerelemente (die als OCX oder ACTIVE X bezeichnet werden) sind ein an
derer Typ eines OLE-Komponentenstandards. OCX-Elemente umfassen Eigen
schaften, Methoden und Ereignisse, mit denen Programmierer spezifische
(definierte) Funktionen zu Anwendungsprogrammen hinzufügen können. Mit diesen
Funktionen können die Endanwender bestimmte Aufgaben an den gewünschten
Daten ausführen. Als selbständige Objekte sind OCX-Elemente transportierbar und
können in ein beliebiges Container- oder Anwendungsprogramm eingefügt werden.
Eine Container-Anwendung oder ein OLE-Container (und allgemein ein Objekt
Container) ist ein lauffähiges Computerprogramm, das aus OLE-Komponenten und
-Objekten gebildet ist oder das definierte OLE-Komponenten und -Objekte enthält.
Derartige Container sind beispielsweise die Office Suite oder Windows 95 von
Microsoft. In einer grafischen Benutzeroberfläche (GUI) wie z. B. in Windows 95 ist
ein Steuerelement dann im wesentlichen ein einem besonderen Zweck dienendes
Fenster (als untergeordnetes Fenster bezeichnet), das Nachrichten oder Ereignis
meldungen an ein übergeordnetes Fenster im Containerprogramm sendet.
OLE-Steuerelemente (OCX) sind prozessinterne Objekte, die DLL-Bibliotheken
(Dynamic Linking Libraries) ähneln und die verschiedene OLE-Schnittstellen unter
stützen. Anders als traditionelle DLL-Bibliotheken, die jede in eine DLL exportierte
Funktion aufrufen können, legen OCX-Elemente Methoden und Eigenschaften offen,
auf die nur der Container der OCX-Elemente zugreifen kann. Das bedeutet, daß die
Container-Anwendung als zentrale Steuerung oder gemeinsamer Verwalter der darin
enthaltenen OCX-Elemente dient. Der Container ruft ein OCX-Element auf und erhält
die sich ergebenden Daten. Der Container leitet anschließend die sich ergebenden
Daten zur Weiterverarbeitung zu einem anderen zweckdienlichen OCX-Element usw.
Die unterschiedlichen OCX-Elemente können untereinander nicht direkt auf ihre In
halte zugreifen. Diese Einschränkung verhindert jede Kommunikation bzw. Wieder
verwendung von Code direkt zwischen OCX-Elementen.
Die Erfindung betrifft ein verbessertes Computersystem, bei dem Steuerobjekte di
rekt untereinander wirksam werden können, um gemeinsam auf Funktionen und
Ressourcen zuzugreifen. Durch das bevorzugte erfindungsgemäße Verfahren und
die bevorzugte erfindungsgemäße Vorrichtung wird die Komplexität des Codes auf
Containerebene reduziert, und die Anwendbarkeit von in den verschiedenen Steuer
elementen eines Containers enthaltenen Methoden und Eigenschaften wird erwei
tert.
Das erfindungsgemäße Computersystem enthält eine Vielzahl selbständiger Objekte
(z. B. Steuerobjekte), die jeweils Funktionen und Datenelemente angeben. Jedes
Objekt ist anfangs so definiert, daß nur ein gemeinsames Anwendungsprogramm
darauf zugreifen und es ausführen kann, das als lauffähiger Objektcontainer im Ar
beitsspeicher eingesetzt wird. Die Erfindung ermöglicht jedoch über die Verwendung
einer speicherstrukturierten Datei den Zugriff auf Objekte und die direkte Kommuni
kation zwischen Objekten, ohne das gemeinsame Anwendungsprogramm oder den
Container für den Zugriff auf Objekte einzusetzen. Die speicherstrukturierte Datei
enthält Bezugsangaben zu den Objekten, so daß ein erstes Objekt über die in der
speicherstrukturierten Datei enthaltene Bezugsangabe zum zweiten Objekt direkt auf
das zweite Objekt zugreifen kann.
Bei der bevorzugten Ausführungsform ist das Objekt ein OLE-Steuerelement, und
das Anwendungsprogramm ist ein Containerprogramm. Die Kommunikation zwi
schen den Steuerelementen wird über ein gemeinsames Objektmodell hergestellt,
das einen Mechanismus bereitstellt für die Verbindung der binären Codes von unter
schiedlichen Komponenten, die die Steuerelemente bilden.
Gemäß einem Aspekt der Erfindung enthält die speicherstrukturierte Datei eine An
gabe der Blocklänge oder der Speicherblockgröße der Datei. Die speicherstruktu
rierte Datei ist vorzugsweise aus einer Anordnung von Einträgen zum Auflisten von
Angaben zu den gesteuerten Objekten und ihren Funktionsbeschreibungen gebildet.
Zu jedem Steuerobjekt gibt es einen anderen Eintrag. Jeder Eintrag besteht aus
einer Gruppe von Feldern, die ein Namensfeld zur Angabe des jeweiligen Steuerob
jekts enthalten sowie weitere Felder zur Angabe der jeweiligen Funktionsbeschrei
bungen. Das Namensfeld wird benutzt, um alle Steuerobjekte zu verbinden, die mit
einander kommunizieren. Das Namensfeld wird bei jedem Steuerelement, das direkt
mit einem anderen Steuerelement kommuniziert, angegeben, indem der Name in der
besonderen Eigenschaft mit der Bezeichnung "DestControl" vorgegeben wird.
Die Funktionsbeschreibungen enthalten für jedes Steuerobjekt eine dazugehörige
Fensteraktivierung. Jede Fensteraktivierung definiert Anzeigeelemente eines Be
trachtungsfensters mit der Fenstergröße, der Anordnung und der Ausgestaltung.
Bei der bevorzugten Ausführungsform enthält jeder Eintrag in der speicherstruktu
rierten Datei ein Bezugsfeld mit einem Zeiger zum dazugehörigen Steuerobjekt.
Die speicherstrukturierte Datei ermöglicht es einem Steuerelement, Funktionen auf
zurufen und die Datenelemente (z. B. die Fensteranzeige) eines anderen Steuerob
jekts zu aktualisieren und für den gemeinsamen Zugriff freizugeben. Wenn eines der
Steuerobjekte direkt ein Datenelement (Fensteranzeige) eines anderen Steuerob
jekts aktualisiert, ruft das erste Steuerobjekt seine eigene Auffrischmethode und die
Auffrischmethode des anderen Steuerobjekts auf, um das aktualisierte Datenelement
einzureihen (d. h. Daten zu sichern oder die Anzeige zu aktualisieren).
Weiter erhält die speicherstrukturierte Datei in dem gesamten Arbeitsspeicher einen
global erkennbaren Namen, um den Lesezugriff durch die Steuerobjekte zu ermögli
chen.
Die Erfindung wird im folgenden anhand eines in der Zeichnung dargestellten Aus
führungsbeispiels näher erläutert.
Es zeigen
Fig. 1a u. 1b Blockdiagramme eines erfindungsgemäßen Computersystems;
Fig. 2 ein detailliertes Blockdiagramm eines gemeinsam verwendbaren
Globalspeichers, der bei der in Fig. 1a und Fig. 1b wiedergegebenen
Ausführungsform der Erfindung verwendet wird;
Fig. 3 ein Ablaufdiagramm des Prozesses zur Beschreibung des erfin
dungsgemäßen Verfahrens;
Fig. 4a u. 4b zeigen eine Bildbetrachtungsanwendung unter Verwendung der er
findungsgemäßen Verfahren und Vorrichtungen.
In Fig. 1 sind ein Computersystem und eine dazugehörige Programmierumgebung
dargestellt, wobei die erfindungsgemäße Vorrichtung und das erfindungsgemäße
Verfahren verwendet werden. Allgemein ist das Computersystem aus einem oder
mehreren digitalen Prozessoren mit daran gekoppelten Ein-/Ausgabeeinrichtungen
aufgebaut, wie z. B. einer Tastatur, einer Maus, einem Bildschirm und einem Drucker.
Jeder digitale Prozessor hat beispielsweise die Rechenkapazität eines Prozessor
chips vom Typ Intel XX486 oder Pentium oder eines ähnlichen Chips.
Insbesondere hat ein dargestellter digitaler Prozessor 18a) einen Arbeitsspeicher
30, in dem Anwendungsprogramme 13 ausgeführt werden, und b) ein unterstützen
des Betriebssystem 31 zur Aktivierung von Ein-/Ausgabe- und anderen Funktionen
(dies ist nicht direkt Inhalt der Erfindung). Jedes Anwendungsprogramm 13 ist aus
OLE-Steuerobjekten 10 gebildet oder enthält solche Elemente, von denen einige für
den gemeinsamen Zugriff durch eine Vielzahl von Containern 13 freigegeben (oder
darin angeordnet) sein können. Das Steuerobjekt 10c ist durch ein mit unterbroche
ner Linie gezogenes Rechteck wiedergegeben, um die gemeinsame Verwendung
durch die Anwendungsprogramme 13a und 13b anzugeben.
Entsprechend der weiteren Darstellung in Fig. 1b ist jedes Steuerobjekt 10 aus (i)
einer Gruppe von Methoden (oder Funktionen oder entsprechenden Funktionsauf
rufen) 12 und (ii) einer Gruppe von Eigenschaften 14 zur funktionellen Bezeichnung
des Objekts 10 aufgebaut und definiert. Die Eigenschaften 14 werden durch Da
tenelemente wiedergegeben, die im Lesespeicher oder im Schreibspeicher angeord
net sind. Bei der bevorzugten Ausführungsform sind die Steuerobjekte 10
OCX-Steuerelemente oder ActiveX-Steuerelemente oder ähnliche Elemente. Dabei sind
die Steuerelemente prozessinterne Objekte, die unterschiedliche OLE-Schnittstellen
16 (Fig. 1a) unterstützen, wie z. B. IDispatch entsprechend einer Microsoft-Spezifika
tion. Die IDispatch-Schnittstelle 16 liefert einen Zeiger zu einem Objekt 10, der vom
Containerprogramm 13 verwendet wird (und der darin enthalten ist), um gewünschte
Methoden oder Eigenschaften des entsprechenden Objekts aufzurufen. Entspre
chend der Microsoft-Definition ermöglicht IDispatch derzeit nur den
(ausschließlichen) Zugriff des OLE-Containerprogramms auf dessen Objekte 10.
Dementsprechend legen die Steuerobjekte 10 anders als andere prozessinterne
Objekte, wie z. B. DLL-Bibliotheken, die beliebige in eine DLL-Bibliothek exportierte
Funktionen aufrufen können, Methoden und Eigenschaften offen, auf die anfangs
nur der Container 13 der Steuerobjekte 10 zugreifen kann. Bislang hat diese Ein
schränkung jegliche Kommunikation oder Wiederverwendung von Code zwischen
verschiedenen Steuerobjekten 10 verhindert. Das heißt, das nach dem Stand der
Technik jedes Steuerelement durch die Container-Ebene getrennt initiiert und ge
steuert werden mußte, damit ein Benutzer bzw. eine Anwendung eine Gruppe zu
einander in Beziehung stehender Steuerelemente verwenden konnte. Dadurch
mußte der Anwender-Code (a) in jedem Steuerobjekt den Zugriff auf individuelle
Methoden und Eigenschaften ermöglichen, (b) die Informationen verarbeiten und (c)
diese Informationen zu jedem der Steuerobjekte übertragen.
Gemäß der Erfindung hat jedes Steuerobjekt 10 selbst Zugriff auf IDispatch, um di
rekt mit anderen Steuerobjekten 10 zu kommunizieren und um direkt die Methoden
12 und die Eigenschaften 14 aufzurufen. Das heißt, daß gemäß der Erfindung für
jedes Steuerobjekt 10 die IDispatch-Zeiger zu den anderen Steuerobjekten 10 be
reitgestellt sind, um die direkte Kommunikation zwischen Steuerobjekten 10 zu er
möglichen. Somit ermöglicht die Erfindung die direkte Wiederverwendung von Steu
erobjekten 10 (und insbesondere von ihren Methoden 12 und Eigenschaften 14)
durch andere Steuerobjekte 10 im Anwendungsprogramm 13, das die Objekte 10
enthält.
In Fig. 1a erfolgt dies wiederum über eine im Arbeitsspeicher 30 befindliche spei
cherstrukturierte Datei 55. Die Steuerobjekte 10 können über einen definierten Na
men auf der Ebene des Arbeitsspeichers des Computersystems global auf die spei
cherstrukturierte Datei 55 zugreifen. Die speicherstrukturierte Datei 55 enthält eine
Anordnung von Einträgen mit einem für jedes in der Datei registrierte Objekt 10 un
terschiedlichen Eintrag 112, um den Zugriff auf das betreffende Steuerobjekt 10 zu
ermöglichen. In jedem Eintrag ist ein Namensfeld vorgesehen, das verwendet wird,
um alle Steuerelemente zu verknüpfen, die untereinander kommunizieren. Bei jedem
Steuerelement, das mit einem anderen Steuerelement direkt kommuniziert, ist der
Name des zweiten Steuerelements (aus dem Namensfeld) als besondere Eigen
schaft des ersten Steuerelements angegeben. Bei der bevorzugten Ausführungsform
wird diese besondere Eigenschaft als "DestControl" bezeichnet. Details der Konfigu
ration der speicherstrukturierten Datei 55 und ihrer Einträge 112 werden im folgen
den mit Bezug auf Fig. 2 beschrieben.
Bei der bevorzugten Ausführungsform umfaßt die speicherstrukturierte Datei 55
einen Titel 110, auf den eine Anordnung von Einträgen 112a, b, c folgt, mit einem für
jedes für den Zugriff freigegebene Steuerobjekt 10 unterschiedlichen Eintrag 112.
Der Titel 110 ist aus einem 4 Byte langen Feld mit der Bezeichnung "Block_Length"
gebildet. Dieses Feld enthält eine Angabe (im Ganzzahlformat "long integer") der
Gesamtlänge der speicherstrukturierten Datei 55. Jeder Eintrag 112 wird aus den
vier Feldern Cntrl_hWnd 20, Name_Length 22, Cntrl_Name 24 und Obj-Pointer 26
gebildet.
Das Feld Cntrl_hWnd 20 ist vorzugsweise 4 Byte lang, und es enthält die Fenster
aktivierung des dazugehörigen Steuerobjekts 10. Die Fensteraktivierung definiert die
physischen Abmessungen des Fensters des Steuerelements, die Formatvorgaben
des Fensters, Beschriftungen und sonstige Informationen mit Bezug auf ein überge
ordnetes Fenster (d . h. das Container-Fenster).
Der Name des betreffenden Steuerobjekts steht als Zeichenfolge im Feld
Cntrl_Name 24. Da dieses Feld Zeichenfolgen mit variabler Länge zuläßt, liefert das
Feld Name_Length 22 eine Angabe der Länge des Namens des Steuerelements.
Vorzugsweise hat das Feld Name_Length 22 eine Länge von 4 Byte, und es enthält
die Angabe der Länge des Namens im Ganzzahlformat "long integer". Bei einer
Ausführungsform (die mit Bezug auf Fig. 4a und 4b ausführlicher beschrieben wird)
werden für die Steuerelemente z. B. Namen wie "IMGEDIT", "IMGADMIN",
"IMGTHUMB", "IMGSCAN" und "IMGANOT" verwendet.
Schließlich enthält das Feld Obj-Pointer 26 den Zeiger IDispatch für das betreffende
Steuerobjekt 10. Bei der bevorzugten Ausführungsform ist das Feld Obj-Pointer 26
etwa 4 Byte lang.
Die speicherstrukturierte Datei 55 stellt damit die Namen und die Fensteraktivierun
gen der Steuerelemente 10 sowie die dazugehörigen internen Objekt-Zeiger den
über die IDispatch-Schnittstelle 16 offen gelegten Steuerobjekten 10 zur Verfügung.
Die Verwendung der speicherstrukturierten Datei 55 durch die Steuerobjekte 10 bei
der bevorzugten Ausführungsform wird im folgenden beschrieben und ist in Fig. 3
dargestellt.
Jedes Steuerobjekt 10 (Fig. 1a), das den direkten Zugriff auf seine Methoden 12,
seine Eigenschaften 14 und die Fensteraktivierung ermöglicht, wird in der speicher
strukturierten Datei 55 während des anfänglichen Ladevorgangs des Steuerelements
10 in einem als "InitInstance" bezeichneten Initialisierungsprozeß 61 registriert.
Durch den Aufruf von InitInstance wird die speicherstrukturierte Datei 55 mit einem
bekannten Namen und in einem für den gemeinsamen Zugriff freigegebenen Spei
cherbereich 30 im Exklusivmodus geöffnet (bei Schritt 62 in Fig. 3). Durch die Öff
nung der Datei 55 im Exklusivmodus ist sichergestellt, daß die Einträge 112 in der
Datei anfänglich ohne Unterbrechung und ohne Zugriff durch andere Benutzer ge
schrieben werden. Die Einrichtung der Datei 55 mit einem bekannten und vom Steu
erelement erkannten Namen gewährleistet, daß die Einträge 112 allen in der Datei
55 registrierten Steuerobjekten 10 für den Lesezugriff zur Verfügung stehen, nach
dem die Steuerelemente 10 geladen sind. Nach dem Öffnen der speicherstruktu
rierten Datei 55 legt das betreffende Steuerobjekt 10 einen Eintrag 112 für das Ob
jekt 10 an und fügt ihn zur Datei 55 hinzu. Der neu hinzugefügte Eintrag 112 enthält
den Namen, die Länge des Namens, die Fensteraktivierung und den Objekt-Zeiger
(von IDispatch) entsprechend der vorstehenden Beschreibung zu Fig. 2. Wenn der
neue Eintrag 112 vollständig ist, wird der Titel 110 der Datei 55 aktualisiert, so daß
er die neue (größere) Länge der Datei 55 mit dem neu hinzugefügten Eintrag 112
wiedergibt.
Während der Verarbeitung der Daten wird im Schritt 64 in Fig. 3 eine Methode oder
eine Funktion eines ersten Steuerobjekts 10a aufgerufen. Das Steuerobjekt 10a
kann bestimmen, daß anschließend eine zusätzliche Verarbeitung durch eine be
stimmte Methode erforderlich oder erwünscht ist. Das Steuerobjekt 10a prüft die
speicherstrukturierte Datei 55. Das Steuerobjekt 10a weiß durch den bekannten
(globalen) Namen der speicherstrukturierten Datei 55, wie auf die speicherstruktu
rierte Datei 55 im Arbeitsspeicher 30 zugegriffen werden kann, und das Steuerobjekt
10a weiß, wie die Datei 55 gelesen werden kann, da das Steuerelement 10a die
Struktur (die Feldkonfiguration) der Datei 55 kennt. Das Steuerelement 10a erfährt,
mit welchem Steuerelement kommuniziert werden kann, indem der Name in der be
sonderen Eigenschaft "DestControl" mit dem in der speicherstrukturierten Datei ge
speicherten Namen des Steuerelements verglichen wird. Durch die Abfrage der
speicherstrukturierten Datei 55 und der Liste der darin registrierten/verfügbaren
Steuerelemente 10 bestimmt das Steuerobjekt 10a auf der Grundlage der Funktion
des Steuerelements eine geeignete aufzurufende Methode eines anderen Steuer
objekts 10b. Durch die Verwendung des Inhalts des Objekt-Zeiger-Felds 26 aus dem
Dateieintrag 112 zum gewünschten Steuerobjekt 10b kommuniziert das Steuerobjekt
10a in Schritt 65 über IDispatch direkt mit dem Steuerobjekt 10b.
Insbesondere ruft das Steuerobjekt 10a direkt die gewünschte Methode des Objekts
10b auf (Schritt 66).
Alternativ dazu oder zusätzlich kann das Steuerobjekt 10a während der Verarbeitung
direkt das Arbeitsfenster (oder ein anderes Datenelement) eines anderen Steuerob
jekts 10b aktualisieren. Dies erfolgt, indem das Steuerobjekt 10a durch den Eintrag
112 zum Steuerobjekt 10b in der speicherstrukturierten Datei die Fensteraktivierung
des Steuerobjekts 10b erhält. Nachdem das erste Steuerobjekt 10a die Fensterakti
vierung des Steuerobjekts 10b erhalten hat, überträgt (zeichnet) das Steuerobjekt
10a die betreffenden Daten wie gewünscht direkt in das Arbeitsfenster des Steuer
objekts 10b. Zusätzlich benutzt das Steuerobjekt 10a den IDispatch Objekt-Zeiger
vom Dateieintrag 112 für das Objekt 10b in der speicherstrukturierten Datei 55 und
ruft direkt die Auffrischmethode des Steuerobjekts 10b auf. Daraufhin bemerkt das
Steuerobjekt 10b den Aufruf seiner Auffrischmethode, und es weiß daher, daß sein
Arbeitsfenster einen geänderten Inhalt hat. Unter Verwendung seiner eigenen Logik
sieht das Steuerobjekt 10b weiter die Bilddaten, und es erkennt das Vorliegen eines
Fensters und die darin enthaltenen Daten, die von dem (dem Steuerobjekt 10b un
bekannten) Steuerobjekt 10a bereitgestellt werden. Das Steuerobjekt 10b reicht die
Änderungen ein, die das erste Steuerobjekt 10a an seinem Fenster vorgenommen
hat (Schritt 69).
Die Einreichung kann auf zwei Arten erfolgen - durch Sichern der Datenänderung
oder durch einfache Aktualisierung der Fensteranzeige aufgrund der Änderung der
Dateninhalte. Schritt 69 in Fig. 3 betrifft eine oder beide Arten der Einreichung.
Bei der bevorzugten Ausführungsform ist die Auffrischmethode eine in die Objekte
10 integrierte standardmäßige OLE-Methode. Die Auffrischmethode weist das Steu
erobjekt 10 an, eine Neuzeichnung seines Arbeitsfensters vorzunehmen, um die
Aktualisierung der Anzeige herbeizuführen. Durch die Neuzeichnung des Arbeitsfen
sters werden die neuen Daten für den Endanwender sichtbar. Somit ermöglicht es
der Aufruf der Auffrischmethode des Steuerobjekts 10b durch das Steuerobjekt 10a,
daß das Steuerobjekt 10b in angemessener Zeit die an seinem Arbeitsfenster vor
genommenen Änderungen einreihen kann.
Bei der bevorzugten Ausführungsform liegt die speicherstrukturierte Datei 55 als
tomporäres Speicherobjekt vor, und sie wird heruntergeladen, wenn das Container
programm 13 den Anwendungszusammenhang verläßt (falls z. B. das Anwen
dungsprogramm 13 abgebrochen oder geschlossen wird usw.). Wenn das Contai
nerprogramm 13 den Anwendungszusammenhang verläßt, wird ein Referenzzähl
wert in den Steuerelementen 10 auf null gesetzt. Wenn der Referenzzählwert eines
Steuerelements 10 gleich null ist, wird das Steuerelement 10 aus dem Arbeitsspei
cher entfernt, und sein Eintrag 112 in der speicherstrukturierten Datei 55 wird ge
löscht. Die Steuerelemente 10 werden durch einen standardmäßigen Eingabepunkt
mit der Bezeichnung ExitInstance entladen. Vorzugsweise ist ExitInstance ein stan
dardmäßiger Eingabepunkt, der beim Entladen einer DLL oder eines OLE-Steuer
elements aufgerufen wird.
Zum Zweck der Veranschaulichung ist in Fig. 4a und Fig. 4b anhand des Beispiels
einer Bildbetrachtungsanwendung 71 die vorstehend beschriebene erfindungsge
mäße Vorrichtung und das erfindungsgemäße Verfahren gezeigt. In Fig. 4a dient die
Bildanwendung 71 als Steuereinrichtung für fünf OLE-Steuerelemente, nämlich die
Bildbearbeitung 73, die Anmerkungs-Symbolleiste 75, die Miniaturansichten 76, die
Abtastung 74 und die Verwaltung 72. Unter Verwendung von InitInstance lädt die
Bildanwendung 71 die Steuerobjekte 72, 73, 74, 75, 76, die jeweils dazugehörige
Methoden und Eigenschaften haben, in den Arbeitsspeicher. Jedes Steuerelement
72, 73, 74, 75, 76 legt während der Ausführung von InitInstance einen dazugehöri
gen Eintrag 112 in der speicherstrukturierten Datei 55 an und registriert ihn dort. In
Fig. 4B ist eine Abbildung des Bildschirminhalts der in Fig. 4a dargestellten Contai
ner-Bildanwendung 71 wiedergegeben.
Im Sinne einer Veranschaulichung ist das Steuerobjekt Bildbearbeitung 73 das we
sentliche Arbeits-Steuerelement. Durch die Bearbeitung der Eigenschaften und den
Aufruf der Methoden des Steuerobjekts 73 kann ein Endanwender ein Bilddokument
anzeigen und verwalten. Durch das Steuerobjekt 73 können beispielsweise Bild
dokumente geöffnet und angelegt werden, und Seiten können eingesehen, hinzu
gefügt und entfernt werden. Mit verschiedenen interaktiven Werkzeugen können ein
gesehene Seiten durchlaufen, skaliert und gedreht werden.
Das Steuerobjekt Anmerkungs-Symbolleiste 75 ermöglicht die Einrichtung indivi
dueller Symbolleisten. Ein Endanwender könnte beispielsweise an einer Arbeits
palette Pen-Elemente zur Hervorhebung in drei unterschiedlichen Farben wünschen,
statt einen einzelnen Pen mit ständig wechselnden Eigenschaften zu benutzen. Das
Steuerelement Anmerkungs-Symbolleiste 75 stellt eine interaktive Schnittstelle mit
unterstützenden Verarbeitungsvorgängen zur Verfügung, um solche Änderungen
vorzunehmen.
Das Steuerelement Miniaturansicht 76 stellt eine visuelle Schnittstelle bereit, die je
nach Bedarf die Anzeige von Miniaturansichten einzelner Dokumentseiten ermög
licht.
Das Steuerelement Abtastung 74 verwendet TWAIN-Treiber, um mit Scanner-Gerä
ten nach dem Industriestandard zu kommunizieren, so daß Scanner-Optionen ver
waltet, der Abtastprozeß gesteuert und Rasterbilddaten in Bilddokumentdateien
umgewandelt werden.
Das Steuerelement Verwaltung 72 arbeitet in der zweiten Reihe (im Hintergrund).
Das Steuerelement Verwaltung 72 bietet Bilddatei-Unterstützung für lokale und wei
tergeleitete Bilddateien, sowie die Unterstützung von für Bilder spezifischen gemein
samen Dialogfeldern. Mit der allgemeinen Bilddatei-Unterstützung können die Be
nutzer Verzeichnisse anlegen, Verzeichnisse und Bilddateien löschen, Bilddatei-At
tribute abrufen und Standardvorgaben für Bilddatei-Attribute verwalten. Die Benutzer
können in mehrseitigen Bilddateien Seiten anhängen, einfügen und ersetzen. Zu
sätzlich unterstützt dieses Steuerelement die Anzeige von gemeinsamen
Dialogfeldern, die bei der Auswahl oder bei der Druckausgabe von Bilddateien
bildspezifische Optionen zur Verfügung stellen.
Mit Bezug auf die Erfindung könnte beispielsweise die Bildanwendung 71 einen Ab
tast- und Anzeigebefehl an das Abtast-Steuerobjekt 74 absetzen. Das Abtast-Steu
erobjekt 74 empfängt während eines Abtastvorgangs die rohen Bilddaten
(Rasterdatenbits) vom Scanner. Anschließend bestimmt das Abtast-Steuerobjekt 74,
was mit den Datenbits geschehen soll. Gemäß dem ursprünglichen Befehl soll das
abgetastete Bild angezeigt werden, so daß das Abtast-Steuerobjekt 74 nach dem
Namen der Eigenschaft "DestControl" sucht und diesen Namen verwendet, um in der
speicherstrukturierten Datei 55 nach einem Anzeige-Steuerelement zu suchen. In
der Anordnung der Einträge 112 in der speicherstrukturierten Datei 55 findet das
Abtast-Steuerobjekt 74 den Eintrag 112 des Steuerobjekts Bildbearbeitung 73, der
während der Ausführung von InitInstance in der Datei 55 angelegt wurde.
Von diesem Dateieintrag 112 erhält das Abtast-Steuerobjekt 74 die Fensteraktivie
rung und den IDispatch Objekt-Zeiger für das Steuerobjekt Bildbearbeitung 73. Unter
Verwendung der Fensteraktivierung zeichnet das Abtast-Steuerobjekt 74 die abgeta
steten Bilddaten direkt in das Arbeitsfenster des Steuerobjekts Bildbearbeitung 73,
um das abgetastete Bild anzuzeigen. Unter Verwendung des IDispatch Objekt-Zei
gers zum Steuerobjekt Bildbearbeitung 73 ruft das Abtast-Steuerobjekt 74 zusätzlich
direkt die Auffrischmethode des Objekts Bildbearbeitung 73 auf. Infolge des Aufrufs
der Auffrischmethode durch das Abtast-Steuerobjekt 74 zeichnet das Bildbearbei
tungs-Objekt 73 die Anzeige in seinem Arbeitsfenster neu, da das Objekt erkannt
hat, daß jetzt neue Anzeigedaten vorliegen. Das heißt, daß das Steuerelement
Bildbearbeitung 73 über die Auffrischmethode dieses Steuerelements die vom Ab
tast-Steuerelement 74 vorgenommenen Änderungen des Fensterinhalts einreihen
kann.
Das Steuerelement Bildbearbeitung 73 durchsucht dann wiederum die speicher
strukturierte Datei 55, um den IDispatch Objekt-Zeiger zum Verwaltungs-Steuerele
ment 72 zu erhalten. Das Steuerelement Bildbearbeitung 73 verwendet diesen Zei
ger zum direkten Zugriff auf die Methoden im Verwaltungs-Steuerelement 72, um
Bilddaten auf der Platte zu sichern.
Dieses direkte Zusammenwirken und die Kommunikation zwischen den Steuerob
jekten 73, 74, 72 usw. sind Gegenstand der Erfindung. Bislang war es bei Systemen
nach dem Stand der Technik erforderlich, daß die Bildanwendung 71 (i) die abgeta
steten Bilddaten vom Abtast-Steuerobjekt 74 abruft und (ii) anschließend diese Da
ten für die Anzeige im gewünschten Arbeitsfenster dem Steuerelement Bildbearbei
tung 73 und für das Sichern auf der Platte dem Verwaltungs-Steuerelement 72 zur
Verfügung stellt. Somit stellt die Erfindung eine erhöhte Effizienz und Geschwindig
keit bei der Ausführung von Aufgaben und bei der Datenverarbeitung bereit. Die Er
findung ergibt weiter eine Einsparung beim Speicherbedarf, indem das Laden von
Steuerobjekten erst beim Aufruf eines Befehls bzw. bei dessen Ausführung erfolgt.
Weiter ermöglicht die Erfindung die direkte Wiederverwendung von Steuerelementen
durch andere Steuerelemente in einer Container-Anwendung.
Die Erfindung wurde im Einzelnen mit Bezug auf bevorzugte Ausführungsformen
dargestellt und beschrieben; doch für Fachleute ist ersichtlich, daß verschiedene
Änderungen im Rahmen der Erfindung möglich sind. Beispielsweise kann der Ob
jekt-Zeiger der speicherstrukturierten Datei ein anderer interner Objekt-Zeiger zum
betreffenden Steuerobjekt sein, solange der Zeiger für ein anforderndes Steuerob
jekt den direkten Zugriff auf die Methoden und Eigenschaften des angeforderten
Steuerobjekts freigibt.
Claims (22)
1. Computervorrichtung in einem digitalen Prozessor (18) mit einem Arbeitsspei
cher (30) zur Ausführung von Anwendungsprogrammen, wobei jedes Anwen
dungsprogramm aus einer Gruppe von Programmobjekten und -komponenten
gebildet ist, zur Aktivierung von Kommunikationsvorgängen zwischen in einem
gemeinsamen Anwendungsprogramm enthaltenen Programmobjekten, gekenn
zeichnet durch:
eine Vielzahl von Steuerobjekten (10), die in einem gemeinsamen im Arbeits speicher befindlichen Anwendungsprogramm (13) enthalten sind, wobei jedes Steuerobjekt (10) Funktionen, besondere Eigenschaften und Datenelemente an gibt und anfangs nur für den Zugriff und die Ausführung durch das gemeinsame Anwendungsprogramm (13) definiert ist, so daß das Anwendungsprogramm als Container für Arbeitsobjekte dient; und
eine speicherstrukturierte Datei (55) im Arbeitsspeicher (30) zur Freigabe des Zugriffs und der Kommunikation zwischen unterschiedlichen Steuerobjekten (10a, 10b . . . ), wobei die speicherstrukturierte Datei (55) Bezugsangaben zu den Steuerobjekten und zwar für jedes Steuerobjekt eine jeweils unterschiedliche Bezugsangabe enthält, so daß ein erstes Steuerobjekt durch die Bezugsangabe zum zweiten Steuerobjekt in der speicherstrukturierten Datei direkt auf ein zwei tes Steuerobjekt zugreifen kann, wobei das Anwendungsprogramm nicht in den Zugriff auf das zweite Steuerobjekt einbezogen wird.
eine Vielzahl von Steuerobjekten (10), die in einem gemeinsamen im Arbeits speicher befindlichen Anwendungsprogramm (13) enthalten sind, wobei jedes Steuerobjekt (10) Funktionen, besondere Eigenschaften und Datenelemente an gibt und anfangs nur für den Zugriff und die Ausführung durch das gemeinsame Anwendungsprogramm (13) definiert ist, so daß das Anwendungsprogramm als Container für Arbeitsobjekte dient; und
eine speicherstrukturierte Datei (55) im Arbeitsspeicher (30) zur Freigabe des Zugriffs und der Kommunikation zwischen unterschiedlichen Steuerobjekten (10a, 10b . . . ), wobei die speicherstrukturierte Datei (55) Bezugsangaben zu den Steuerobjekten und zwar für jedes Steuerobjekt eine jeweils unterschiedliche Bezugsangabe enthält, so daß ein erstes Steuerobjekt durch die Bezugsangabe zum zweiten Steuerobjekt in der speicherstrukturierten Datei direkt auf ein zwei tes Steuerobjekt zugreifen kann, wobei das Anwendungsprogramm nicht in den Zugriff auf das zweite Steuerobjekt einbezogen wird.
2. Computervorrichtung nach Anspruch 1, wobei die speicherstrukturierte Datei (55)
durch die für den Zugriff auf die entsprechenden Steuerobjekte (10a, 10b . . . ) ver
wendeten Bezugsangaben einem Steuerobjekt erlaubt, die Funktionen eines an
deren Steuerobjekts aufzurufen und dessen Datenelemente zu verwenden und
zu aktualisieren.
3. Computervorrichtung nach Anspruch 2, wobei die Funktionen eine Auffrischme
thode beinhalten, so daß ein Steuerobjekt bei der direkten Aktualisierung eines
Datenelements eines bestimmten anderen Steuerobjekts die Auffrischmethode
des bestimmten anderen Steuerobjekts aufruft, um das aktualisierte Daten
element einzureihen.
4. Computervorrichtung nach Anspruch 1, wobei die speicherstrukturierte Datei (55)
gebildet ist aus (i) einer Angabe der Blocklänge (110) zur Vorgabe der Speicher
blockgröße der Datei und (ii) einer Anordnung von Einträgen (20, 22, 24, 26) zur
Auflistung von Angaben der Steuerobjekte und von ihren Funktionsbeschreibun
gen, wobei für jedes Steuerobjekt jeweils ein unterschiedlicher Eintrag aufgelistet
ist und wobei jeder Eintrag aus einer Gruppe von Feldern gebildet ist, die ein
Namensfeld (24) zur Angabe des dazugehörigen Steuerobjekts und weitere Fel
der zur Angabe der entsprechenden Funktionsbeschreibungen enthält.
5. Computervorrichtung nach Anspruch 4, wobei die Funktionsbeschreibungen zu
jedem Steuerobjekt eine dazugehörige Fensteraktivierung enthalten und wobei
jede Fensteraktivierung Bildschirmelemente eines Betrachtungsfensters defi
niert, welche die Größe, Anordnung und Ausgestaltung des Fensters einschlie
ßen.
6. Computervorrichtung nach Anspruch 1, wobei jedes Steuerobjekt eine Objekt
verknüpfungs- und -einbettungssteuerung OLE (Object Linking and Embedding)
ist und wobei das Anwendungsprogramm ein OLE-Steuer-Container Programm
ist.
7. Computervorrichtung nach Anspruch 6, wobei jedes Steuerelement verbindbare
Softwarekomponenten enthält und wobei jede Komponente binären Code ent
hält.
8. Computervorrichtung nach Anspruch 7, wobei Kommunikationsvorgänge zwi
schen den Steuerelementen über ein gemeinsames Objektmodell aufgebaut
werden, das einen Mechanismus zur Verbindung der Binärcodes unterschiedli
cher Komponenten bereitstellt.
9. Computervorrichtung nach Anspruch 4, wobei jeder Eintrag in der speicher
strukturierten Datei ein Bezugsfeld einschließt, das einen Zeiger zum dazugehö
rigen Steuerobjekt enthält.
10. Computervorrichtung nach Anspruch 1, wobei die speicherstrukturierte Datei (55)
einen wiedererkennbaren Namen im Arbeitsspeicher aufweist, um den Lesezu
griff auf die Datei durch die Steuerobjekte freizugeben.
11. Computervorrichtung nach Anspruch 1, wobei jedes Steuerobjekt eine beson
dere Eigenschaft bereitstellt, die eine Angabe des dazugehörigen Steuerobjekts
für Kommunikationsvorgänge entsprechend der Vorgabe in der speicherstruktu
rierten Datei enthält.
12. Verfahren zur Ausführung von Anwendungsprogrammen in einem digitalen Pro
zessor (18) mit einem Arbeitsspeicher (30) zur Freigabe von Kommunikations
vorgängen zwischen in einem gemeinsamen Anwendungsprogramm enthaltenen
Programmobjekten, wobei das Verfahren die folgenden Schritte umfaßt:
Bereitstellung einer Vielzahl von selbständigen Objekten (10), die in einem ge meinsamen im Arbeitsspeicher befindlichen Anwendungsprogramm enthaltenen sind, wobei jedes Objekt Funktionen und Datenelemente angibt und anfangs nur für den Zugriff und die Ausführung durch das gemeinsame Anwendungspro gramm definiert ist, so daß das gemeinsame Anwendungsprogramm als Con tainer für Arbeitsobjekte dient;
Bereitstellung einen speicherstrukturierten- Datei (55) im Arbeitsspeicher (30);
Aufnahme von Bezugsangaben zu den Objekten (10) in der speicherstrukturier ten Datei, so daß der Zugriff auf andere Objekte und die direkte Kommunikation zwischen unterschiedlichen Objekten ermöglicht wird, wobei für jedes Objekt eine unterschiedliche Bezugsangabe vorliegt; und direkter Zugriff von einem Arbeitsobjekt auf ein gewünschtes Objekt durch die - Bezugsangabe zum gewünschten Objekt in der speicherstrukturierten Datei, wo bei das Anwendungsprogramm nicht in den Zugriff auf das gewünschte Objekt einbezogen wird.
Bereitstellung einer Vielzahl von selbständigen Objekten (10), die in einem ge meinsamen im Arbeitsspeicher befindlichen Anwendungsprogramm enthaltenen sind, wobei jedes Objekt Funktionen und Datenelemente angibt und anfangs nur für den Zugriff und die Ausführung durch das gemeinsame Anwendungspro gramm definiert ist, so daß das gemeinsame Anwendungsprogramm als Con tainer für Arbeitsobjekte dient;
Bereitstellung einen speicherstrukturierten- Datei (55) im Arbeitsspeicher (30);
Aufnahme von Bezugsangaben zu den Objekten (10) in der speicherstrukturier ten Datei, so daß der Zugriff auf andere Objekte und die direkte Kommunikation zwischen unterschiedlichen Objekten ermöglicht wird, wobei für jedes Objekt eine unterschiedliche Bezugsangabe vorliegt; und direkter Zugriff von einem Arbeitsobjekt auf ein gewünschtes Objekt durch die - Bezugsangabe zum gewünschten Objekt in der speicherstrukturierten Datei, wo bei das Anwendungsprogramm nicht in den Zugriff auf das gewünschte Objekt einbezogen wird.
13. Verfahren nach Anspruch 12, wobei weiter ein Schritt enthalten ist, der es dem
Arbeitsobjekt ermöglicht, über die Bezugsangaben die Funktionen eines ge
wünschten Objekts aufzurufen und dessen Datenelemente zu verwenden und zu
aktualisieren.
14. Verfahren nach Anspruch 13, wobei die Funktionen eine Auffrischmethode ein
schließen, so daß das Arbeitsobjekt bei der direkten Aktualisierung eines Da
tenelements eines bestimmten anderen Objekts seine Auffrischmethode und die
Auffrischmethode des bestimmten anderen Steuerobjekts aufruft, um das aktua
lisierte Datenelement einzureihen.
15. Verfahren nach Anspruch 12, wobei der Schritt der Aufnahme von Bezugsanga
ben in der speicherstrukturierten Datei (55) weiter beinhaltet, daß die speicher
strukturierte Datei eine Angabe der Speicherblockgröße (110) der Datei enthält
sowie eine Anordnung von Einträgen zur Aufnahme der Bezugsangaben und zur
Auflistung von Funktionsbeschreibungen der Objekte, wobei für jedes Objekt je
weils ein unterschiedlicher Eintrag aufgelistet ist und wobei jeder Eintrag aus
einer Gruppe von Feldern gebildet ist, die ein Namensfeld (24) zur Angabe des
dazugehörigen Objekts und weitere Felder zur Angabe der entsprechenden
Funktionsbeschreibungen enthält.
16. Verfahren nach Anspruch 15, wobei weiter die Funktionsbeschreibungen zu je
dem Objekt eine dazugehörige Fensteraktivierung enthalten und wobei jede
Fensteraktivierung Bildschirmelemente eines Betrachtungsfensters definiert,
welche die Größe, Anordnung und Ausgestaltung des Fensters einschließen.
17. Verfahren nach Anspruch 12, wobei der Schritt der Bereitstellung von Objekten
die Bereitstellung von Objektverknüpfungs- und -einbettungs-Steuerobjekten
OLE (Object Linking and Embedding) beinhaltet und wobei das Anwendungs
programm ein OLE-Steuer-Container Programm ist.
18. Verfahren nach Anspruch 17, wobei weiter jedes Steuerobjekt verbindbare Soft
warekomponenten enthält und wobei jede Komponente binären Code enthält.
19. Verfahren nach Anspruch 18, wobei Kommunikationsvorgänge zwischen den
Steuerelementen über ein gemeinsames Objektmodell aufgebaut werden, das
einen Mechanismus zur Verbindung der Binärcodes unterschiedlicher Kompo
nenten bereitstellt.
20. Verfahren nach Anspruch 15, wobei der Schritt der Bereitstellung einer Anord
nung von Einträgen weiter die Bereitstellung eines Bezugsfelds einschließt, das
einen Zeiger zum dazugehörigen Objekt enthält.
21. Verfahren nach Anspruch 12, wobei der Schritt der Bereitstellung einer speicher
strukturierten Datei (55) die Bereitstellung eines wiedererkennbaren Namens im
Arbeitsspeicher einschließt, um den Lesezugriff auf die Datei durch die Objekte
freizugeben.
22. Verfahren nach Anspruch 12, wobei der Schritt des direkten Zugriffs auf ein ge
wünschtes Objekt die Aufnahme einer Angabe des gewünschten Objekts als Ei
genschaft des Arbeitsobjekts einschließt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/722,366 US6161148A (en) | 1996-09-27 | 1996-09-27 | Computer method and apparatus for interactive objects controls |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19742804A1 true DE19742804A1 (de) | 1998-04-02 |
Family
ID=24901554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19742804A Withdrawn DE19742804A1 (de) | 1996-09-27 | 1997-09-27 | Computer-Verfahren und -Vorrichtung für interaktive Objektsteuerungen |
Country Status (3)
Country | Link |
---|---|
US (1) | US6161148A (de) |
JP (1) | JPH10133878A (de) |
DE (1) | DE19742804A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976764A (zh) * | 2019-03-28 | 2019-07-05 | 深圳市创联时代科技有限公司 | 一种句柄转换方法 |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020065951A1 (en) * | 1997-12-23 | 2002-05-30 | Victor Girardi | Ole automation server for manipulation of mail piece data |
US7010177B1 (en) * | 1998-08-27 | 2006-03-07 | Intel Corporation | Portability of digital images |
US6799320B1 (en) * | 1998-12-16 | 2004-09-28 | Microsoft Corporation | Providing binding options for component interfaces |
US6405149B1 (en) * | 1999-06-23 | 2002-06-11 | Louis K. Tsai | System and method for testing a telecommunication system |
JP3922841B2 (ja) * | 1999-08-24 | 2007-05-30 | 富士通株式会社 | 共通インスタンス管理方式を適用したファイル更新方法及び装置 |
US6851104B1 (en) * | 2000-08-14 | 2005-02-01 | Rodrigues Da Silva Fernando Jose Barros | System and method for programming using independent and reusable software units |
US20040003132A1 (en) * | 2000-12-06 | 2004-01-01 | Biosentients, Inc. | Data pool architecture, system, and method for intelligent object data in heterogeneous data environments |
US20100223295A1 (en) * | 2000-12-06 | 2010-09-02 | Io Informatics, Inc. | Applied Semantic Knowledgebases and Applications Thereof |
US6985903B2 (en) * | 2002-01-25 | 2006-01-10 | Qualcomm, Incorporated | Method and system for storage and fast retrieval of digital terrain model elevations for use in positioning systems |
JP4458929B2 (ja) * | 2003-07-16 | 2010-04-28 | キヤノン株式会社 | プログラム間通信装置、プログラム間通信方法、コンピュータ読み取り可能な記録媒体およびプログラム |
US8528003B2 (en) * | 2003-10-27 | 2013-09-03 | Yahoo! Inc. | Communication among browser windows |
ATE489114T1 (de) * | 2004-02-11 | 2010-12-15 | Procter & Gamble | Hydrophobe oberflächenbeschichtete saugfähige artikel |
US7680250B1 (en) | 2004-11-24 | 2010-03-16 | Interactive Quality Services | Interactive method and system of testing an automated call telephonic communication system |
JP4140605B2 (ja) * | 2004-12-22 | 2008-08-27 | 村田機械株式会社 | 画像処理装置 |
CA2600503C (en) * | 2005-04-18 | 2012-10-09 | Research In Motion Limited | Method and system for executing a container-managed application on a processing device |
US9052973B2 (en) * | 2005-11-07 | 2015-06-09 | Hewlett-Packard Development Company, L.P. | Inter-process communication mechanism |
US8095513B2 (en) * | 2006-06-05 | 2012-01-10 | Microsoft Corporation | Safe buffer |
US20070283117A1 (en) * | 2006-06-05 | 2007-12-06 | Microsoft Corporation | Unmanaged memory accessor |
US8539073B1 (en) | 2006-12-29 | 2013-09-17 | Google Inc. | Startup of container applications |
US8335817B1 (en) | 2006-12-29 | 2012-12-18 | Google Inc. | Message passing within a web based application framework |
US7895296B1 (en) * | 2006-12-29 | 2011-02-22 | Google, Inc. | Local storage for web based native applications |
US9384346B1 (en) | 2006-12-29 | 2016-07-05 | Google Inc. | Local service access within a web based application framework |
US8612547B1 (en) | 2006-12-29 | 2013-12-17 | Google Inc. | Container interrupt services |
US8248636B1 (en) | 2006-12-29 | 2012-08-21 | Google Inc. | WYSIWYG printing for web based applications |
US8079039B2 (en) * | 2007-03-09 | 2011-12-13 | Microsoft Corporation | Isolating, managing and communicating with user interface elements |
CN102722485B (zh) * | 2011-03-29 | 2014-09-03 | 恒生电子股份有限公司 | 一种内存数据集感知方法及装置 |
CN111242705B (zh) * | 2019-12-31 | 2023-12-26 | 航天信息股份有限公司企业服务分公司 | 一种发票数据的获取方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870088A (en) * | 1996-05-09 | 1999-02-09 | National Instruments Corporation | System and method for editing a control via direct graphical user interaction |
-
1996
- 1996-09-27 US US08/722,366 patent/US6161148A/en not_active Expired - Lifetime
-
1997
- 1997-09-26 JP JP9262315A patent/JPH10133878A/ja active Pending
- 1997-09-27 DE DE19742804A patent/DE19742804A1/de not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976764A (zh) * | 2019-03-28 | 2019-07-05 | 深圳市创联时代科技有限公司 | 一种句柄转换方法 |
Also Published As
Publication number | Publication date |
---|---|
JPH10133878A (ja) | 1998-05-22 |
US6161148A (en) | 2000-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19742804A1 (de) | Computer-Verfahren und -Vorrichtung für interaktive Objektsteuerungen | |
DE10135445B4 (de) | Integriertes Verfahren für das Schaffen einer aktualisierbaren Netzabfrage | |
DE19842688B4 (de) | Verfahren zum Filtern von Daten, die von einem Datenanbieter stammen | |
DE60319229T2 (de) | Verfahren und system zur erweiterung der api eines dateisystems | |
DE3751228T2 (de) | Verfahren und Vorrichtung zur Wiederauffindung von gespeicherten Grafikdaten. | |
DE69637436T2 (de) | Objektorientiertes Kommunikationssystem mit Unterstützung für mehrere entfernte Maschinentypen | |
DE69535571T2 (de) | Datenaustausch mit erweiterten Zwischenablage-Datenformaten | |
DE60131683T2 (de) | Verfahren und system zur verwaltung von mehreren netzwerk-betriebsmitteln | |
DE3908459C2 (de) | Netzwerkserver | |
DE3883733T2 (de) | Bedienungsverfahren eines elektronischen Datenverarbeitungssystems zum Dokumententransfer zwischen Endbenutzern. | |
EP1311989B1 (de) | Verfahren zur automatischen recherche | |
DE19800423A1 (de) | Rechnerverfahren und -vorrichtung zur Vorabansicht von Dateien außerhalb eines Andwendungsprogramms | |
DE19844013A1 (de) | Strukturierter Arbeitsordner | |
DE69400870T2 (de) | Dynamisches verknüpfungssystem | |
DE69628374T2 (de) | Datenverwaltungssystem | |
DE19835647A1 (de) | Computersystem und Verfahren zum Lesen von HID-Dateneinheiten | |
DE19959765B4 (de) | Datei-Editor für mehrere Datenuntermengen | |
DE69127399T2 (de) | Verfahren zur automatischen Löschung vorübergehender Dokumentverbindungen in einem Datenverarbeitungssystem | |
DE69927114T2 (de) | Verfahren und System zum Darstellen und Senden von Nachrichten | |
DE10129636A1 (de) | Verfahren und Vorrichtung zum Verknüpfen elektronischer Tinte mit personengebundenen elektronischen Informationssystemen | |
DE602004008742T2 (de) | Methode und system zum abbilden von xml auf eine n-dimensionale datenstruktur | |
DE69633373T2 (de) | Verfahren und Gerät zur Programmierung eines Aufgabentickets in einem Dokumentenverarbeitungssystem | |
DE69930352T2 (de) | Verfahren und Vorrichtung zur Animierung von Videospezialeffekten | |
DE69934174T2 (de) | Verfahren und Vorrichtung zur digitalen Bildbearbeitung | |
DE69030372T2 (de) | Verfahren zur Datenspeicherbedarfsverminderung in Verbindung mit Rechnerfensterumgebung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8128 | New person/name/address of the agent |
Representative=s name: WUESTHOFF & WUESTHOFF PATENT- UND RECHTSANWAELTE, |
|
8127 | New person/name/address of the applicant |
Owner name: EASTMAN KODAK CO., ROCHESTER, N.Y., US |
|
8128 | New person/name/address of the agent |
Representative=s name: LEWANDOWSKY, K., DIPL.-ING., PAT.-ANW., 73033 GOEP |
|
8127 | New person/name/address of the applicant |
Owner name: EISOLUTIONS, INC., BILLERICA, MASS., US |
|
8127 | New person/name/address of the applicant |
Owner name: EISTREAM TECHNOLOGIES, INC., DALLAS, TEX., US |
|
8141 | Disposal/no request for examination |