PatentDe  


Dokumentenidentifikation DE69535580T2 06.12.2007
EP-Veröffentlichungsnummer 0001028374
Titel Datenaustausch mit erweiterten Zwischenablage-Datenformaten
Anmelder Microsoft Corp., Redmond, Wash., US
Erfinder Guzak, Christopher J., Kirkland, WA 98034, US;
Nakajima, Satoshi, Bellevue, Washington 98008, US
Vertreter Grünecker, Kinkeldey, Stockmair & Schwanhäusser, 80538 München
DE-Aktenzeichen 69535580
Vertragsstaaten DE, FR, GB
Sprache des Dokument EN
EP-Anmeldetag 12.12.1995
EP-Aktenzeichen 001106525
EP-Offenlegungsdatum 16.08.2000
EP date of grant 22.08.2007
Veröffentlichungstag im Patentblatt 06.12.2007
IPC-Hauptklasse G06F 9/46(2006.01)A, F, I, 20051017, B, H, EP

Beschreibung[de]
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 umfassen auch ein Zwischenablageformat für Dateinamenzuordnungen zum Aufnehmen einer Liste alternativer Bezeichnungen für Elemente, die während eines Datenübertragungsvorgangs übertragen werden. Eine Liste alternativer Bezeichnungen, die im Zwischenablageformat für Dateinamenzuordnungen enthalten ist, wird zum Umbenennen der Dateien verwendet, 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, umfassen ein Kennungslisten-Zwischenablageformat zum Aufnehmen einer Kennungsliste von Objekten. 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 Prozessoren 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 Parameter 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:

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. Beispielsweise 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:

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.


Anspruch[de]
Verfahren in einem Computersystem (10) mit einer Zwischenablage zum Durchführen von Datenübertragung von Daten in einem Zwischenablageformat, wobei das Verfahren die folgenden Schritte umfasst:

Bereitstellen mehrerer Zwischenablageformate einschließlich eines Text-Zwischenablageformats, eines Dateiinhalt-Zwischenablageformats, eines Dateigruppenbeschreibungs-Zwischenablageformats und eines Dateinamenabbildungs-Zwischenablageformats zum Aufnehmen einer Abbildung von Dateinamen auf Ziel-Dateinamen und zum Zuweisen neuer Dateinamen zu übertragenen Dateien entsprechend der Dateinamen-Abbildung,

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 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 Dateiübertragung, indem ein Handle für das 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 an der Datensenke zu erzeugen, und das Datenobjekt in die Datei eingekapselt wird.
Verfahren nach Anspruch 1, wobei die Datenübertragung über Zwischenablagebefehle oder über einen Drag-and-Drop-Vorgang ausgelöst wird. Computerlesbares Medium, das durch Computer ausführbare Befehle aufweist, die so eingerichtet sind, dass sie das Computersystem (10) veranlassen, das Verfahren nach Anspruch 1 oder 2 durchzuführen.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

  Patente PDF

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com