Erstellen von GUIDs mithilfe von Active Server Pages in IIS
Dieser Artikel enthält Informationen zum Erstellen mehrerer Beispielseiten mithilfe verschiedener Formen von GUIDs für Active Server Pages (ASP)-Seiten, die verwendet werden sollen. Diese Werte können verwendet werden, um eindeutige Dateneinträge in einer Datenbank oder an einer anderen Stelle zu erstellen, an der ein eindeutiges Datenfeld erforderlich ist.
Ursprüngliche Produktversion: Internetinformationsdienste
Ursprüngliche KB-Nummer: 320375
Hinweis
Da in diesen Beispielen keine Sitzungsvariablen verwendet werden, funktionieren diese Beispiele auch auf Webservern, auf denen der Sitzungsstatus deaktiviert ist.
Erstellen einer einfachen zeitbasierten GUID
In diesem Beispiel wird eine einfache 14-Zeichen-zeitbasierte GUID mithilfe des aktuellen Jahres, Monats, Tags, Stunden, Minuten und Sekunden erstellt. Dadurch können Sie Daten basierend auf der GUID sortieren.
Wählen Sie "Start", zeigen Sie auf "Programme", wählen Sie "Zubehör" und dann Editor aus, um Editor zu öffnen.
Geben Sie den folgenden ASP-Code in Editor ein, oder fügen Sie ihn ein:
<%@LANGUAGE="VBSCRIPT"%> <HTML> <BODY> <% Response.Write "GUID = " & CreateGUID() Function CreateGUID() Dim tmpTemp tmpTemp = Right(String(4,48) & Year(Now()),4) tmpTemp = tmpTemp & Right(String(4,48) & Month(Now()),2) tmpTemp = tmpTemp & Right(String(4,48) & Day(Now()),2) tmpTemp = tmpTemp & Right(String(4,48) & Hour(Now()),2) tmpTemp = tmpTemp & Right(String(4,48) & Minute(Now()),2) tmpTemp = tmpTemp & Right(String(4,48) & Second(Now()),2) CreateGUID = tmpTemp End Function %> </BODY> </HTML>Speichern Sie die Seite:
- Klicken Sie im Menü Datei auf Speichern.
- Suchen Sie den Stammordner für Ihre Website, bei dem es sich in der Regel um den
C:\InetPub\WwwrootOrdner für die Standardwebsite handelt. - Geben Sie der Datei den Namen GuidTest0.asp.
- Klicken Sie auf Speichern.
- Wählen Sie im Menü Datei die Option Beenden aus.
Suchen Sie die Seite mit Internet Explorer. Es wird eine GUID angezeigt. Beim Aktualisieren der Seite wird der GUID-Schritt angezeigt.
Erstellen einer einfachen Zeitoffset-GUID
In diesem Beispiel wird eine zeitbasierte GUID mit 20 Zeichen erstellt, indem der Offset am 1. Januar 2000 um Mitternacht um 12:00 Uhr in Sekunden verwendet wird. Dadurch können Sie Daten basierend auf der GUID sortieren und aktualisiert werden, um ein beliebiges anderes Datum als Basis zu verwenden.
Wählen Sie "Start", zeigen Sie auf "Programme", wählen Sie "Zubehör" und dann Editor aus, um Editor zu öffnen.
Geben Sie den folgenden ASP-Code in Editor ein, oder fügen Sie ihn ein:
<%@LANGUAGE="VBSCRIPT"%> <HTML> <BODY> <% Response.Write "GUID = " & CreateGUID() Function CreateGUID() Dim tmpTemp1,tmpTemp2 tmpTemp1 = Right(String(15,48) & CStr(CLng(DateDiff("s","1/1/2000",Date()))), 15) tmpTemp2 = Right(String(5,48) & CStr(CLng(DateDiff("s","12:00:00 AM",Time()))), 5) CreateGUID = tmpTemp1 & tmpTemp2 End Function %> </BODY> </HTML>Speichern Sie die Seite:
- Klicken Sie im Menü Datei auf Speichern.
- Suchen Sie den Stammordner für Ihre Website, bei dem es sich in der Regel um den
C:\InetPub\WwwrootOrdner für die Standardwebsite handelt. - Geben Sie der Datei den Namen GuidTest1.asp.
- Klicken Sie auf Speichern.
- Wählen Sie im Menü Datei die Option Beenden aus.
Suchen Sie die Seite mit Internet Explorer. Es wird eine GUID angezeigt. Beim Aktualisieren der Seite wird der GUID-Schritt angezeigt.
Hinweis
Dieses Beispiel lässt die Eindeutigkeit nur zu, wenn die Funktion nicht zweimal in derselben Sekunde aufgerufen wird. Alle zwei Aufrufe der Funktion an derselben Sekunde führen zu einer Kollision. Dies verursacht möglicherweise kein Problem, je nachdem, wie Ihr Code die Funktion verwendet, aber Sie können das Beispiel zum Erstellen einer eindeutigeren Zeitoffset-GUID verwenden, um eindeutige Werte zuzulassen, die in derselben Sekunde auftreten.
Erstellen einer eindeutigeren Zeitoffset-GUID
In diesem Beispiel wird wie im Beispiel Create a simple time-offset GUID eine zeitbasierte GUID erstellt, die jedoch 25 Zeichen lang ist. In diesem Beispiel wird am 1. Januar 2000 um Mitternacht um 12:00 Uhr ein 20-Zeichen-Wert aus dem Offset in Sekunden erstellt, und am Ende werden weitere fünf Zufallszahlen angefügt. Auf diese Weise können Sie Daten basierend auf der GUID sortieren, aber viel mehr Eindeutigkeit. Dies kann aktualisiert werden, um ein beliebiges anderes Datum als Basis zu verwenden.
Wählen Sie "Start", zeigen Sie auf "Programme", wählen Sie "Zubehör" und dann Editor aus, um Editor zu öffnen.
Geben Sie den folgenden ASP-Code in Editor ein, oder fügen Sie ihn ein:
<%@LANGUAGE="VBSCRIPT"%> <HTML> <BODY> <% Response.Write "GUID = " & CreateGUID() Function CreateGUID() Randomize Timer Dim tmpTemp1,tmpTemp2,tmpTemp3 tmpTemp1 = Right(String(15,48) & CStr(CLng(DateDiff("s","1/1/2000",Date()))), 15) tmpTemp2 = Right(String(5,48) & CStr(CLng(DateDiff("s","12:00:00 AM",Time()))), 5) tmpTemp3 = Right(String(5,48) & CStr(Int(Rnd(1) * 100000)),5) CreateGUID = tmpTemp1 & tmpTemp2 & tmpTemp3 End Function %> </BODY> </HTML>Speichern Sie die Seite:
- Klicken Sie im Menü Datei auf Speichern.
- Suchen Sie den Stammordner für Ihre Website, bei dem es sich in der Regel um den
C:\InetPub\WwwrootOrdner für die Standardwebsite handelt. - Geben Sie der Datei den Namen GuidTest2.asp.
- Klicken Sie auf Speichern.
- Wählen Sie im Menü Datei die Option Beenden aus.
Suchen Sie die Seite mit Internet Explorer. Es wird eine GUID angezeigt. Beim Aktualisieren der Seite werden die ersten 20 Zeichen des GUID-Schritts angezeigt, und die letzten fünf Zeichen sind zufällig.
Hinweis
Dieses Beispiel und das Beispiel Create a simple time-offset GUID werden für die zeitbasierte Serialisierung von Aufrufen der CreateGUID Funktion erstellt. Wenn das Sortieren von Daten basierend auf der Zeit nicht erforderlich ist, können Sie das Beispiel "Erstellen einer einfachen zufälligen GUID" verwenden, um eine zufällige GUID zu erstellen.
Erstellen einer einfachen zufälligen GUID
Wählen Sie "Start", zeigen Sie auf "Programme", wählen Sie "Zubehör" und dann Editor aus, um Editor zu öffnen.
Geben Sie den folgenden ASP-Code in Editor ein, oder fügen Sie ihn ein:
<%@LANGUAGE="VBSCRIPT"%> <HTML> <BODY> <% Response.Write "GUID = " & CreateGUID() Function CreateGUID() Randomize Timer Dim tmpCounter,tmpGUID Const strValid = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" For tmpCounter = 1 To 20 tmpGUID = tmpGUID & Mid(strValid, Int(Rnd(1) * Len(strValid)) + 1, 1) Next CreateGUID = tmpGUID End Function %> </BODY> </HTML>Speichern Sie die Seite:
- Klicken Sie im Menü Datei auf Speichern.
- Suchen Sie den Stammordner für Ihre Website, bei dem es sich in der Regel um den Ordner "C:\InetPub\Wwwroot" für die Standardwebsite handelt.
- Nennen Sie die Datei GuidTest3.asp.
- Klicken Sie auf Speichern.
- Wählen Sie im Menü Datei die Option Beenden aus.
Suchen Sie die Seite mit Internet Explorer. Es wird eine zufällige GUID mit 20 Zeichen angezeigt. Wenn Sie die Seite aktualisieren, wird angezeigt, dass sich der Wert zufällig ändert.
Hinweis
In diesem Beispiel wird eine zufällige GUID mit fester Länge erstellt. Um eine GUID mit variabler Länge zu erstellen, verwenden Sie das Beispiel zum Erstellen einer zufälligen GUID mit variabler Länge.
Erstellen einer zufälligen GUID mit variabler Länge
Wählen Sie "Start", zeigen Sie auf "Programme", wählen Sie "Zubehör" und dann Editor aus, um Editor zu öffnen.
Geben Sie den folgenden ASP-Code in Editor ein, oder fügen Sie ihn ein:
<%@LANGUAGE="VBSCRIPT"%> <HTML> <BODY> <% Response.Write "<P>GUID = " & CreateGUID(10) Response.Write "<P>GUID = " & CreateGUID(25) Response.Write "<P>GUID = " & CreateGUID(50) Function CreateGUID(tmpLength) Randomize Timer Dim tmpCounter,tmpGUID Const strValid = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" For tmpCounter = 1 To tmpLength tmpGUID = tmpGUID & Mid(strValid, Int(Rnd(1) * Len(strValid)) + 1, 1) Next CreateGUID = tmpGUID End Function %> </BODY> </HTML>Speichern Sie die Seite:
- Klicken Sie im Menü Datei auf Speichern.
- Suchen Sie den Stammordner für Ihre Website, bei dem es sich in der Regel um den Ordner "C:\InetPub\Wwwroot" für die Standardwebsite handelt.
- Nennen Sie die Datei "GuidTest4.asp".
- Klicken Sie auf Speichern.
- Wählen Sie im Menü Datei die Option Beenden aus.
Suchen Sie die Seite mit Internet Explorer. Es wird eine zufällige GUID mit 10 Zeichen, 25 Zeichen und 50 Zeichen angezeigt. Wenn Sie die Seite aktualisieren, werden die Werte zufällig geändert.
Hinweis
In diesem Beispiel und im Beispiel Create a simple random GUID werden Zeichenfolgen verketteter Zufallszeichen erstellt. Im Beispiel zum Erstellen einer zufälligen GUID im Windows-Format wird diese Funktionalität erweitert, um eine GUID zu erstellen, die wie eine Windows GUID formatiert ist.
Erstellen einer zufälligen WINDOWS-GUID
Windows verwendet in erster Linie GUIDs, wenn Klassen-IDs für Komponenten und andere Objekte registriert werden, GUIDs können jedoch für alles verwendet werden. Windows GUIDs sind lange Zeichenfolgen mit formatierten Hexadezimalzeichen, d. h., sie verwenden die Zahlen 0 bis 9 und die Buchstaben A bis F. (Microsoft Access verfügt auch über eine integrierte Replikations-ID im selben Format.) In diesem Beispiel wird gezeigt, wie Sie Code verwenden, der dem Beispielcode Create a variable-length random GUID ähnelt, um eine GUID wie eine Windows GUID zu erstellen.
Wählen Sie "Start", zeigen Sie auf "Programme", wählen Sie "Zubehör" und dann Editor aus, um Editor zu öffnen.
Geben Sie den folgenden ASP-Code in Editor ein, oder fügen Sie ihn ein:
<%@LANGUAGE="VBSCRIPT"%> <HTML> <BODY> <% Response.Write "<P>GUID = " & CreateWindowsGUID() Function CreateWindowsGUID() CreateWindowsGUID = CreateGUID(8) & "-" & _ CreateGUID(4) & "-" & _ CreateGUID(4) & "-" & _ CreateGUID(4) & "-" & _ CreateGUID(12) End Function Function CreateGUID(tmpLength) Randomize Timer Dim tmpCounter,tmpGUID Const strValid = "0123456789ABCDEF" For tmpCounter = 1 To tmpLength tmpGUID = tmpGUID & Mid(strValid, Int(Rnd(1) * Len(strValid)) + 1, 1) Next CreateGUID = tmpGUID End Function %> </BODY> </HTML>Speichern Sie die Seite:
- Klicken Sie im Menü Datei auf Speichern.
- Suchen Sie den Stammordner für Ihre Website, bei dem es sich in der Regel um den
C:\InetPub\WwwrootOrdner für die Standardwebsite handelt. - Geben Sie der Datei den Namen GuidTest5.asp.
- Klicken Sie auf Speichern.
- Wählen Sie im Menü Datei die Option Beenden aus.
Suchen Sie die Seite mit Internet Explorer. Es wird eine zufällige GUID angezeigt, die wie eine Windows GUID formatiert ist. Wenn Sie die Seite aktualisieren, wird angezeigt, dass sich der Wert zufällig ändert.
Erstellen einer stärkeren zufälligen GUID im Windows-Format
Da Windows GUIDs hexadezimale Zahlen für jedes Zeichen verwenden, sind 16 Werte pro Zeichen in der GUID möglich. Wenn Sie die Werte erweitern, um das gesamte Alphabet einzuschließen, sind 36 Werte pro Zeichen in der GUID möglich. In diesem Beispiel wird die Funktion aus dem Beispiel Create a variable-length random GUID verwendet, um eine GUID im gleichen Format wie eine Windows GUID zu erstellen.
Wählen Sie "Start", zeigen Sie auf "Programme", wählen Sie "Zubehör" und dann Editor aus, um Editor zu öffnen.
Geben Sie den folgenden ASP-Code in Editor ein, oder fügen Sie ihn ein:
<%@LANGUAGE="VBSCRIPT"%> <HTML> <BODY> <% Response.Write "<P>GUID = " & CreateWindowsGUID() Function CreateWindowsGUID() CreateWindowsGUID = CreateGUID(8) & "-" & _ CreateGUID(4) & "-" & _ CreateGUID(4) & "-" & _ CreateGUID(4) & "-" & _ CreateGUID(12) End Function Function CreateGUID(tmpLength) Randomize Timer Dim tmpCounter,tmpGUID Const strValid = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" For tmpCounter = 1 To tmpLength tmpGUID = tmpGUID & Mid(strValid, Int(Rnd(1) * Len(strValid)) + 1, 1) Next CreateGUID = tmpGUID End Function %> </BODY> </HTML>Speichern Sie die Seite:
- Klicken Sie im Menü Datei auf Speichern.
- Suchen Sie den Stammordner für Ihre Website, bei dem es sich in der Regel um den
C:\InetPub\WwwrootOrdner für die Standardwebsite handelt. - Geben Sie der Datei den Namen GuidTest6.asp.
- Klicken Sie auf Speichern.
- Wählen Sie im Menü Datei die Option Beenden aus.
Suchen Sie die Seite mit Internet Explorer. Es wird eine zufällige GUID angezeigt, die wie eine Windows GUID formatiert ist. Wenn Sie die Seite aktualisieren, wird angezeigt, dass sich der Wert zufällig ändert.