DE19742804A1 - Computer-Verfahren und -Vorrichtung für interaktive Objektsteuerungen - Google Patents

Computer-Verfahren und -Vorrichtung für interaktive Objektsteuerungen

Info

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
Application number
DE19742804A
Other languages
English (en)
Inventor
John M Pratt
Richard Sontag
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Eastman Kodak Co
Original Assignee
Kodak Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kodak Ltd filed Critical Kodak Ltd
Publication of DE19742804A1 publication Critical patent/DE19742804A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/543User-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.
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.
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.
DE19742804A 1996-09-27 1997-09-27 Computer-Verfahren und -Vorrichtung für interaktive Objektsteuerungen Withdrawn DE19742804A1 (de)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109976764A (zh) * 2019-03-28 2019-07-05 深圳市创联时代科技有限公司 一种句柄转换方法

Families Citing this family (27)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (1)

* Cited by examiner, † Cited by third party
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