DVG3 - 16VisualBasic 1
Visual BasicVisual Basic
Vortrag in DVG 3Vortrag in DVG 3
Hans ZaisHans Zais
Matr. Nr. 680200Matr. Nr. 680200
DVG3 - 16VisualBasic 2
Kapitel 01Kapitel 01EinführungEinführung
Visual Basic ist eine Windows-ProgrammierspracheVisual Basic ist eine Windows-Programmiersprache von Microsoft entwickeltvon Microsoft entwickelt visuelle Entwicklungsumgebungvisuelle Entwicklungsumgebung ist objektorientierter als eine rein prozedurale Sprache ist objektorientierter als eine rein prozedurale Sprache
(C, Pascal)(C, Pascal) gegenüber einer echt objektorientierten Sprache (C++, gegenüber einer echt objektorientierten Sprache (C++,
Java) fehlen aber einige Sprachelemente (Vererbung Java) fehlen aber einige Sprachelemente (Vererbung von Eigenschaften)von Eigenschaften)
mit jeder neuen Version kommen aber ein paar mit jeder neuen Version kommen aber ein paar objektorientierte Merkmale hinzu.objektorientierte Merkmale hinzu.
DVG3 - 16VisualBasic 3
Kapitel 02 Kapitel 02 VB - ProjekteVB - Projekte
VB kann zur Programmierung unterschiedlicher VB kann zur Programmierung unterschiedlicher Programmarten verwendet werden:Programmarten verwendet werden:
Standard-EXEStandard-EXE ActiveX-EXEActiveX-EXE ActiveX-DLLActiveX-DLL ActiveX-SteuerelementActiveX-Steuerelement Add-InAdd-In ActiveX-Dokument-DLLActiveX-Dokument-DLL ActiveX-Document-EXEActiveX-Document-EXE
DVG3 - 16VisualBasic 4
Kapitel 02Kapitel 02 VB - Projekte VB - Projekte
Standard-EXE:Standard-EXE: EXE - executable ( = ausführbar)EXE - executable ( = ausführbar) herkömmliche Visual Basic Anwendungherkömmliche Visual Basic Anwendung fast alle Software-Anwendungen entsprechen einer fast alle Software-Anwendungen entsprechen einer
Standard-EXEStandard-EXE eigenständige Anwendungeigenständige Anwendung keine Verbindung zu anderen Anwendungenkeine Verbindung zu anderen Anwendungen
ActiveX-SteuerelementeActiveX-Steuerelemente zum Erstellen eigener Steuerelementezum Erstellen eigener Steuerelemente
DVG3 - 16VisualBasic 5
Kapitel 02Kapitel 02VB - ProjekteVB - Projekte
ActiveX-EXEActiveX-EXE Software-Anwendungen, die von anderen Programmen Software-Anwendungen, die von anderen Programmen
via OLE oder COM über eine objektorientierte via OLE oder COM über eine objektorientierte Programmschnittstelle genutzt werden können.Programmschnittstelle genutzt werden können.
sind als eigenständige Programme lauffähigsind als eigenständige Programme lauffähig
ActiveX-DLLActiveX-DLL DLL - Dynamic Link LibraryDLL - Dynamic Link Library stellen nur Funktionen zur Verfügung, die von anderen stellen nur Funktionen zur Verfügung, die von anderen
Programmen genutzt werden könnenProgrammen genutzt werden können fast alle Windows-Funktionen sind in DLLs hinterlegtfast alle Windows-Funktionen sind in DLLs hinterlegt
DVG3 - 16VisualBasic 6
Kapitel 02Kapitel 02VB - ProjekteVB - Projekte
ActiveX-Dokument-DLLActiveX-Dokument-DLL können im Internet-Browser als Web Seite dargestellt können im Internet-Browser als Web Seite dargestellt
werdenwerden Komponente oder Funktionsbibliothek einer AnwendungKomponente oder Funktionsbibliothek einer Anwendung keine eigenständige Anwendungkeine eigenständige Anwendung Word 97 enthält zum Beispiel diese FunktionalitätWord 97 enthält zum Beispiel diese Funktionalität
ActiveX-Dokument-EXEActiveX-Dokument-EXE läßt sich als Webseite darstellenläßt sich als Webseite darstellen ist eigenständige Anwendungist eigenständige Anwendung
DVG3 - 16VisualBasic 7
Kapitel 03Kapitel 03VB - EntwicklungsumgebungVB - Entwicklungsumgebung
Die Toolbox Die Toolbox stellt alle verfügbaren Steuerelemente darstellt alle verfügbaren Steuerelemente dar
Das Formfenster Das Formfenster bildet die Grundlage der Benutzeroberflächebildet die Grundlage der Benutzeroberfläche bildet den graphischen Hintergrund des Programmsbildet den graphischen Hintergrund des Programms
DVG3 - 16VisualBasic 8
Kapitel 03Kapitel 03VB - EntwicklungsumgebungVB - Entwicklungsumgebung
Das ProjektfensterDas Projektfenster listet alle Formen, Module und Klassen eines Projektes listet alle Formen, Module und Klassen eines Projektes
aufauf jede Form, jedes Modul und jede Klasse wird in einer jede Form, jedes Modul und jede Klasse wird in einer
separaten Datei gespeichertseparaten Datei gespeichert
Das CodefensterDas Codefenster dient der Anzeige und Erfassung des Programmcodesdient der Anzeige und Erfassung des Programmcodes
Das EigenschaftenfensterDas Eigenschaftenfenster zur Anzeige und Veränderung von Steuerelementenzur Anzeige und Veränderung von Steuerelementen
DVG3 - 16VisualBasic 9
Kapitel 04Kapitel 04Programmierung - DatentypenProgrammierung - Datentypen
DatentypenDatentypen Byte: ganze Zahl zwischen 0 und 255; Speicherplatz: 1 Byte: ganze Zahl zwischen 0 und 255; Speicherplatz: 1
ByteByte Integer: ganze Zahl zwischen -32 768 und +32 767; Integer: ganze Zahl zwischen -32 768 und +32 767;
Speicherplatz: 2 ByteSpeicherplatz: 2 Byte Long: ganze Zahl zwischen -2 147 483 648 und +2 147 Long: ganze Zahl zwischen -2 147 483 648 und +2 147
483 647 Speicherplatz: 4 Byte483 647 Speicherplatz: 4 Byte Single: Fließkommazahl mit 8 Stellen Genauigkeit; Single: Fließkommazahl mit 8 Stellen Genauigkeit;
Speicherplatz: 4 ByteSpeicherplatz: 4 Byte Double: Fließkommazahl mit 16 Stellen Genauigkeit; Double: Fließkommazahl mit 16 Stellen Genauigkeit;
Speicherplatz: 8 ByteSpeicherplatz: 8 Byte Currency: Festkommazahl mit 15 Stellen vor und 4 Stellen Currency: Festkommazahl mit 15 Stellen vor und 4 Stellen
nach dem Komma; Speicherplatz: 8 Bytenach dem Komma; Speicherplatz: 8 Byte
DVG3 - 16VisualBasic 10
Kapitel 04Kapitel 04Programmierung - DatentypenProgrammierung - Datentypen
DatentypenDatentypen String: Zeichenketten, also alphanumerische Zeichen String: Zeichenketten, also alphanumerische Zeichen
und Sonderzeichen; können beliebig lang seinund Sonderzeichen; können beliebig lang sein Object: speichert einen Verweis auf ein Objekt; Object: speichert einen Verweis auf ein Objekt;
Speicherplatz: 4 ByteSpeicherplatz: 4 Byte Variant: Default-Variablentyp, d.h. falls einer Variable Variant: Default-Variablentyp, d.h. falls einer Variable
kein Datentyp zugewiesen wird, wird ihr der Typ Variant kein Datentyp zugewiesen wird, wird ihr der Typ Variant zugewiesen. Nachteile: zugewiesen. Nachteile:
großer Speicherplatz (mindestens 16 Byte, bei Strings großer Speicherplatz (mindestens 16 Byte, bei Strings 22 Byte + 2 Byte pro Zeichen), 22 Byte + 2 Byte pro Zeichen),
langsame Bearbeitungsgeschwindugkeit langsame Bearbeitungsgeschwindugkeit
DVG3 - 16VisualBasic 11
Kapitel 04Kapitel 04Programmierung - DatentypenProgrammierung - Datentypen
Date: Datum und Uhrzeit, wobei der Wertebereich beim Date: Datum und Uhrzeit, wobei der Wertebereich beim Datum zwischen dem 01.01.100 und dem 31.12.9999 Datum zwischen dem 01.01.100 und dem 31.12.9999 liegt, der Bereich der Zeit liegt zwischen 0 und 23.59.59; liegt, der Bereich der Zeit liegt zwischen 0 und 23.59.59; Speicherplatz: 8 ByteSpeicherplatz: 8 Byte
Eigene DatentypenEigene Datentypen benutzerdefinierte Variabletypen: Dieser Variablentyp ist benutzerdefinierte Variabletypen: Dieser Variablentyp ist
kein echter Datentyp, sondern die Zusammensetzung kein echter Datentyp, sondern die Zusammensetzung mehrerer Variablen eines Typs:mehrerer Variablen eines Typs:
Beispiel: Variablentyp TFHStudentBeispiel: Variablentyp TFHStudent Type TFHStudentType TFHStudent Dim name As StringDim name As String Dim vorname, matrNr As StringDim vorname, matrNr As String End Type End Type
Zugriff: Zugriff: TFHStudent.name = "Bolle"TFHStudent.name = "Bolle"
DVG3 - 16VisualBasic 12
Kapitel 04Kapitel 04Programmierung - DatentypenProgrammierung - Datentypen
Vor jeder Variablendeklaration muss das Schlüsselwort Vor jeder Variablendeklaration muss das Schlüsselwort Dim Dim stehenstehen
Variablennamen müssen mit einem Buchstaben Variablennamen müssen mit einem Buchstaben beginnen, dürfen keine Sonderzeichen enthalten und beginnen, dürfen keine Sonderzeichen enthalten und maximal 255 Zeichen lang sein.maximal 255 Zeichen lang sein.
Groß- und Kleinschreibung werden in VB grundsätzlich Groß- und Kleinschreibung werden in VB grundsätzlich nicht unterschieden.nicht unterschieden.
DVG3 - 16VisualBasic 13
Kapitel 04Kapitel 04Programmierung - FelderProgrammierung - Felder
Statische FelderStatische Felder bestehen aus Variablen gleichen Typs und einer festen Längebestehen aus Variablen gleichen Typs und einer festen Länge Beispiele:Beispiele:
Dim feld(20) As IntegerDim feld(20) As Integer
liefert ein Feld von Integers mit der Länge 21 mit den liefert ein Feld von Integers mit der Länge 21 mit den Feldelementem Feldelementem
feld(0), feld(1), ..., feld(20)feld(0), feld(1), ..., feld(20)
Dim feld(-5 To 7) As IntegerDim feld(-5 To 7) As Integer liefert ein Feld mit den 13 Feldelementenliefert ein Feld mit den 13 Feldelementen feld(-5), feld(-4),... , feld(7) feld(-5), feld(-4),... , feld(7)
DVG3 - 16VisualBasic 14
Kapitel 04Kapitel 04Programmierung - FelderProgrammierung - Felder
Dynamische FelderDynamische Felder besteht aus Variablen gleichen Typs, deren Länge besteht aus Variablen gleichen Typs, deren Länge
dynamisch im Programmablauf bestimmt und verändert dynamisch im Programmablauf bestimmt und verändert werden können.werden können.
Beispiel:Beispiel:
Dim feld() As IntegerDim feld() As Integer
liefert ein Feld von Integers mit unbestimmter Länge. liefert ein Feld von Integers mit unbestimmter Länge. Die Größe des Feldes kann im Programm dann durch Die Größe des Feldes kann im Programm dann durch
ReDim feld(N) ReDim feld(N) auf N+1 verändert werden. auf N+1 verändert werden.
DVG3 - 16VisualBasic 15
Kapitel 04Kapitel 04Programmierung - KonstantenProgrammierung - Konstanten
KonstantenKonstanten Beispiel: Beispiel: Const pi = 3.14Const pi = 3.14
Gültigkeitsbereich von Variablen und Konstanten:Gültigkeitsbereich von Variablen und Konstanten: Unterscheidung in globale und lokaleUnterscheidung in globale und lokale globale Variablen werden mit dem Schlüsselwort globale Variablen werden mit dem Schlüsselwort GlobalGlobal
initiiertinitiiert Globale Variablen sind innerhalb des gesamten Globale Variablen sind innerhalb des gesamten
Programms gültig, lokale nur in der Funktion in der sie Programms gültig, lokale nur in der Funktion in der sie definiert sind. definiert sind.
DVG3 - 16VisualBasic 16
Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren
Funktionen und ProzedurenFunktionen und Prozeduren ohne Rückgabewert:ohne Rückgabewert: DefinitionDefinition Sub name_der_funktion()Sub name_der_funktion() ...... End SubEnd Sub
DVG3 - 16VisualBasic 17
Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren
mit Rückgabewert:mit Rückgabewert: DefinitionDefinition Function name_der_funktion(x As Integer) As DoubleFunction name_der_funktion(x As Integer) As Double ...... End FunctionEnd Function
Der Rückgabewert muß innerhalb der Funktion durch Der Rückgabewert muß innerhalb der Funktion durch eine Zuweisung dem Namen der Funktion zugewiesen eine Zuweisung dem Namen der Funktion zugewiesen werdenwerden
an die Funktion übergebener Parameter: Integer xan die Funktion übergebener Parameter: Integer x Rückgabewert: Rückgabewert: name_der_funktionname_der_funktion vom Typ Double vom Typ Double
DVG3 - 16VisualBasic 18
Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren
Prozedurnamen dürfen außer dem Unterstrich keine Prozedurnamen dürfen außer dem Unterstrich keine Sonderzeichen enthaltenSonderzeichen enthalten
Aufruf von Funktionen:Aufruf von Funktionen: name_der_funktion Para1,...,ParaNname_der_funktion Para1,...,ParaN
Die Datentypen von Para1,...,ParaN müssen identisch Die Datentypen von Para1,...,ParaN müssen identisch mit den Paramertypen der aufgerufenen Funktion seinmit den Paramertypen der aufgerufenen Funktion sein
DVG3 - 16VisualBasic 19
Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren
Aufruf von Funktionen:Aufruf von Funktionen: Es gibt zwei Arten, Funktionen mit Parametern Es gibt zwei Arten, Funktionen mit Parametern
aufzurufen:aufzurufen: call by value:call by value: Wird für einen Parameter in einer Funktion die Wird für einen Parameter in einer Funktion die
Übergabeart call by value gewählt, dann wird beim Übergabeart call by value gewählt, dann wird beim Prozeduraufruf der Wert des Parameters übergeben und Prozeduraufruf der Wert des Parameters übergeben und nicht dessen Adresse. Wird der Parameter in der nicht dessen Adresse. Wird der Parameter in der aufgerufenen Prozedur geändert, so hat dies keine aufgerufenen Prozedur geändert, so hat dies keine Auswirkung auf den übergebenen Parameter. Auswirkung auf den übergebenen Parameter.
DVG3 - 16VisualBasic 20
Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren
Beispiel: call by valueBeispiel: call by value
Sub eins(ByVal a)Sub eins(ByVal a) a=a+10a=a+10 End SubEnd Sub
Sub zwei()Sub zwei() b=10b=10 eins beins b c= bc= b End SubEnd Sub
Der Parameter c hat hier den Wert 10.Der Parameter c hat hier den Wert 10.
DVG3 - 16VisualBasic 21
Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren
call by reference:call by reference: Wird für einen Parameter die Übergabeart call by Wird für einen Parameter die Übergabeart call by
reference gewählt, dann wird beim Prozeduraufruf die reference gewählt, dann wird beim Prozeduraufruf die Adresse des Parameters übergeben.Adresse des Parameters übergeben.
Wird der Parameter also in der aufgerufenen Prozedur Wird der Parameter also in der aufgerufenen Prozedur geändert, hat das Auswirkungen auf den Wert des geändert, hat das Auswirkungen auf den Wert des Parameters in der aufrufenden Prozedur.Parameters in der aufrufenden Prozedur.
Es ist nicht möglich, beim Aufruf als Parameter direkt Es ist nicht möglich, beim Aufruf als Parameter direkt eine Zahl oder Zeichenkette zu verwenden, da diese eine Zahl oder Zeichenkette zu verwenden, da diese nicht von der Prozedur verändert werden kann.nicht von der Prozedur verändert werden kann.
DVG3 - 16VisualBasic 22
Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren
Beispiel: call by referenceBeispiel: call by reference
Sub eins(a)Sub eins(a) Dim a=a+10Dim a=a+10 End SubEnd Sub
Sub zwei()Sub zwei() Dim b=10Dim b=10 eins beins b Dim c= bDim c= b End SubEnd Sub
Der Parameter c hat hier den Wert 20. Der Parameter c hat hier den Wert 20.
DVG3 - 16VisualBasic 23
Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren
Es gibt vordefinierte Prozeduren, wieEs gibt vordefinierte Prozeduren, wie MsgBox “Text “ MsgBox “Text “ zeigt eine Textbox auf dem Bildschirm anzeigt eine Textbox auf dem Bildschirm an InputBoxInputBox
funktioniert wie funktioniert wie MsgBoxMsgBox nur wird hierbei die Eingabe nur wird hierbei die Eingabe einer Zeichenkette ermöglicht.einer Zeichenkette ermöglicht.
DVG3 - 16VisualBasic 24
Kapitel 04Kapitel 04Programmierung - VerzweigungenProgrammierung - Verzweigungen
If - Then -ElseIf - Then -Else If bedingung ThenIf bedingung Then ...... ElseIf bedingung1 ThenElseIf bedingung1 Then ...... ElseIf bedingungN Then ElseIf bedingungN Then ...... ElseElse ...... End IfEnd If
Dabei werden die ElseIf - Blöcke und die Else - Blöcke Dabei werden die ElseIf - Blöcke und die Else - Blöcke nur ausgeführt, wenn keine der darüber liegenden nur ausgeführt, wenn keine der darüber liegenden Bedingungen erfüllt ist.Bedingungen erfüllt ist.
DVG3 - 16VisualBasic 25
Kapitel 04Kapitel 04Programmierung - VerzweigungenProgrammierung - Verzweigungen
Select - CaseSelect - Case Select Case ausdruckSelect Case ausdruck Case möglichkeit1Case möglichkeit1 ...... Case möglichkeitNCase möglichkeitN ...... Case ElseCase Else ...... End Select End Select
DVG3 - 16VisualBasic 26
Kapitel 04Kapitel 04Programmierung - SchleifenProgrammierung - Schleifen
For-Next-SchleifenFor-Next-Schleifen var1, var2var1, var2 For var1= start To ende [Step schrittweite]For var1= start To ende [Step schrittweite] ...... If ... Then Exit ForIf ... Then Exit For ...... Next var2Next var2
In jedem Durchgang wird die Variable um die In jedem Durchgang wird die Variable um die Schrittweite erhöhtSchrittweite erhöht
Ist keine Schrittweite angegeben, wird die Variable Ist keine Schrittweite angegeben, wird die Variable jeweils um 1 erhöht.jeweils um 1 erhöht.
Als Schleifenvariable wird nach Durchlauf einer Als Schleifenvariable wird nach Durchlauf einer Variablen automatisch die nächste eingesetzt. Variablen automatisch die nächste eingesetzt.
DVG3 - 16VisualBasic 27
Kapitel 04Kapitel 04Programmierung - SchleifenProgrammierung - Schleifen
While - Wend - SchleifeWhile - Wend - Schleife While bedingungWhile bedingung ...... WendWend
Wird so lange ausgeführt, bis die Bedingung erfüllt istWird so lange ausgeführt, bis die Bedingung erfüllt ist
DVG3 - 16VisualBasic 28
Kapitel 04Kapitel 04Programmierung - SchleifenProgrammierung - Schleifen
Do - Loop - SchleifenDo - Loop - Schleifen Do [ While bedingung oder Until bedingung]Do [ While bedingung oder Until bedingung] ...... If ... Then Exit DoIf ... Then Exit Do ...... LoopLoop
oderoder
DoDo ...... If ... Then Exit DoIf ... Then Exit Do ...... Loop [ While bedingung oder Until bedingung]Loop [ While bedingung oder Until bedingung]
Steht in einer Do - Loop - Schleife keine While- oder Steht in einer Do - Loop - Schleife keine While- oder Untilbedingung, dann ist sie eine Endlosschleife.Untilbedingung, dann ist sie eine Endlosschleife.
DVG3 - 16VisualBasic 29
Kapitel 04Kapitel 04Programmierung - ObjekteProgrammierung - Objekte
Als Objekte gelten Formulare, Steuerelemente und Als Objekte gelten Formulare, Steuerelemente und einige Windows-Elemente ( Drucker, einige Windows-Elemente ( Drucker, Zwischenablage, ...)Zwischenablage, ...)
Objekte enthalten Eigenschaften und MethodenObjekte enthalten Eigenschaften und Methoden Eigenschaften bestimmen die Merkmale eines Objekts Eigenschaften bestimmen die Merkmale eines Objekts
( Farbe eines Formulars, Größe eines Buttons, ...).( Farbe eines Formulars, Größe eines Buttons, ...). Methoden führen Anweisungen aus.Methoden führen Anweisungen aus. Aufruf von Eigenschaften und Methoden:Aufruf von Eigenschaften und Methoden: objekt.eigenschaftobjekt.eigenschaft objekt.methodeobjekt.methode
DVG3 - 16VisualBasic 30
Kapitel 04Kapitel 04Programmierung - ObjekteProgrammierung - Objekte
Greift man nacheinander auf unterschiedliche Greift man nacheinander auf unterschiedliche Eigenschaften oder Methoden eines Objekts zu, kann Eigenschaften oder Methoden eines Objekts zu, kann man dies mit man dies mit With With vereinfachen:vereinfachen:
With objektWith objekt .methode1.methode1 ...... .methodeN.methodeN .eigenschaft1.eigenschaft1 ...... .eigenschaftM.eigenschaftM End With End With
DVG3 - 16VisualBasic 31
Kapitel 06Kapitel 06InternetInternet
Bei der ersten Version von HTML konnten nur statische Bei der ersten Version von HTML konnten nur statische Daten angezeigt werden.Daten angezeigt werden.
Es entstand der Wunsch, dynamisch auf Eingeben des Es entstand der Wunsch, dynamisch auf Eingeben des Anwenders reagieren zu können.Anwenders reagieren zu können.
Beispiel:Beispiel: Der Anwender gibt einen Suchbegriff ein.Der Anwender gibt einen Suchbegriff ein. Server leitet mittels CGI ( Common Gateway Interface) Server leitet mittels CGI ( Common Gateway Interface)
diese Information weiter an ein Programm zur diese Information weiter an ein Programm zur AuswertungAuswertung
Dieses Programm liefert eine neue HTML-Seite, die als Dieses Programm liefert eine neue HTML-Seite, die als Antwort an den Client übertragen wird.Antwort an den Client übertragen wird.
DVG3 - 16VisualBasic 32
Kapitel 06Kapitel 06InternetInternet
Dynamischer Datenaustausch ist Grundlage aller Dynamischer Datenaustausch ist Grundlage aller Geschäftstransaktionen und jedes Datenbankzugriffs Geschäftstransaktionen und jedes Datenbankzugriffs über das Internet.über das Internet.
Darum wurde HTML mit Formular-Merkmalen erweitert, Darum wurde HTML mit Formular-Merkmalen erweitert, die es ermöglichen, einfache Dialoge zu gestalten und die es ermöglichen, einfache Dialoge zu gestalten und Informationen zurück an den Internet-Server zu senden.Informationen zurück an den Internet-Server zu senden.
Dort werden diese Informationen ausgewertet und auf Dort werden diese Informationen ausgewertet und auf einer neuen HTML-Seite zurück an den Server einer neuen HTML-Seite zurück an den Server übertragen.übertragen.
DVG3 - 16VisualBasic 33
Kapitel 06Kapitel 06InternetInternet
Nachteile:Nachteile: Datenaustausch über das Internet ist langsam. Oft Datenaustausch über das Internet ist langsam. Oft
könnten Daten gleich beim Anwender ausgewertet könnten Daten gleich beim Anwender ausgewertet werden und stünden damit gleich zur Verfügung.werden und stünden damit gleich zur Verfügung.
Der Server kann nicht unbegrenzt viele CGI-Programme Der Server kann nicht unbegrenzt viele CGI-Programme gleichzeitig starten. Konsequenz: noch längere gleichzeitig starten. Konsequenz: noch längere Wartezeiten.Wartezeiten.
DVG3 - 16VisualBasic 34
Kapitel 06Kapitel 06InternetInternet
Lösungsansätze für diese Probleme:Lösungsansätze für diese Probleme: Verlagerung von möglichst viel Funktionen zum Client Verlagerung von möglichst viel Funktionen zum Client
zu verlagern, d. h. in Programme, die lokal am Rechner zu verlagern, d. h. in Programme, die lokal am Rechner des Anwenders ausgeführt werden ( Java, JavaScript, des Anwenders ausgeführt werden ( Java, JavaScript, VBScript, DHTML-Anwendungen,... )VBScript, DHTML-Anwendungen,... )
Ersetzen von CGI-Skripten durch effizientere Ersetzen von CGI-Skripten durch effizientere Programme. Microsoft bietet dazu den Internet Programme. Microsoft bietet dazu den Internet Information Server, das Internet Server Application Information Server, das Internet Server Application Interface, und andere an.Interface, und andere an.
DVG3 - 16VisualBasic 35
Kapitel 06Kapitel 06Internet - VBScriptInternet - VBScript
Sehr starke Ähnlichkeit zu Visual BasicSehr starke Ähnlichkeit zu Visual Basic Einige Unterschiede zu VB:Einige Unterschiede zu VB: With-Kommando existiert nichtWith-Kommando existiert nicht nur Variablentyp Variantnur Variablentyp Variant VB-Script Programme sind spürbar langsamer als VB-VB-Script Programme sind spürbar langsamer als VB-
ProgrammeProgramme
In den meisten öffentlich zugänglichen Internet-In den meisten öffentlich zugänglichen Internet-Dokumenten wird JavaScript benutzt, weil die Browser Dokumenten wird JavaScript benutzt, weil die Browser von Netscape nicht in der Lage sind, VBScript-Code von Netscape nicht in der Lage sind, VBScript-Code auszuführen.auszuführen.
DVG3 - 16VisualBasic 36
Kapitel 06Kapitel 06Internet - VBScriptInternet - VBScript
VBScript-Code muss zwischen <SCRIPT>-Tags VBScript-Code muss zwischen <SCRIPT>-Tags eingeschlossen sein.eingeschlossen sein.
Innerhalb einer HTML-Datei sind mehrere <SCRIPT>-Innerhalb einer HTML-Datei sind mehrere <SCRIPT>-Abschnitte zulässig.Abschnitte zulässig.
Variable innerhalb eines <SCRIPT>-Abschnitts sind nur Variable innerhalb eines <SCRIPT>-Abschnitts sind nur dort bekannt, ein <SCRIPT>-Abschnitt wird wie ein dort bekannt, ein <SCRIPT>-Abschnitt wird wie ein eigenes Modul behandelt.eigenes Modul behandelt.
DVG3 - 16VisualBasic 37
Kapitel 06Kapitel 06Internet - VBScriptInternet - VBScript
Beispiel: Hello World!Beispiel: Hello World! <HTML><HTML> <HEAD> <TITLE> Hello World als VBScript </TITLE> </HEAD><HEAD> <TITLE> Hello World als VBScript </TITLE> </HEAD> <BODY><BODY> <H3> Hello World in VBScript </H3><H3> Hello World in VBScript </H3> <INPUT TYPE=“Button“ NAME=“MyButton“ VALUE=“Click Me“ ><INPUT TYPE=“Button“ NAME=“MyButton“ VALUE=“Click Me“ > <SCRIPT LANGUAGE=“VBScript“><SCRIPT LANGUAGE=“VBScript“> <!--<!-- Sub MyButton_OnClick()Sub MyButton_OnClick() MsgBox “Hello World! MsgBox “Hello World! ““ EndSubEndSub -->--> </SCRIPT></SCRIPT> </BODY></BODY> </HTML></HTML>