DE69535582T2 - Datenaustausch mit erweiterten Zwischenablage-Datenformaten - Google Patents

Datenaustausch mit erweiterten Zwischenablage-Datenformaten Download PDF

Info

Publication number
DE69535582T2
DE69535582T2 DE69535582T DE69535582T DE69535582T2 DE 69535582 T2 DE69535582 T2 DE 69535582T2 DE 69535582 T DE69535582 T DE 69535582T DE 69535582 T DE69535582 T DE 69535582T DE 69535582 T2 DE69535582 T2 DE 69535582T2
Authority
DE
Germany
Prior art keywords
data
clipboard
file
field
format
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.)
Expired - Lifetime
Application number
DE69535582T
Other languages
English (en)
Other versions
DE69535582D1 (de
Inventor
Christopher J. Kirkland Guzak
Satoshi Bellevue Nakajima
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=23397289&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69535582(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Application granted granted Critical
Publication of DE69535582D1 publication Critical patent/DE69535582D1/de
Publication of DE69535582T2 publication Critical patent/DE69535582T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/953Organization of data
    • Y10S707/955Object-oriented
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing

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)
  • Information Transfer Between Computers (AREA)

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft im Allgemeinen Datenverarbeitungssysteme und insbesondere die Datenübertragung innerhalb des Datenverarbeitungssystems.
  • ALLGEMEINER STAND DER TECHNIK
  • Die Zwischenablage ist eine Datenübertragungsfunktion des Betriebssystems "MICROSOFT" WINDOWS, Version 3.1, das von der Microsoft Corporation in Redmond, Washington vertrieben wird. Die Zwischenablage wird zum Übertragen von Daten zwischen Anwendungen oder innerhalb einer einzigen Anwendung verwendet. Die Zwischenablage enthält ein Set von Funktionen und Meldungen, die Anwendungen in die Lage versetzen, Daten über die Zwischenablage zu übertragen. Die Zwischenablage kann als allgemeiner Bereich zum Speichern von Datenkennungen (d.h. eindeutigen Kennungen für Datenobjekte) betrachtet werden, für die Anwendungen formatierte Daten austauschen können. Das Betriebssystem "MICROSOFT" WINDOWS, Version 3.1 zählt eine feste Anzahl von Zwischenablageformaten auf. Beispielsweise wird das Zwischenablageformat CF_BITMAP für das Übertragen von Bitmaps verwendet, und das Zwischenablageformat CF_TEXT wird zum Übertragen von Feldern mit Textzeichen verwendet. Die Zwischenablage kann die gleichen Daten gleichzeitig in verschiedenen Zwischenablageformaten enthalten.
  • Die Benutzer von Anwendungen verwenden die Zwischenablage durch Aufrufen der Zwischenablagenbefehle, wie beispielsweise "Ausschneiden", "Kopieren" oder "Einfügen". Der Zwischenablagenbefehl zum Kopieren kopiert einen ausgewählten Abschnitt von Daten in einem Zwischenablageformat in die Zwischenablage, indem eine Kennung in das Datenobjekt kopiert wird, das den ausgewählten Abschnitt von Daten in einem Zwischenablageformat in der Zwischenablage enthält. Der ausgewählte Abschnitt von Daten wird nicht aus der Quelle entfernt, aus der er stammt. Der Zwischenablagenbefehl zum Ausschneiden ist dem Kopierbefehl dadurch ähnlich, dass er einen ausgewählten Abschnitt von Daten in die Zwischenablage kopiert, doch unterscheidet sich der Zwischenablagenbefehl zum Ausschneiden dadurch vom Zwischenablagenbefehl zum Kopieren, dass er den ausgewählten Abschnitt von Daten aus der Quelle der Daten entfernt. Der Zwischenablagenbefehl zum Einfügen kopiert Daten aus der Zwischenablage in ein Ziel.
  • Das Microsoft OLE 2.01-Protokoll, erstellt von Microsoft Corporation, stellt einen Mechanismus für die Vereinfachung von Drag-and-Drop-Vorgängen bereit. Dieser Mechanismus verwendet Zwischenablageformate. Die Daten werden jedoch nicht über den Systemspeicher weitergeleitet, der für Ausschneide- und Kopiervorgänge verwendet wird; stattdessen ist die Übertragung von der Quelle auf das Ziel gerichtet.
  • Obwohl die Zwischenablage nützlich ist, sind die Formatierungsregelvorgaben für zahlreiche Anwendungen zu einschränkend. Insbesondere ist die Anzahl der Zwischenablageformate, die vom System bereitgestellt wird, zu gering, und die verfügbaren Formate sind zu eingeschränkt.
  • Daher ist es die Aufgabe der vorliegenden Erfindung, ein Verfahren und ein computerlesbares Medium bereitzustellen, die die Nutzbarkeit der Zwischenablage verbessern.
  • Diese Aufgabe wird durch den Gegenstand der unabhängigen Ansprüche gelöst.
  • Bevorzugte Ausführungsformen der vorliegenden Erfindung werden durch die abhängigen Ansprüche definiert.
  • Die vorliegende Erfindung überwindet die Einschränkungen der herkömmlichen Systeme durch das Bereitstellen erweiterter Zwischenablageformate. Diese erweiterten Zwischenablageformate enthalten ein Zwischenablageformat zum Aufnehmen des Inhalts einer Datei, so dass Daten, die keine Datei sind, übertragen werden können, und als Bestandteil der Übertragung werden die Daten in einer Datei verkapselt. Die erweiterten Zwischenablageformate enthalten auch ein Zwischenablageformat zum Aufnehmen eines Dateigruppen-Deskriptors. Der Dateigruppen-Deskriptor enthält eine Anzahl von Datei-Deskriptoren, und jeder Datei-Deskriptor enthält beschreibende Informationen über eine Datei oder über Daten, die während eines Datenübertragungsvorgangs in eine Datei integriert werden sollen.
  • Die erweiterten Zwischenablageformate, die von einer Ausführungsform der vorliegenden Erfindung bereitgestellt werden, können ein Dateilisten-Zwischenablageformat zum Speichern eines Werts für den Zugriff auf eine Dateilistenstruktur umfassen. Die Dateilistenstruktur beschreibt eine Liste von Dateien. Dieses Dateilisten-Zwischenablageformat kann wie andere Zwischenablageformate bei Dateiübertragungsvorgängen verwendet werden.
  • Die erweiterten Zwischenablageformate können auch ein Objektpositions-Zwischenablageformat umfassen, um die relativen Positionen von grafischen Objekten beim Anzeigen auf einer Ausgabevorrichtung zu speichern. Dieses Zwischenablageformat kann für Datenübertragungen von Objekten verwendet werden, um die relativen Objektpositionen der grafischen Objekte zueinander beizubehalten, die mit den Objekten nach Abschluss des Datenübertragungsvorgangs verknüpft sind.
  • Die erweiterten Zwischenablageformate können auch ein Zwischenablageformat für Dateinamenzuordnungen zum Aufnehmen einer Liste alternativer Bezeichnungen für Elemente umfassen, die während eines Datenübertragungsvorgangs übertragen werden. Eine Liste alternativer Bezeichnungen, die im Zwischenablageformat für Dateinamenzuordnungen enthalten ist, kann zum Umbenennen der Dateien verwendet werden, sobald die Datenübertragung abgeschlossen ist.
  • Erweiterte Zwischenablageformate, die von den Ausführungsformen der vorliegenden Erfindung bereitgestellt werden, können auch ausgewählte Zwischenablageformate zum Aufnehmen von Daten umfassen, die den Zugriff auf Nicht-Dateisystem-Objekte ermöglichen. Gewisse Computersysteme können Dateisystem-Objekte und Nicht-Dateisystem-Objekte innerhalb eines gemeinsamen Namensraums umfassen. Dieses erweiterte Zwischenablageformat vereinfacht Datenübertragungen der Nicht-Dateisystem-Objekte in das gewählte Zwischenablageformat. Die Nicht-Dateisystem-Objekte können Netzwerkressourcen, Drucker oder andere Arten von Objekten umfassen.
  • Die erweiterten Zwischenablageformate, die von Ausführungsformen der vorliegenden Erfindung bereitgestellt werden, können ein Kennungslisten-Zwischenablageformat zum Aufnehmen einer Kennungsliste von Objekten umfassen. Dieses Zwischenablageformat ist in Computersystemen von Nutzen, die Objekte mit zugehörigen Kennungen besitzen, die einer Kennungsliste hinzugefügt werden können. Das Kennungslisten-Zwischenablageformat ist nützlich, wenn Objekte unter Verwendung eines Datenübertragungsmechanismus übertragen werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Eine bevorzugte Ausführungsform der vorliegenden Erfindung wird im Folgenden detaillierter unter Bezugnahme auf die folgenden Figuren beschrieben.
  • 1 ist ein Blockschaltbild eines Computersystems, das zur Herstellung der bevorzugten Ausführungsform der vorliegenden Erfindung geeignet ist.
  • 2 ist ein Ablaufdiagramm, das Schritte darstellt, die ausgeführt werden, um die erweiterten Zwischenablageformate der bevorzugten Ausführungsform der vorliegenden Erfindung zu nutzen.
  • 3 ist ein Ablaufdiagramm, das Schritte darstellt, die ausgeführt werden können, um ein CF_FILECONTENTS-Zwischenablageformat in einem Datenübertragungsvorgang durch die bevorzugte Ausführungsform der vorliegenden Erfindung zu verwenden.
  • 4 ist ein Ablaufdiagramm, das die kombinierte Verwendung der CF_FILECONTENTS- und CF_FILEGROUPDESCRIPTOR-Zwischenablageformate gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung darstellt.
  • 5 ist ein Ablaufdiagramm, das die Schritte darstellt, die bei einer exemplarischen Verwendung des CF_FILENAMEMAP-Zwischenablageformats ausgeführt werden.
  • 6 ist ein Ablaufdiagramm, das die Schritte darstellt, die bei einer exemplarischen Verwendung des CF_OBJECTPOSITIONS-Zwischenablageformats ausgeführt werden.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Die bevorzugte Ausführungsform der vorliegenden Erfindung stellt eine erweiterte Anzahl von Zwischenablageformaten bereit. Diese erweiterten Zwischenablageformate umfassen Zwischenablageformate, die eine verbesserte Funktionalität gegenüber denjenigen bereitstellen, die von herkömmlichen Systemen zur Verfügung gestellt werden.
  • 1 ist ein Blockschaltbild eines Computersystems 10, das für die Herstellung der bevorzugten Ausführungsform der vorliegenden Erfindung geeignet ist. Das Computersystem 10 umfasst einen Zentralprozessor (CPU) 12, der Zugriff auf mehrere Peripheriegeräte hat, einschließlich eines Datensichtgeräts 14, einer Maus 16 und einer Tastatur 18. Die CPU 12 hat ebenfalls Zugriff auf einen primären Speicher 20 und einen sekundären Speicher 22. Der primäre Speicher 20 enthält ein Betriebssystem 24, das die Zwischenablage 26 umfasst. Die Zwischenablage 26 umfasst Meldungen und Funktionen zum Bereitstellen der Zwischenablagenfunktionen zum Durchführen von Datenübertragungen und die Zwischenablageformate für die Herstellung der bevorzugten Ausführungsform der vorliegenden Erfindung. Der primäre Speicher 20 enthält auch den Code für mindestens ein Anwendungsprogramm 28.
  • Der Fachmann wird verstehen, dass das Computersystem 10 in 1 nur zur Veranschaulichung gedacht ist. Die vorliegende Erfindung kann auch in anderen Computersystemkonfigurationen hergestellt werden, einschließlich jener, die mehrere Prozesso ren verwenden und jener, die mit Peripheriegeräten arbeiten, die sich von den in 1 gezeigten Geräten unterscheiden.
  • Die folgende Erläuterung konzentriert sich auf die Aufzählung der erweiterten Zwischenablageformate und deren Verwendung, wie von der bevorzugten Ausführungsform der vorliegenden Erfindung vorgesehen. Es sollte verstanden werden, dass diese erweiterten Zwischenablageformate diejenigen, die vom Betriebssystem "MICROSOFT" WINDOWS, Version 3.1 bereitgestellt werden, eher ergänzen als ersetzen.
  • 2 ist ein Ablaufdiagramm, das die Schritte darstellt, die ausgeführt werden, um die erweiterten Zwischenablageformate der bevorzugten Ausführungsform zu verwenden. Zu Beginn muss ein Anwendungsprogramm 28 einen ausgewählten Abschnitt von Daten in eines oder mehrere der erweiterten Zwischenablageformate (Schritt 30) konvertieren. Das Anwendungsprogramm stellt den Mechanismus zum Auswählen der Daten bereit, die in das erweiterte Zwischenablageformat konvertiert werden sollen. Die konvertierten Daten werden in einem Datenobjekt gespeichert (Schritt 32). Das Datenobjekt kann sich in verschiedenen Arten von Speichermedien befinden, (wie beispielsweise von "MICROSOFT" OLE 2.01 bereitgestellt), einschließlich globalem Speicher, einem verbindungsorientierten Kanal oder einem Speicher. Datenobjekte für einige der erweiterten Zwischenablageformate können in nur einem untergeordneten Set der möglichen Speichermedien auftreten, wie im Folgenden im Detail beschrieben wird. Eine Kennung für ein Datenobjekt, das die Datenstruktur verkapselt, wird an die Zwischenablage weitergeleitet (Schritt 34). Die Daten werden dann als in dem erweiterten Zwischenablageformat in der Zwischenablage befindlich betrachtet und werden in einen vom Benutzer oder Anwendungsprogramm gewünschten Zielort eingefügt (Schritt 36).
  • Eines der erweiterten Zwischenablageformate ist das Zwischenablageformat CF_HDROP. Zum Zweck der Erläuterung der Rolle dieses Zwischenablageformats ist es hilfreich, zuerst nochmals aufzugreifen, wie ein Drag-and-Drop-Vorgang im Betriebssystem "MICROSOFT" WINDOWS, Version 3.1 ausgeführt wird. In diesem herkömmlichen Betriebssystem wird der Drag-and-Drop-Vorgang als Reaktion auf die Verwendung einer Maus durch einen Benutzer ausgeführt. Wenn die Maustaste losgelassen wird, um ein Ablegen auszuführen, empfängt das Fenster, in das der Mauszeiger aktuell zeigt, eine WM_DROPFILES-Fenstermeldung. Diese Fenstermeldung enthält als einzigen Pa rameter hDrop. Der hDrop-Parameter ist eine Kennung für eine Datenstruktur, welche die Datei oder Dateien beschreibt, die abgelegt wurden. Die Kennung wird als ein Parameter bei Aufrufen der vordefinierten Funktionen DragQueryPoint(), DragQueryFile() und DragFinish() verwendet, die Daten aus der durch hDrop identifizierten Datenstruktur abrufen.
  • Das Zwischenablageformat CF_HDROP wird verwendet, um die Kennung zu einer DROPFILES-Struktur aufzunehmen. Für das Zwischenablageformat CF-HDROP ist es erforderlich, dass sich das Datenobjekt (d.h. DROPFILES) in einem globalen Speicher befindet. Die DROPFILES-Struktur weist das folgende Format auf:
  • Figure 00070001
  • Das Feld fWide gibt an, dass die Zeichenketten, auf die von pfiles verwiesen wird, in UNICODE statt ANSI geschrieben sind.
  • Die Funktion DragQueryPoint(), die Funktion DragQueryFile() und die Funktion DragFinish() können alle auf die DROPFILES-Struktur einwirken, um Informationen zu abgelegten Dateien abzurufen. Die Verwendung des Zwischenablageformats CF-HDROP ermöglicht es, dass die oben beschriebenen Funktionen für Zwischenablage-Vorgänge genauso wie für OLE-Datenübertragungsvorgänge verwendet werden können. In herkömmlichen Systemen sind diese Funktionen nur in Drag-and-Drop-Situationen einsatzfähig.
  • Die erweiterten Zwischenablageformate der bevorzugten Erfindung umfassen auch das Zwischenablageformat CF_FILECONTENTS und das Zwischenablageformat CF_FILEGROUPDESCRIPTOR. Das Zwischenablageformat CF_FILECONTENTS wird zum Aufnehmen von Daten verwendet, die in einer Datei verkapselt werden sollen. Beispielswei se angenommen, ein Benutzer möchte eine Einbettung aus einer Mail-Nachricht oder einem anderen Compound-Dokument ziehen und an einem Ort ablegen, um eine Datei zu erstellen. In einem solchen Fall werden die im Ablaufdiagramm in 3 gezeigten Schritte ausgeführt. Zuerst werden die zu übertragenden Daten ausgewählt (Schritt 37). Die Daten werden in das Zwischenablageformat CF_FILECONTENTS konvertiert und gespeichert (Schritt 38). Anschließend wird der Datenübertragungsvorgang (Schritt 39) so abgeschlossen, dass das Zielobjekt von Drag-and-Drop Zugriff auf die Daten hat, die im Zwischenablageformat CF_FILECONTENTS gespeichert sind. Die Daten im Zwischenablageformat CF_FILECONTENTS werden anschließend in einer Datei verkapselt (Schritt 40). Obwohl es sich bei diesem Beispiel um Drag-and-Drop gehandelt hat, ist zu verstehen, dass CF-FILECONTENTS mit anderen Arten von Datenübertragungsvorgängen verwendet werden kann.
  • Um die Rolle zu verstehen, welche die Zwischenablageformate bei Datenübertragungsvorgängen mit dem Microsoft OLE 2.1-Protokoll spielen, ist es hilfreich, einige Grundkonzepte von OLE 2.01 nochmals aufzugreifen. In OLE 2.01 ist ein "Objekt" eine logische Struktur, die Datenstrukturen zum Aufnehmen von Daten enthält und Funktionen umfassen kann, die auf der Basis der in der Datenstruktur enthaltenen Daten arbeiten.
  • Ein weiteres Konzept, das für OLE 2.01 grundlegend ist, ist der Begriff einer "Schnittstelle". Eine Schnittstelle ist ein Namensset logisch in Beziehung stehender Funktionen. Eine Schnittstelle listet Signaturen (wie beispielsweise Parameter) für ein Set von Funktionen auf. Eine Schnittstelle stellt keinen Code für die Implementierung der Funktionen bereit; stattdessen wird der Code für die Implementierung der Funktionen von Objekten bereitgestellt. Objekte, die den Code für die Implementierung der Funktionen einer Schnittstelle bereitstellen, "unterstützen" die Schnittstelle. Der Code, der von einem Objekt bereitgestellt wird, das die Schnittstelle unterstützt, muss die Signatur einhalten, die mit der Schnittstelle vorgegeben wird. In der Programmiersprache C++ bildet eine Schnittstelle ein Set virtueller Funktionen. Das Microsoft OLE 2.01-Protokoll definiert eine IDataObject-Schnittstelle, die mehrere Funktionen gruppiert, die für ein Objekt zum Übertragen von Daten nützlich sind. Objekte, welche die IDataObject-Schnittstelle unterstützen, sind als Datenobjekte bekannt.
  • Während eines Drag-and-Drop-Vorgangs, in dem Daten von einem Quellobjekt zu einem Zielobjekt in einem System gezogen werden, das zum Bewirken der Datenübertragung OLE 2.01 verwendet, wird ein einheitlicher Datenübertragungsmechanismus verwendet, wie er in der gleichzeitig anhängigen Anmeldung mit dem Titel "Uniform Data Transfer" definiert ist, die am 22. Februar 1994 eingereicht wurde, Eingangsnummer 08/199,853, und die einem gemeinsamen Rechtsnachfolger mit der vorliegenden Anmeldung übertragen wurde. Die Verbindung zwischen einem Datenobjekt an der Datenquelle und dem Zielobjekt wird hergestellt, indem ein Zeiger für eine Instance der IDataObject-Schnittstelle, die vom Datenobjekt bereitgestellt wird, zum Zielobjekt gezogen wird. Das Zielobjekt führt dann die Funktion EnumFormatEtc() der IDataObject-Schnittstelle aus, um die verfügbaren Formate für die Daten in dem Objekt aufzuzählen, das auf dem Zielobjekt abgelegt wurde. Diese Formate sind Zwischenablageformate. Somit werden bei Drag-and-Drop-Vorgängen die Daten in einem Zwischenablageformat übertragen.
  • Das Zwischenablageformat CF_FILEGROUPDESCRIPTOR wird verwendet, um eine Dateigruppendeskriptor-Struktur aufzunehmen. Die Dateigruppendeskriptor-Struktur enthält einen oder mehr Dateigruppendeskriptoren. Jeder Dateideskriptor ist eine verkettete Liste von Strukturen, die Informationen zu Daten enthalten, die in einer Datei eingekapselt werden sollen, die im Zwischenablageformat CF_FILECONTENTS enthalten ist. Ein Dateideskriptor weist folgendes Format auf:
  • Figure 00090001
  • Figure 00100001
  • Das Feld dwFlag ist eine Datei, die angibt, in wie vielen Feldern zulässige Daten enthalten sind; das Feld clsid enthält eine Klassenkennung des Datenobjekts, das die CF_FILECONTENTS-Daten verkapselt; das Feld sizel enthält einen Wert, der die Größe der CF_FILECONTENTS-Daten angibt; und das Feld pointl enthält einen Zeiger auf das Objekt, das die CF_FILECONTENTS-Daten enthält. Das Feld dwFileAttributes enthält ein Doppelwort von Attributen für die Daten. Das Feld ftCreationTime enthält eine Erstellungsuhrzeit, ftLastAccessTime enthält die Uhrzeit des letzten Zugriffs und ftLastWriteTime enthält eine Uhrzeit des letzten Schreibzugriffs. Das Feld nFileSizeHigh enthält die letzten 32 Bits eines 64-Bit-Wertes, der die Länge des Objekts in Bytes beschreibt, und das Feld nFileSizeLow enthält die ersten 32 Bits dieses Werts. Das Feld cFileName enthält Zeichen, die einen Dateinamen angeben.
  • Das Zwischenablageformat CF_FILEGROUPDESCRIPTOR vereinfacht die Übertragung mehrerer Dateien in einen Stapel. Ein Dateigruppendeskriptor in dem Stapel für den zu übertragenden Stapel wird in dem Zwischenablageformat CF_FILEGROUPDESCRIPTOR gespeichert. Der Dateigruppendeskriptor muss sich im globalen Speicher befinden und nicht auf anderen Quellenmedien. Dieser Dateigruppendeskriptor ermöglicht es einem Programm, die in mehrere Dateien zu übertragenden Daten zu analysieren und die Ergebnisdateien nach Bedarf zu erstellen. 4 ist ein Ablaufdiagramm, das die Schritte darstellt, die ausgeführt werden, um das Zwischenablageformat CF_FILECONTENTS in Verbindung mit den Zwischenablageformaten CF_FILEGROUPDESCRIPTOR zum Übertragen einer Gruppe von Daten und zum Erstellen einer Gruppe von Dateien zu verwenden. Die in die Dateien zu verkapselnden Daten müssen zuerst konvertiert und in dem Zwischenablageformat CF_FILECONTENTS gespeichert werden (Schritt 41). Ein Dateigruppendeskriptor für die Gruppe von Daten wird dann in dem Zwischenablageformat CF_FILEGROUPDESCRIPTOR gespeichert (Schritt 42). Die Daten werden in eine Gruppe von Dateien übertragen und verkapselt (Schritt 43).
  • Es sollte verstanden werden, dass die Datenobjekte für die Aufnahme der Daten, die in dem Zwischenablageformat CF_FILECONTENTS übertragen werden, ein Objekt sein können, das im globalen Speicher vorhanden ist oder über ein OLE-Speichermedium bereitgestellt wird, wie beispielsweise verbindungsorientierte Kanäle oder Speicher.
  • Das Zwischenablageformat CF_FILENAMEMAP ist ein weiteres der erweiterten Zwischenablageformate. Dieses Zwischenablageformat wird verwendet, um Speicher für Zuordnungen von Zielnamen bereitzustellen. Beispielsweise angenommen, ein System möchte den Namen einer Datei ändern, wenn sie in einer Papierkorbfunktion positioniert wird. In einem solchen Fall werden die Zuordnungen zu den Zielnamen in dem Zwischenablageformat CF_FILENAMEMAP gespeichert. Dieses Zwischenablageformat kann als zum Zwischenablageformat CF_HDRP zugehörig betrachtet werden. 5 ist ein Ablaufdiagramm, das die Schritte darstellt, die ausgeführt werden, um dies Zwischenablageformat zum Ändern von Dateinamen zu verwenden. Zunächst werden die Zielnamenzuordnungen in das Zwischenablageformat CF_FILENAMEMAP gestellt (Schritt 44). Die Datenübertragung wird dann über Zwischenablagebefehle, Drag-and-Drop oder andere OLE-Datenübertragungsmechanismen initiiert (Schritt 46). Als Bestandteil des Abschlusses des Datenübertragungsvorgangs werden die neuen Dateinamen, die in den Daten angegeben sind, die in dem Zwischenablageformat CF_FILENAMEMAP enthaltenen sind, den Dateien zugeordnet, die übertragen werden (Schritt 48).
  • Die erweiterten Zwischenablageformate umfassen auch das Zwischenablageformat CF_OBJECTPOSITIONS. Dieses Zwischenablageformat wird verwendet, um eine Reihe von Koordinaten aufzunehmen, die den Positionen anderer Elemente in der Zwischenablage entsprechen. Das erste Set von Koordinaten kennzeichnet eine Bildschirmposition der Gruppe von Objekten, und die übrigen Koordinaten geben relative Versätze jedes Elements in Pixeln an. Dieses Zwischenablageformat ist insbesondere nützlich beim Übertragen von Gruppen von Objekten, die zugehörige Bildschirmsymbole besitzen. Das Zwischenablageformat ermöglicht es, dass die relative Positionierung der Gruppe von Elementen beibehalten und gleich bleibt, nachdem die Datenübertragung in ein neues Ziel erfolgt ist.
  • 6 ist ein Ablaufdiagramm, das die Schritte darstellt, die ausgeführt werden, um das Zwischenablageformat CF_OBJECTPOSITIONS zu verwenden. Zuerst werden die Bildschirmsymbole dem Zwischenablageformat CF_OBJECTPOSIONS entsprechend codiert (Schritt 50). Anschließend wird der Datenübertragungsvorgang über die Zwischenablage, Drag-and-Drop oder andere OLE-Datenübertragungsmechanismen initiiert (Schritt 52). Als Bestandteil des Abschlusses des Datenübertragungsvorgangs werden die Koordinaten verwendet, die in dem Zwischenablageformat enthalten sind, um die Bildschirmsymbole an den zweckdienlichen relativen Positionen am Zielort zu verwirklichen (Schritt 54).
  • Die erweiterten Zwischenablageformate umfassen des Weiteren ein Zwischenablageformat CF_PRINTERFRIENDLYNAME zum Aufnehmen einer Kennung für eine Liste druckerfreundlicher Bezeichnungen. Die druckerfreundlichen Bezeichnungen müssen anschließend verwendet werden, um Zugriff auf Datenstrukturen zu erhalten, die für die entsprechenden Drucker enthalten sind. Das Zwischenablageformat CF_NETRESOURCE ist ähnlich, enthält aber eine Kennung für eine Liste von Netzwerkressourcen, wie beispielsweise Netzwerkserver. Die Liste der Netzwerkressourcen kann verwendet werden, um Zugriff auf Datenstrukturen für die Ressourcen zu erhalten. Dieses Zwischenablageformat wird insbesondere für Situationen verwendet, in denen das Namensfeld nicht nur Dateisystemstrukturen, sondern auch andere Arten von Objekten umfassen kann.
  • Das Zwischenablageformat CF_IDLDATA enthält eine Kennung für eine Liste mit Kennungslisten. Eine Kennungsliste ist eine Liste mit Kennungen, die Elemente innerhalb des Namensfelds eindeutig kennzeichnen. Die Kennungsliste kann als grob analog zu Pfadnamen für Dateien oder Verzeichnisse betrachtet werden. Dieses Zwischenablageformat kann als ein Zwischenablageformat CF_HDROP betrachtet werden.

Claims (3)

  1. Verfahren in einem Computersystem (10) mit einer Zwischenablage zum Durchführen von Datenübertragung in einem Zwischenablageformat, wobei das Verfahren die folgenden Schritte umfasst: Bereitstellen mehrerer Zwischenablageformate einschließlich eines Text-Zwischenablageformats, eines Dateiinhalt-Zwischenablageformats und eines Dateigruppenbeschreibungs-Zwischenablageformats zum Aufnehmen einer Dateigruppen-Beschreibungsstruktur, Auswählen von Daten, die keine Datei sind, für einen Datenübertragungsvorgang, Verwenden des Dateiinhalt-Zwischenablageformats zum Aufnehmen der Daten, indem die ausgewählten Daten in umgewandelte Daten des Dateiinhalt-Zwischenablageformats umgewandelt werden und die umgewandelten Daten als ein Datenobjekt gespeichert werden, Verwenden der Dateigruppen-Beschreibungsstruktur des Dateigruppenbeschreibungs-Zwischenablageformats, um eine Dateibeschreibung aufzunehmen, die beschreibende Informationen über die Daten aufnimmt, die während des Dateiübertragungsvorgangs in eine Datei einzukapseln sind, Abschließen der Datenübertragung, indem ein Handle zu dem Datenobjekt bereitgestellt wird, das Handle verwendet wird, um die Daten des Datenobjektes in eine Datensenke einzufügen, die beschreibenden Informationen verwendet werden, um das Computersystem in die Lage zu versetzen, eine Datei in der Datensenke zu erzeugen, und das Datenobjekt in die Datei eingekapselt wird, wobei die Dateibeschreibung ein dw-Flags-Feld, das anzeigt, welche Felder legale Daten aufnehmen, ein cLsid-Feld, das eine Klassen-Kennung des Datenobjektes aufnimmt, das die in dem Dateiinhalt-Zwischenablageformat aufgenommenen Daten einkapselt, ein sizeL-Feld, das einen Wert aufnimmt, der die Größe der in dem Dateiinhalt-Zwischenablageformat aufgenommenen Daten spezifiziert, ein pointL-Feld, das einen Zeiger auf das Objekt aufnimmt, das die Daten aufnimmt, ein dwFileAttributes-Feld, das ein Doppelwort von Attributen der Daten aufnimmt, ein ftCreationTime-Feld, das eine Erzeugungszeit aufnimmt, ein ftLastAccess-Time-Feld, das eine Zeit des letzten Zugriffs aufnimmt, ein ft-Lastwrite-Time-Feld, das eine letzte Schreibzeit aufnimmt, ein nFileSizeLow-Feld und ein nFileSizeHigh-Feld, die einen Wert aufnehmen, der die Länge des Objektes in Bytes beschreibt, sowie ein cFile-Name-Feld enthält, das Zeichen aufnimmt, die einen Dateinamen spezifizieren.
  2. Verfahren nach Anspruch 1, wobei die Dateigruppenbeschreibungs-Struktur eine oder mehrere Dateibeschreibungen aufnimmt, die beschreibende Informationen über eine Gruppe von Daten umfassen, die keine Dateien sind, und die Gruppe von Daten in eine Gruppe von Dateien eingekapselt ist.
  3. Computerlesbares Medium, das durch Computer ausführbare Befehle aufweist, die so eingerichtet sind, dass sie das Computersystem (10) veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 2 durchzuführen.
DE69535582T 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten Expired - Lifetime DE69535582T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US35539794A 1994-12-13 1994-12-13
US355397 1994-12-13

Publications (2)

Publication Number Publication Date
DE69535582D1 DE69535582D1 (de) 2007-10-04
DE69535582T2 true DE69535582T2 (de) 2007-12-06

Family

ID=23397289

Family Applications (7)

Application Number Title Priority Date Filing Date
DE69531119T Expired - Lifetime DE69531119T2 (de) 1994-12-13 1995-12-12 Datentransfer mit erweitertem Format für die Zwischenablage
DE69535581T Expired - Lifetime DE69535581T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69535571T Expired - Lifetime DE69535571T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69535580T Expired - Lifetime DE69535580T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69535582T Expired - Lifetime DE69535582T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69535579T Expired - Lifetime DE69535579T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69535578T Expired - Lifetime DE69535578T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten

Family Applications Before (4)

Application Number Title Priority Date Filing Date
DE69531119T Expired - Lifetime DE69531119T2 (de) 1994-12-13 1995-12-12 Datentransfer mit erweitertem Format für die Zwischenablage
DE69535581T Expired - Lifetime DE69535581T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69535571T Expired - Lifetime DE69535571T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69535580T Expired - Lifetime DE69535580T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten

Family Applications After (2)

Application Number Title Priority Date Filing Date
DE69535579T Expired - Lifetime DE69535579T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69535578T Expired - Lifetime DE69535578T2 (de) 1994-12-13 1995-12-12 Datenaustausch mit erweiterten Zwischenablage-Datenformaten

Country Status (4)

Country Link
US (2) US5765156A (de)
EP (7) EP0717354B1 (de)
JP (16) JPH08272662A (de)
DE (7) DE69531119T2 (de)

Families Citing this family (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69531119T2 (de) * 1994-12-13 2003-12-04 Microsoft Corp., Redmond Datentransfer mit erweitertem Format für die Zwischenablage
US6269389B1 (en) 1995-05-05 2001-07-31 Apple Computer, Inc. Method and system for controlling the copying and insertion of contents of documents
US6307574B1 (en) 1995-05-08 2001-10-23 Apple Computer, Inc. Graphical user interface with hierarchical structure for customizable menus and control objects
US6119206A (en) * 1996-02-12 2000-09-12 Sun Microsystems, Inc. Design of tags for lookup of non-volatile registers
GB2326744A (en) * 1997-06-17 1998-12-30 Nokia Mobile Phones Ltd Intelligent copy and paste operations for application handling units
US6490634B2 (en) * 1998-03-13 2002-12-03 Hewlett-Packard Co. Adaptive digital data transfer apparatus and method
US6177939B1 (en) * 1998-10-08 2001-01-23 Eastman Kodak Company Method of saving sections of a document to random access memory
US6415263B1 (en) * 1998-12-14 2002-07-02 Ncr Corporation System and methods for determining and displaying product pricing
US6629127B1 (en) * 1999-07-26 2003-09-30 Microsoft Corporation Methods and systems for processing HTTP requests
US6591295B1 (en) * 1999-11-05 2003-07-08 Oracle International Corp. Methods and apparatus for using multimedia data stored in a relational database in web applications
US6976032B1 (en) * 1999-11-17 2005-12-13 Ricoh Company, Ltd. Networked peripheral for visitor greeting, identification, biographical lookup and tracking
US7299405B1 (en) 2000-03-08 2007-11-20 Ricoh Company, Ltd. Method and system for information management to facilitate the exchange of ideas during a collaborative effort
US7653925B2 (en) * 1999-11-17 2010-01-26 Ricoh Company, Ltd. Techniques for receiving information during multimedia presentations and communicating the information
US7421645B2 (en) * 2000-06-06 2008-09-02 Microsoft Corporation Method and system for providing electronic commerce actions based on semantically labeled strings
US7716163B2 (en) * 2000-06-06 2010-05-11 Microsoft Corporation Method and system for defining semantic categories and actions
US7770102B1 (en) 2000-06-06 2010-08-03 Microsoft Corporation Method and system for semantically labeling strings and providing actions based on semantically labeled strings
US7788602B2 (en) 2000-06-06 2010-08-31 Microsoft Corporation Method and system for providing restricted actions for recognized semantic categories
US7712024B2 (en) * 2000-06-06 2010-05-04 Microsoft Corporation Application program interfaces for semantically labeling strings and providing actions based on semantically labeled strings
US7778816B2 (en) 2001-04-24 2010-08-17 Microsoft Corporation Method and system for applying input mode bias
KR100432476B1 (ko) * 2001-07-05 2004-05-22 안병곤 확장형 클립보드 제공 방법
US7509577B2 (en) * 2002-03-08 2009-03-24 Toshiba Corp Oration Method and system for implementing a clipboard
US7325194B2 (en) * 2002-05-07 2008-01-29 Microsoft Corporation Method, system, and apparatus for converting numbers between measurement systems based upon semantically labeled strings
US7707496B1 (en) 2002-05-09 2010-04-27 Microsoft Corporation Method, system, and apparatus for converting dates between calendars and languages based upon semantically labeled strings
US7707024B2 (en) 2002-05-23 2010-04-27 Microsoft Corporation Method, system, and apparatus for converting currency values based upon semantically labeled strings
US7742048B1 (en) 2002-05-23 2010-06-22 Microsoft Corporation Method, system, and apparatus for converting numbers based upon semantically labeled strings
US7281245B2 (en) 2002-06-05 2007-10-09 Microsoft Corporation Mechanism for downloading software components from a remote source for use by a local software application
US7827546B1 (en) 2002-06-05 2010-11-02 Microsoft Corporation Mechanism for downloading software components from a remote source for use by a local software application
US7356537B2 (en) 2002-06-06 2008-04-08 Microsoft Corporation Providing contextually sensitive tools and help content in computer-generated documents
US7716676B2 (en) * 2002-06-25 2010-05-11 Microsoft Corporation System and method for issuing a message to a program
US20040001099A1 (en) * 2002-06-27 2004-01-01 Microsoft Corporation Method and system for associating actions with semantic labels in electronic documents
US7392479B2 (en) * 2002-06-27 2008-06-24 Microsoft Corporation System and method for providing namespace related information
US7209915B1 (en) 2002-06-28 2007-04-24 Microsoft Corporation Method, system and apparatus for routing a query to one or more providers
US20040216149A1 (en) * 2002-07-16 2004-10-28 Reitz Larry E. Content exporting from one application to another
US20040015539A1 (en) * 2002-07-16 2004-01-22 Andrew Alegria Content exporting from one application to another
US20040103220A1 (en) * 2002-10-21 2004-05-27 Bill Bostick Remote management system
KR100497376B1 (ko) * 2002-12-24 2005-06-28 삼성전자주식회사 다중클립보드 실행장치 및 다중클립보드 실행방법
US7783614B2 (en) 2003-02-13 2010-08-24 Microsoft Corporation Linking elements of a document to corresponding fields, queries and/or procedures in a database
US20040172584A1 (en) * 2003-02-28 2004-09-02 Microsoft Corporation Method and system for enhancing paste functionality of a computer software application
US7793233B1 (en) 2003-03-12 2010-09-07 Microsoft Corporation System and method for customizing note flags
US7454763B2 (en) * 2003-03-26 2008-11-18 Microsoft Corporation System and method for linking page content with a video media file and displaying the links
US7774799B1 (en) 2003-03-26 2010-08-10 Microsoft Corporation System and method for linking page content with a media file and displaying the links
US7711550B1 (en) 2003-04-29 2010-05-04 Microsoft Corporation Methods and system for recognizing names in a computer-generated document and for providing helpful actions associated with recognized names
US7496853B2 (en) * 2003-05-08 2009-02-24 International Business Machines Corporation Method of managing items on a clipboard
US7558841B2 (en) 2003-05-14 2009-07-07 Microsoft Corporation Method, system, and computer-readable medium for communicating results to a data query in a computer network
US7496230B2 (en) * 2003-06-05 2009-02-24 International Business Machines Corporation System and method for automatic natural language translation of embedded text regions in images during information transfer
US8689125B2 (en) * 2003-10-23 2014-04-01 Google Inc. System and method for automatic information compatibility detection and pasting intervention
US7310781B2 (en) * 2003-06-05 2007-12-18 International Business Machines Corporation System and method for content and information transfer between program entities
US7475390B2 (en) * 2004-01-12 2009-01-06 International Business Machines Corporation System and method for automatic natural language translation during information transfer
US7739588B2 (en) 2003-06-27 2010-06-15 Microsoft Corporation Leveraging markup language data for semantically labeling text strings and data and for providing actions based on semantically labeled text strings and data
US20050004986A1 (en) * 2003-07-03 2005-01-06 Aoki Norihiro Edwin Remote population of computer clipboard via a messaging system
US7373603B1 (en) * 2003-09-18 2008-05-13 Microsoft Corporation Method and system for providing data reference information
US20050102630A1 (en) * 2003-11-06 2005-05-12 International Busainess Machines Corporation Meta window for merging and consolidating multiple sources of information
US7478336B2 (en) * 2003-11-06 2009-01-13 International Business Machines Corporation Intermediate viewer for transferring information elements via a transfer buffer to a plurality of sets of destinations
US7689712B2 (en) 2003-11-26 2010-03-30 Ricoh Company, Ltd. Techniques for integrating note-taking and multimedia information
US7434157B2 (en) 2003-12-09 2008-10-07 Microsoft Corporation Programmable object model for namespace or schema library support in a software application
US7178102B1 (en) 2003-12-09 2007-02-13 Microsoft Corporation Representing latent data in an extensible markup language document
US7487515B1 (en) 2003-12-09 2009-02-03 Microsoft Corporation Programmable object model for extensible markup language schema validation
US7404195B1 (en) 2003-12-09 2008-07-22 Microsoft Corporation Programmable object model for extensible markup language markup in an application
US7249319B1 (en) 2003-12-22 2007-07-24 Microsoft Corporation Smartly formatted print in toolbar
US7346853B2 (en) * 2004-01-12 2008-03-18 International Business Machines Corporation Online learning monitor
US7340685B2 (en) 2004-01-12 2008-03-04 International Business Machines Corporation Automatic reference note generator
US7503012B2 (en) * 2004-01-13 2009-03-10 International Business Machines Corporation Invoking user designated actions based upon selected computer content
US7451153B2 (en) 2004-01-26 2008-11-11 Nokia Corporation Method and apparatus for symmetrical filename encoding
US7509573B1 (en) 2004-02-17 2009-03-24 Microsoft Corporation Anti-virus security information in an extensible markup language document
US7802262B1 (en) 2004-03-05 2010-09-21 Adobe Systems Incorporated System and method for communicating state and title information between a browser and a rich internet application with browser forward and back button support
US7536672B1 (en) * 2004-03-05 2009-05-19 Adobe Systems Incorporated Management of user interaction history with software applications
US7934210B1 (en) 2004-03-26 2011-04-26 Adobe Systems Incorporated System and method for updating one or more programs and their environment
US7788589B2 (en) * 2004-09-30 2010-08-31 Microsoft Corporation Method and system for improved electronic task flagging and management
US7712049B2 (en) * 2004-09-30 2010-05-04 Microsoft Corporation Two-dimensional radial user interface for computer software applications
US9203788B2 (en) 2004-11-18 2015-12-01 Adobe Systems Incorporated System and method for communicating instant message information between an instant messaging node and one or more programs
US8805929B2 (en) * 2005-06-20 2014-08-12 Ricoh Company, Ltd. Event-driven annotation techniques
US7554576B2 (en) * 2005-06-20 2009-06-30 Ricoh Company, Ltd. Information capture and recording system for controlling capture devices
US7788590B2 (en) 2005-09-26 2010-08-31 Microsoft Corporation Lightweight reference user interface
US7992085B2 (en) 2005-09-26 2011-08-02 Microsoft Corporation Lightweight reference user interface
US8001458B1 (en) 2005-11-14 2011-08-16 Adobe Systems Incorporated System and method for communicating state and title information between a browser and a rich Internet application
US20070118566A1 (en) * 2005-11-18 2007-05-24 International Business Machines Corporation Method and Apparatus for File Attribute Selection into a System Clipboard
TWI310136B (en) * 2005-12-20 2009-05-21 Wistron Corp Method for transmitting files between different computers
US7747557B2 (en) * 2006-01-05 2010-06-29 Microsoft Corporation Application of metadata to documents and document objects via an operating system user interface
US7797638B2 (en) 2006-01-05 2010-09-14 Microsoft Corporation Application of metadata to documents and document objects via a software application user interface
US7631268B2 (en) * 2006-02-09 2009-12-08 International Business Machines Corporation Moving data to multiple target files
US8370423B2 (en) * 2006-06-16 2013-02-05 Microsoft Corporation Data synchronization and sharing relationships
US7624353B2 (en) * 2006-09-29 2009-11-24 Accenture Global Services Gmbh Computer-implemented clipboard
US8453066B2 (en) 2006-11-06 2013-05-28 Microsoft Corporation Clipboard augmentation with references
US8020112B2 (en) * 2006-11-06 2011-09-13 Microsoft Corporation Clipboard augmentation
US20080109464A1 (en) * 2006-11-06 2008-05-08 Microsoft Corporation Extending Clipboard Augmentation
US7761785B2 (en) 2006-11-13 2010-07-20 Microsoft Corporation Providing resilient links
US7707518B2 (en) 2006-11-13 2010-04-27 Microsoft Corporation Linking information
US20080141136A1 (en) * 2006-12-12 2008-06-12 Microsoft Corporation Clipping Synchronization and Sharing
US8751442B2 (en) * 2007-02-12 2014-06-10 Microsoft Corporation Synchronization associated duplicate data resolution
US8429551B2 (en) * 2007-02-15 2013-04-23 Microsoft Corporation Application-based copy and paste operations
US7933296B2 (en) * 2007-03-02 2011-04-26 Microsoft Corporation Services for data sharing and synchronization
US7849108B1 (en) 2007-03-13 2010-12-07 Fundriver, Inc. Methods and systems for establishing a database
US8230417B1 (en) 2007-06-08 2012-07-24 Adobe Systems Incorporated Combined application and execution environment install
US8375381B1 (en) 2007-07-30 2013-02-12 Adobe Systems Incorporated Management user interface for application execution environment
US7930273B1 (en) 2007-07-30 2011-04-19 Adobe Systems Incorporated Version management for application execution environment
US8448161B2 (en) * 2007-07-30 2013-05-21 Adobe Systems Incorporated Application tracking for application execution environment
JP5183150B2 (ja) * 2007-10-30 2013-04-17 アズビル株式会社 情報連携ウィンドウシステムおよびプログラム
US9619304B2 (en) * 2008-02-05 2017-04-11 Adobe Systems Incorporated Automatic connections between application components
US20140040862A1 (en) * 2008-04-03 2014-02-06 Adobe Systems Incorporated Copying Reusable Components from a Remote Source
US9507651B2 (en) 2008-04-28 2016-11-29 Microsoft Technology Licensing, Llc Techniques to modify a document using a latent transfer surface
US8296671B2 (en) * 2008-05-01 2012-10-23 Microsoft Corporation Enabling access to rich data by intercepting paste operations
JP4597217B2 (ja) 2008-05-14 2010-12-15 シャープ株式会社 画像形成装置および画像形成方法
US20090319909A1 (en) * 2008-06-19 2009-12-24 Aten International Co., Ltd. Data Transfer Systems, Switches, and Method of Providing the Same
US8656293B1 (en) 2008-07-29 2014-02-18 Adobe Systems Incorporated Configuring mobile devices
US20100083091A1 (en) * 2008-09-30 2010-04-01 Apple Inc. Dynamic text escaping
US20100122160A1 (en) * 2008-11-10 2010-05-13 International Business Machines Corporation Non-contiguous content duplication
JP5264515B2 (ja) * 2009-01-06 2013-08-14 キヤノン株式会社 文書編集装置およびその制御方法
CH700243A1 (de) 2009-01-12 2010-07-15 Ferag Ag Computergesteuertes fördersystem und förderverfahren.
US8380866B2 (en) * 2009-03-20 2013-02-19 Ricoh Company, Ltd. Techniques for facilitating annotations
US8171390B1 (en) * 2009-10-22 2012-05-01 Intuit Inc. Method and system for viewing and transferring data between documents
US8555187B2 (en) * 2010-02-16 2013-10-08 Google Inc. Server-based data sharing in computer applications using a clipboard
KR101064143B1 (ko) * 2010-08-20 2011-09-15 주식회사 파수닷컴 Drm 환경에서의 클립보드 보호 시스템 및 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체
US20120066691A1 (en) * 2010-09-14 2012-03-15 Paul Keith Branton Private application clipboard
US20120096368A1 (en) * 2010-10-14 2012-04-19 Microsoft Corporation Cloud-based virtual clipboard
US9110743B2 (en) 2010-12-21 2015-08-18 Microsoft Technology Licensing, Llc Extensible system action for sharing while remaining in context
JP4940380B1 (ja) * 2011-11-30 2012-05-30 株式会社メディアロジック 情報処理装置、およびプログラム
AU2011265428B2 (en) * 2011-12-21 2014-08-14 Canon Kabushiki Kaisha Method, apparatus and system for selecting a user interface object
US20150006205A1 (en) * 2013-06-28 2015-01-01 Christopher Corey Chase System and method providing automobile insurance resource tool
US20150286616A1 (en) * 2014-04-07 2015-10-08 Ephox Corporation Method For Generating A Document Using An Electronic Clipboard
KR20160039334A (ko) * 2014-10-01 2016-04-11 삼성전자주식회사 화면 구성 방법, 전자 장치 및 저장 매체
US10489032B1 (en) 2015-07-29 2019-11-26 Google Llc Rich structured data interchange for copy-paste operations
US10387034B2 (en) 2015-09-03 2019-08-20 Microsoft Technology Licensing, Llc Modifying captured stroke information into an actionable form
US10210383B2 (en) 2015-09-03 2019-02-19 Microsoft Technology Licensing, Llc Interacting with an assistant component based on captured stroke information
US10627993B2 (en) 2016-08-08 2020-04-21 Microsoft Technology Licensing, Llc Interacting with a clipboard store
CN106959901B (zh) * 2017-03-17 2018-06-26 维沃移动通信有限公司 一种多路径复制粘贴方法及移动终端
JP7022305B2 (ja) * 2018-01-11 2022-02-18 ブラザー工業株式会社 制御プログラム及び、情報処理装置
US10783012B2 (en) 2018-04-20 2020-09-22 CopyBucket, Inc. Systems and methods for efficient inter-device data exchange
US11050836B1 (en) 2020-01-27 2021-06-29 Kyocera Document Solutions Inc. Cloud-based clipboard
CN112559666B (zh) * 2021-02-19 2021-06-25 智道网联科技(北京)有限公司 注记的处理方法、装置及电子设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5261080A (en) * 1987-08-21 1993-11-09 Wang Laboratories, Inc. Matchmaker for assisting and executing the providing and conversion of data between objects in a data processing system storing data in typed objects having different data formats
AU631749B2 (en) * 1990-09-14 1992-12-03 Digital Equipment Corporation System and method for communication between windowing environments
JP3613401B2 (ja) * 1992-07-06 2005-01-26 マイクロソフト コーポレーション オブジェクトの名称を付けて結び付ける方法及びシステム
US5404442A (en) * 1992-11-30 1995-04-04 Apple Computer, Inc. Visible clipboard for graphical computer environments
US5386564A (en) * 1993-02-24 1995-01-31 Hewlett-Packard Company Conversion of data and objects across classes in an object management system
US5418941A (en) * 1994-01-28 1995-05-23 International Business Machines Corporation Method and apparatus for a dynamic application test facility
US5392386A (en) * 1994-02-03 1995-02-21 Inter Hi-Tec Ag Method and apparatus for adding functionality to computer programs executing under graphical user interfaces
US5467472A (en) * 1994-04-15 1995-11-14 Microsoft Corporation Method and system for generating and maintaining property sets with unique format identifiers
DE69531119T2 (de) * 1994-12-13 2003-12-04 Microsoft Corp., Redmond Datentransfer mit erweitertem Format für die Zwischenablage

Also Published As

Publication number Publication date
JP2004326826A (ja) 2004-11-18
EP1028374B1 (de) 2007-08-22
EP1028375A1 (de) 2000-08-16
EP0717354A1 (de) 1996-06-19
DE69535578T2 (de) 2007-12-06
EP1028372A1 (de) 2000-08-16
JP4374066B2 (ja) 2009-12-02
EP1028377B1 (de) 2007-08-22
EP1028376A1 (de) 2000-08-16
JP4230969B2 (ja) 2009-02-25
DE69535581D1 (de) 2007-10-04
DE69531119D1 (de) 2003-07-24
JP2004326828A (ja) 2004-11-18
JP2009076080A (ja) 2009-04-09
JP2008181534A (ja) 2008-08-07
JP2009064463A (ja) 2009-03-26
EP1028373B1 (de) 2007-08-22
JP2004362606A (ja) 2004-12-24
JP2008123556A (ja) 2008-05-29
DE69535571T2 (de) 2007-12-06
EP1028373A1 (de) 2000-08-16
DE69535578D1 (de) 2007-10-04
DE69535581T2 (de) 2007-12-06
US5765156A (en) 1998-06-09
JP2004342130A (ja) 2004-12-02
US5924099A (en) 1999-07-13
JP2008123557A (ja) 2008-05-29
JP2008123554A (ja) 2008-05-29
JP2008159079A (ja) 2008-07-10
JP2004326827A (ja) 2004-11-18
JP2004326825A (ja) 2004-11-18
EP1028374A1 (de) 2000-08-16
DE69535580D1 (de) 2007-10-04
DE69535579D1 (de) 2007-10-04
EP1028377A1 (de) 2000-08-16
EP1028376B1 (de) 2007-08-22
EP1028372B1 (de) 2007-08-22
JPH08272662A (ja) 1996-10-18
EP1028375B1 (de) 2003-06-18
JP2008123555A (ja) 2008-05-29
DE69535582D1 (de) 2007-10-04
DE69535580T2 (de) 2007-12-06
EP0717354B1 (de) 2007-08-22
DE69535579T2 (de) 2007-12-06
JP4249670B2 (ja) 2009-04-02
JP2004342131A (ja) 2004-12-02
DE69531119T2 (de) 2003-12-04
DE69535571D1 (de) 2007-10-04

Similar Documents

Publication Publication Date Title
DE69535582T2 (de) Datenaustausch mit erweiterten Zwischenablage-Datenformaten
DE69614034T2 (de) Rechnersystem
DE69425017T2 (de) Verkapselung in Objekten von extrahierten Teilen von Dokumenten
DE69317443T2 (de) Dateienumsetzungssystem
DE69422076T2 (de) Druckersystem mit Datenanalyse-Bestimmungsfähigkeit
DE10135445B4 (de) Integriertes Verfahren für das Schaffen einer aktualisierbaren Netzabfrage
DE3587501T3 (de) Gerät, Verfahren und Struktur zur Umwandlung eines Dokumentes einer Struktur in ein Dokument einer anderen Struktur.
DE3883733T2 (de) Bedienungsverfahren eines elektronischen Datenverarbeitungssystems zum Dokumententransfer zwischen Endbenutzern.
DE69428848T2 (de) Mehrsprachige Standardressourcen
DE69528738T2 (de) Systeme und Verfahren zur Herstellung und Auffrischung zusammengesetzter Dokumente
DE69405408T2 (de) Objektorientiertes system und verfahren zur hardwarekonfiguration
DE60125989T2 (de) Verfahren und apparat für eine verbesserte dateiverwaltung
DE69332132T2 (de) Anzeige der Wechselwirkung zwischen Anwendungsprogrammen und Daten
DE10309241A1 (de) Drucken mit variablen Daten unter Verwendung einer dynamischen Ausschießvorlage
EP1859340A2 (de) Verfahren zum erzeugen von druckaufträgen in einem drucksystem, verfahren zum sortieren von druckjobs in einem drucksystem, computerprogramm- produkt und drucksystem zum ausführen dieser verfahren
DE10034841A1 (de) Automatische Jobbetriebsmittel-Verwendung und -Wiedergewinnung
DE19615177C2 (de) Verfahren zum Ändern einer Funktion eines Druckertreibers
DE69927114T2 (de) Verfahren und System zum Darstellen und Senden von Nachrichten
EP1451766B1 (de) Verfahren, gerätesystem und computerprogrammprodukt zur erzeugung eines gedruckten dokuments aus mehreren eingangsdateien
DE69327384T2 (de) Zwischenablagenanordnung für ein Rechnernetzwerk
DE68929341T2 (de) Verfahren zum Ausführen einer nicht für das Rechnersystem konzipierten Anwendung auf einem Rechnersystem
EP1161731A2 (de) Verfahren, computerprogrammprodukt und system zur übertragung von computerdaten an ein ausgabegerät
DE10250603A1 (de) Verfahren und Systeme zum Herstellen von Broschüren
DE69413707T2 (de) Verfahren und vorrichtung zur erzeugung und verwaltung dynamischer eigenschaftsblätter
EP1470472B1 (de) Verfahren zur automatisierten annahme und weiterleitung von dokumentenbearbeitungsaufträgen

Legal Events

Date Code Title Description
8363 Opposition against the patent