Kontakt
DSVGO
Im Laufe seiner Karriere stößt jeder VB-Entwickler (und nicht nur Anfänger) auf Probleme, die bereits so ziemlich alle anderen vor ihm auch schon hatten. Die Newsgroups sind voll von solchen immer wieder gestellten Fragen: Wohl 50-80% aller Diskussionen drehen sich um die immer gleichen Themen.
Um es beiden Parteien (den Fragern und den Antwortern) etwas leichter zu machen, habe ich hier eine Liste der häufig gestellten Fragen (und Antworten) aufgestellt.
Tipp: Mit [Strg]-F kann bei den meisten Browsern die Suche aufgerufen werden.
In meiner VB-Links-Liste gibt es weitere empfehlenswerte Such-Tipps im Internet. Die erste Anlaufstelle bei Fragen sollte eine konventionelle Suchmaschine sein...
Datum | Frage | Antwort |
13.02.2005 | Wie können PDF-Dokumente in purem VB erstellt werden? (Acrobat) | Code |
11.06.2004 | Wie kann ein gegebener Text Zeile für Zeile (Ressourcen-schonend) verarbeitet werden? Warum versagt manchmal Line Input? (NewLine) | InStr |
18.02.2004 | Wie kann ein Array schnell sortiert werden? Wie funktionieren QuickSort und MinSort? | Algos |
Pfad | Frage | Antwort |
Bits / Bin | Wie kann eine Hexadezimalzahl nach Dezimal umgewandelt werden? | CLng |
Bits / Long | Wie wird ein Long am schnellsten in seine 4 Bytes aufgesplittet (und umgekehrt)? | And, Or, Shift |
Bits / Word | Wie kann auf die einzelnen Bytes eines Words zugegriffen werden? Wie kann eine "Funktion" auf der linken Seite des Gleichheitszeichens für Zuweisungen genutzt werden? (Mid$, 8Bit, 16Bit) | And, Or |
Bugs / Lizenz | Wieso spricht VB von Lizenzproblemen? (Lizenzierungsinformationen, Komponente, Zugriff verweigert) | vb5cli, vb6cli |
Bugs / PopUpMenu | Warum funktioniert das PopUpMenu nicht? | Bug |
Bugs / Alignment | Was ist mit dem TextBox-Alignment los? Gibt es überhaupt einen Weg zur Ausrichtung? | Bug |
Entwicklung / ByVal | Warum verändert die Prozedur einfach den Parameter-Wert? Wie können Parameter am schnellsten an eine Prozedur übergeben werden? | ByVal, ByRef |
Entwicklung / AutoUpdate | Wie kann ein Programm-Update automatisch eingespielt werden? (Überschreiben) | FileCopy, Shell |
Entwicklung / DebugModus | Läuft das Programm gerade in der Entwicklungsumgebung? (IDE, kompiliert, EXE) | Assert |
Entwicklung / Dim | Sind alle Variablen deklariert? Warum hat die Variable trotzdem den falschen Datentyp? | Dim |
Entwicklung / IDE-Tasten | Wie können Code-Blöcke schnell eingerückt werden? Wo ist der Programm-Code zur Prozedur? Wo gibt es schnelle und kostenlose VB-Informationen? | Tastendruck |
Entwicklung / Parameter | Wie werden die übergebenen Parameter abgefragt? | Command |
Entwicklung / Reg. | Wie werden Komponenten manuell registriert? | regsvr32 |
Entwicklung / VB 5/6/7 | Was sind die Unterschiede der diversen VB-Versionen? | ADO, OOP |
Mathe / Eval | Wie kann ein arithmetischer Ausdruck berechnet werden? | Eval, SQL |
Mathe / Gerade | Ist eine Ganzzahl gerade oder ungerade? (Odd, Even) | And |
Mathe / NZ | Wie werden Null-Felder optimal verarbeitet? Gibt es in VB eine NZ-Funktion wie in Access? (Empty, neutrales Element) | IsNull |
Mathe / Prozent | Wie funktioniert die Prozentrechnung? | Division |
Mathe / Rnd | Wie werden Zufallszahlen erzeugt? Warum wiederholen sich die Zufallszahlen? Wie werden zufällige Strings generiert? | Rnd |
Mathe / Runden | Wie wird eine "richtige" Rundung durchgeführt? | Int |
Sicherheit / BLZ | Wie wird ein disconnected Recordset erzeugt? Wie kann die BLZ zu einer Bank bestimmt werden (und umgekehrt)? (Bankleitzahl, ADO) | Internet |
Sicherheit / CRC | Wie wird eine Prüfsumme berechnet? Was ist CRC32? | And, Shift |
Sicherheit / Encode | Wie kann ein Text verschlüsselt und wieder entschlüsselt werden? Wie kann schnell auf den Speicher zugegriffen werden? Was ist Mapping? (mappen, Xor, symetrisch) | API |
Sicherheit / Pers.ausw. | Ist eine Personalausweis-Nummer korrekt und konsistent? Wie werden Prüfziffern berechnet? | Code |
Sicherheit / Rot13 | Wie kann ein Text unleserlich gemacht werden? Was ist Rot13-Kodierung? Wie kann ein Text via Drag'n'Drop in eine TextBox eingefügt werden? | Code |
Zeit / Monatslänge | Ist ein bestimmtes Jahr ein Schaltjahr? | DateSerial |
Zeit / Schaltjahr | Ist ein bestimmtes Jahr ein Schaltjahr? | Mod |
Zeit / Timer | Wie kann eine genaue Zeitmessung erreicht werden? | API |
Zeit / TimeStamp | Gibt es eigentlich eine Pause-Routine? (Warten) | Now, Timer |
Pfad | Frage | Antwort |
Service / ASP mit VB | Wie kann VB sinnvoll mit ASP kombiniert werden? Wie werden ActiveX-Komponenten für IIS erstellt? | Workshop |
Service / Datenbank | Was ist ADO? Wie lautet der ConnectString einer Access-Datenbank? Wie bestimmt man den AutoWert eines gerade angelegten Datensatzes? (ID, Key, Primärschlüssel, Zähler) | ADO |
Service / VBScript | Was sind die Unterschiede zwischen "richtigem" VB und der Skript-Sprache? | Infos |
Tipps / Bilder | Wie können Bilder aus einer Datenbank angezeigt werden? (GIF, JPG, JPEG, Grafik, dynamisch, Tabelle) | BinaryWrite |
Tipps / eMail | Wie kann eine eMail versendet werden? Wie werden Anhänge verschickt? (elektronische Post) | CDO |
Tipps / GetVars | Wie können Formular-Eingaben über mehrere Seiten hinweg übertragen werden? | Request, Hidden |
Tipps / Frames | Wie können gleichzeitig mehrere Frames aktualisiert werden? (Navigation, Menü, Inhalt, Frameset) | Dynam. URL |
Tipps / Referer | Von welcher Ursprungs-URL kommt der Surfer? | ServerVariables |
Pfad | Frage | Antwort |
Array / BigArray | Wie können wirklich große Arrays angelegt werden? Wie kann ein Konstruktor realisiert werden? | Collection |
Array / FAQ | Ist ein Array initialisiert? Wieviele Elemente enthält es? Wie wird es einer Prozedur übergeben? Wie kann eine Funktion ein Array zurückgeben? | ... |
Array / Ins/Del | Wie wird ein Array-Element schnell eingefügt bzw. gelöscht? | API |
Array / Sort | Wie kann ein Array schnell sortiert werden? Wie funktionieren QuickSort und MinSort? | Algos |
Dateien / Einlesen | Wie wird eine Datei vollständig eingelesen? | Open, Get |
Dateien / Ini | Wie können Ini-Dateien gelesen und beschrieben werden? (Konfiguration) | API |
Dateien / IsOpen | Wie kann geprüft werden, ob eine Datei bereits geöffnet ist? (Sperre, Lock) | Open |
Dateien / Speichern | Wie wird ein Text volltändig in eine Datei geschrieben? | Open, Print |
Dateien / Vergleichen | Wie werden zwei Dateien inhaltlich verglichen? | FileLen, = |
Datenbank / Compact | Wie wird eine Access-Datenbank automatisch komprimiert? (JetEngine) | CompactDatabase |
Datenbank / Passwort | Wie wird eine Passwort-geschützte Access-Datenbank geöffnet? | DAO, OLEDB |
Strings / " | Wie werden Anführungszeichen in Zeichenketten dargestellt? | Verdoppeln |
Strings / $ | Warum gibt es Funktionen mit angehängtem Dollar-Zeichen? Was ist besser, Left$ oder Left? | String |
Strings / HexDump | Wie kann eine Datei hexadezimal dargestellt werden? (HexDump) | Hex, Mid |
Strings / InStrRev | Wie wird ein String von hinten durchsucht? | InStr, API |
Strings / IsNullString | Wie kann festgestellt werden, ob eine InputBox abgebrochen oder ein optionaler String-Parameter weggelassen wurde? | StrPtr |
Strings / Newline | Wie kann ein gegebener Text Zeile für Zeile (Ressourcen-schonend) verarbeitet werden? Warum versagt manchmal Line Input? (NewLine) | InStr |
Strings / Replace | Wie kann eine schnelle Text-Ersetzung erreicht werden? | InStr, Mid |
Strings / Swap | Wie werden zwei String-Variablen schnell vertauscht? | StrPtr, API |
Pfad | Frage | Antwort |
Controls / Array | Was ist ein ControlArray? Wie können Steuerelemente dynamisch erzeugt werden? Was ist der nächste freie Index? | Code |
Controls / ComboFind | Wie wird eine intelligente Suche für ComboBoxen realisiert? | API |
Controls / Fokus | Welches Control ist das nächste in der Tab-Reihenfolge? Wie wird der Fokus darauf gesetzt? | TabIndex |
Form / Größe | Wie kann die Größe eines Formulars beschränkt werden? Wie wird dabei das Flackern vermieden? (MINMAXINFO, Resize) | API |
Form / Position | Wie kann ein Formular ganz nach vorne gebracht werden? (oben) | API |
ListBox / Tabulatoren | Wie werden die Spaltenbreiten bei einer ListBox definiert? | API |
Office / eMail | Wie wird eine eMail mit Outlook versandt? | Automation |
Office / Report | Wie wird ein Access-Bericht angezeigt oder gedruckt? | Automation |
Office / Spelling | Wie kann eine Rechtschreibprüfung realisiert werden? Wie kann die wiederholte ActiveX-Automation schneller gemacht werden? (Word, CheckSpelling) | Automation |
Office / Word2HTML | Wie wird ein Word-Dokument als HTML gespeichert? | Automation |
OOP / Collections | Was ist eine Collection? Wie wird sie schnell gelöscht? Wie durchsucht man schnell eine Collection? Wie kann man feststellen, ob eine Collection einen bestimmten Key enthält? Kann der Key nachträglich geändert werden? (Set Nothing, IsInCollection, CollectionChangeKey) | Collection |
Sonstiges / Bitmap | Welche Abmessungen hat eine bestimmte Bitmap-Datei? (Größe, Breite, Höhe) | Scale |
TextBox / Enter | Wie wird die Enter-Taste in der TextBox ohne Warnton abgefragt? (Return, Beep) | KeyPress |
TextBox / MultiLine | Wieviele Zeilen enthält eine TextBox? Kann die TextBox zeilenweise ausgelesen werden? | API |
TextBox / Select | Warum verhält sich der TextBox-Doppelklick bei diversen Betriebssystemen unterschiedlich? | Code |
Pfad | Frage | Antwort |
Datei / DOS-Pfad | Wie wird ein langer Pfadname in seine DOS-Darstellung konvertiert? | API |
Datei / Exists | Existiert überhaupt eine bestimmte Datei oder ein bestimmtes Verzeichnis? | GetAttr |
Datei / FindFile | Wo genau liegt eine bestimmte Datei auf dem Laufwerk? Welche Laufwerke gibt es überhaupt? | API |
Datei / FindFiles | Wie kann ein kompletter Dateibaum durchlaufen werden? Wie wird ein Such-Pattern berücksichtigt? Wie wird aus einem DOS-Dateinamen ein langer Dateiname? | API |
Datei / Typ | Ist ein bestimmtes Laufwerk vom Typ CDROM, Netz, oder was? | API |
Datei / Subdir | Wie wird schnell geprüft, ob ein Ordner Unterverzeichnisse enthält? | API |
Datei / SplitPath | Wie kann ein Dateipfad in seine Bestandteile gesplittet werden? (Laufwerk, Verzeichnis, Suffix) | Code |
Datei / Temp | Wie kann das Temp-Verzeichnis bestimmt werden? Wie können Umgebungsvariablen abgefragt werden? | Environ |
Internet / FTP | Wie können Dateien via FTP übertragen werden? (upload, hochladen) | Shell, FTP |
Internet / HttpPost | Wie kann ein Internet-Formular ausgefüllt werden? (HTTP, Post) | API |
Internet / Link | Wie kann auf ein Formular ein Internet-Link platziert werden? | Label |
Internet / OpenURL | Wie können Dateien aus dem Internet geladen werden? (download, runterladen) | API |
Internet / Zitat | Wie kann ein automatischer Zeilenumbruch programmiert werden? | String |
Maus u. Kbd. / Click | Wie wird ein Mausklick generiert? | API |
Maus u. Kbd. / Key | Wie kann der aktuelle Status der Tastatur abgefragt werden? (KeyPressed, Inkey) | API |
Maus u. Kbd. / Over | Wie kann festgestellt werden, ob der Mauszeiger ein Control verläßt? | API |
Maus u. Kbd. / Position | Wie wird der Mauszeiger bewegt bzw. seine Position abgefragt? | API |
Maus u. Kbd. / Wheel | Wie kann das Mausrad in VB-Programmen genutzt werden? (Mousewheel) | SubClassing |
Multimedia / Beep | Wie kann ein Ton mit einer bestimmten Frequenz erzeugt werden? | API |
Multimedia / MDI | Wie kann der Hintergrund eines MDI-Formulars grafisch genutzt werden? Wie wird ein Farbverlauf erzeugt? | PictureBox |
Multimedia / Paint | Wie kann eine Fläche gefüllt werden? (Polygon, Fill) | API |
Multimedia / PlaySound | Wie wird eine Wave-Datei abgespielt? | API |
Multimedia / RGB | Wie können die RGB-Anteile einer Farbe bestimmt werden? Wie wird die Komplementärfarbe bestimmt? Wie wird die Helligkeit zweier Farben verglichen? | And |
Shell / ErrorLevel | Wie kann ein VB-Programm mit einem DOS-Fehler beendet werden? (ExitCode) | API |
Shell / Exec | Wie wird eine Datei mit dem dazugehörigen Programm geöffnet? Wie wird eine Datei mit dem richtigen Programm gedruckt? Wie kann der Browser mit einer bestimmten Internet-Adresse gestartet werden? Wie wird das eMail-Programm mit einer bestimmten eMail-Adresse geöffnet? | API |
Shell / Std.In/Out | Kann mit VB ein DOS-Filter geschrieben werden? Wie wird die Standard-Eingabe gelesen? Wie kann auf die Standard-Ausgabe geschrieben werden? | API |
Shell / Sync | Wie wird ein anderes Programm gestartet und auf die Beendigung desselben gewartet? Wie wird ein DOS-Befehl ausgeführt? Wie kann der ExitCode einer Anwendung bestimmt werden? Wie müssen VB-Enumerationen in VBA deklariert werden? (Synchronisierung, ErrorCode, Rückgabewert) | API, Long |
Windows / Activate | Wie wird der zweite Start einer Anwendung verhindert? Wie wird die erste Instanz aktiviert? Wie wird das Programm-Handle einer laufenden Anwendung bestimmt? | API |
Windows / Login | Wer ist gerade an welchem Rechner angemeldet? (Kennung, User, PC) | API |
Windows / Memory | Wie kann der freie Speicher bestimmt werden? Wie ist die Speichernutzung in Prozent? (Stress, Bytes, Memory, Auslastung) | API |
Windows / Password | Wie wird ein Password überprüft? Welches Betriebssystem liegt vor? (Passwort, Kennwort, User, Domäne, WinNT, Win2000, Win98, Win9x) | API |
Pfad | Frage | Antwort |
Links | Gibt es noch andere empfehlenswerte VB-Ressourcen? | Internet |
Wie können PDF-Dokumente in purem VB erstellt werden? (Acrobat) | Code | |
RLE / Markierung | Wie wird eine Binärdatei schnell in ein Byte-Array geladen? | Open, Get |
SubClassing | Was ist eigentlich SubClassing? Wie kann das Kontextmenü einer TextBox unterdrückt werden? Kann festgestellt werden, ob ein Formular verschoben worden ist? | API |
© Jost Schwider, 09.12.2000-13.02.2005 - http://vb-tec.de/faq.htm