pearl.de Bestseller NEU Beratungsvideo Schnäppchen Ausgezeichnet bewertet Pressestimmen Günstig beiwww.pearl.de onlne einkaufen
Top
Left
PC Magazin


Andreas Maslo

15. Juli 2010
So geht's: Reihe: Such-Engine im Eigenbau Teil 3: Benutzerdediniertes Suchobjekt Bild vergrößern 937 562 http://img2.magnus.de/Suche-Menschen-Massen-Leute-r937x562-C-e333c9a1-29339133.jpg

So geht's

Reihe: Such-Engine im Eigenbau Teil 3: Benutzerdediniertes Suchobjekt

Um Dateien und deren Ordner zu finden, bestimmen Sie die Suchoptionen und starten dann die Suche. Das benutzerdefinierte Suchobjekt liefert alle Informationen und Ergebnisse über Ereignisse zurück. Diese werten Sie über beliebige Dialoge aus.

Middle1

Inhaltsverzeichnis 1/4

Das allgemeine, benutzerdefinierte Suchobjekt FileSearchObj, das Sie in den ersten beiden Teilen dieser Serie (PDF-Dateien auf der Heft-DVD) grundlegend entwickelt haben, verrichtet seine Arbeit im Hintergrund und tritt nicht sichtbar in Erscheinung. Die Suchoptionen weisen Sie auf Quelltextebene zu. Die Ergebnisse werden über Ereignisse zurückgeliefert.

Dies hat den Vorteil, dass Sie das Suchobjekt nicht nur universell einsetzen, sondern auch an beliebige Dialoge binden können. Über diese Dialoge legen Sie die gewünschten Sucheigenschaften offen und definieren und variieren diese nach Bedarf. Entsprechend lassen sich die Ergebnisse über beliebige Dialoge offenlegen.

Suchoptionen und Ergebnisse fassen Sie wahlweise in einzelnen Dialogen zusammen oder teilen diese in mehrere Dialoge auf. Optional lassen sich die Suchoptionen und Ergebnisse auch in bereits vorhandene Dialoge Ihrer Anwendung integrieren. An dieser Stelle wird gezeigt, wie Sie generell vorgehen, um

Vorgehen

  • Suchoptionen für das Suchobjekt zu definieren und zu übergeben,
  • die Suche zu starten und zu überwachen sowie
  • die Suchergebnisse auszuwerten und anzuzeigen.

Weitere Prüffunktionen erläutern, wie Sie Suchoptionen generell verarbeiten. Den vollständigen Quelltext zur Lösung finden Sie samt ausführbarem Beispielprogramm auf der Heft-DVD.

Dateikürzel, -namen, -attribute

Die Funktion HasCorrectSuffix prüft, ob eine angegebene Datei ein Dateikürzel aufweist, das mit dem übereinstimmt, welches die Eigenschaft Suffix festgelegt hat. Ist Suffix auf "*.*" gesetzt, gelten alle Dateikürzel und die Funktion liefert den Wert True zurück. Definieren Sie eine andere Zeichenkette für die Eigenschaft Suffix, so prüft das Programm, ob darin das Dateikürzel der aktuell verarbeiteten Datei enthalten ist.

Ist das der Fall, liefert die Funktion den Wert True an das aufrufende Programm zurück. Ordnen Sie der Eigenschaft Suffix hingegen eine leere Zeichenkette zu, so bedeutet das, dass gefundene Dateien kein Dateikürzel aufweisen dürfen. Nur dann wird der Wert True an das aufrufende Programm übergeben. Die zu prüfende Datei wird der Funktion HasCorrectInfo als Objekt des Typs FileInfo übergeben.

Codebeispiel:

Function HasCorrectSuffix
(ByVal fi As FileInfo) As Boolean...

Ob eine Datei einem exakt angegebenen Dateinamen oder einem Teildateinamen entspricht, ermittelt die benutzerdefinierte Funktion HasCorrectName mit den Eigenschaften FileName und FileNameIsPartial. Wird ein exakter Dateiname gesucht und ist FileNameIsPartial entsprechend auf False gesetzt, so hat der aktuelle Dateiname (fi.Name) mit der FileName-Eigenschaft übereinzustimmen.

Wird nach einem Teil eines Dateinamens gesucht, dann ist die Teilzeichenkette FileName Bestandteil des geprüften Dateinamens. Dies prüfen Sie mit der Standardfunktion Instr. Um beim Dateinamensvergleich nicht zwischen Groß- und Kleinschreibung zu unterscheiden, konvertieren Sie die zu vergleichenden Zeichenketten jeweils vor dem Vergleich mit der Funktion LCase in Kleinschrift.

Codebeispiel:

Function HasCorrectName(ByVal fi As File
Info) As Boolean ...

Das Suchobjekt verwaltet alle Dateiattribute über spezifische Buchstabenbezeichner. Diese werden zu einer aktuellen Datei über die Funktion HasCorrectAttributes unter Verwendung der Eigenschaft Attributes im Detail geprüft. Vor der Auswertung wird die Zeichenkette, die der Eigenschaft Attributes zugewiesen wurde, in Großschrift umgewandelt.

Das sorgt dafür, dass es keine Rolle spielt, ob Sie Attribute mit Klein- oder Großschrift festlegen. Die Prüfung erfolgt anschließend für jedes einzelne Attribut getrennt, aber im Aufbau synonym. Es wird für jedes Attribut kontrolliert, ob es über die Eigenschaft Attributes als auszuwertendes Attribut festgelegt wurde. Nur dann wird geprüft, ob auch das entsprechende Dateiattribut gesetzt ist.

Ist dies nicht der Fall, wird die Funktion unmittelbar mit dem Rückgabewert False beendet. Nur wenn alle geprüften Attribute gesetzt sind, liefert auch die Funktion das Ergebnis True an das aufrufende Programm zurück.

Codebeispiel:

Function HasCorrectAttributes
(ByVal fi As FileInfo) As Boolean...

Middle2


Inhaltsverzeichnis


Verwandte Themen

x03
Günstig bei www.pearl.de online einkaufen
Position4
Bottom1
Meistgelesen
1. Kino-Kritik: Der Junge mit dem Fahrrad

Auf der Suche nach seinem Rabenvater entdeckt "Der Junge mit dem Fahrrad" die Heiterkeit des Seins.

2. Kino-Kritik: Black Gold

Jean-Jacques Annaud schickt einen jungen arabischen Prinzen vor imposanter Kulisse los, seiner Bestimmung zu folgen.

3. Nokia Lumia 710 im Test

Mit dem Lumia 710 macht Nokia eine Hoffnung wahr und bringt Windows Phone in günstigere Regionen. Wir haben das zweite Modell der Lumia-Serie…

4. Porsche Design P9981 im Praxistest

Sportwagen aus Zuffenhausen sind ein exklusives Vergnügen – für das Porsche-Design-Smartphone wird das auch gelten. Das P9981 im Praxistest.


Kleines Spiel für zwischendurch

x01
Bottom2
Bildergalerien
7 Geschenkideen, die am Anfang Ihrer Beziehung schaden könnten Mobiles Fernsehen MP3-Player Portable DVD-Player

Bilder-Suche

Top 5 Downloads
1
SciLor's Grooveshark Downloader

Version: 0.4.9q
Lizenz: Freeware
Betriebssystem: WindowsLinuxMac

2
Win7codecs

Version: 3.4.5
Lizenz: Freeware
Betriebssystem: Windows

3
VueScan

Version: 9.0.79
Lizenz: Freeware / Shareware
Betriebssystem: WindowsLinuxMac

4
Grub-Installer

Version: 1.1
Lizenz: Freeware
Betriebssystem: Windows

5
SUPERAntiSpyware Free

Version: 5.0.1142
Lizenz: Freeware
Betriebssystem: Windows

Download-Suche

Bottom3
x02
Right1
Right2
Right3