Wie kann ich eine UUID über die Befehlszeile in Windows XP generieren?


Antworten:


11

Wenn Powershell installiert ist, ist dies eine einfache Befehlszeile, um eine Anleitung zu erhalten

powershell -Command "[guid]::NewGuid().ToString()"

Mit können Sie es zu einem wiederverwendbaren Befehl in PowerShell machen. Funktion uuid {[guid] :: NewGuid (). ToString ()}. Führen Sie "uuid" nach Bedarf aus.
Alain O'Dea

7

Legen Sie den folgenden Code in einer neuen Datei namens "uuid.vbs" ab

set obj = CreateObject("Scriptlet.TypeLib")
WScript.StdOut.WriteLine obj.GUID

Dann können Sie es von der Kommandozeile aus wie folgt ausführen:

cscript //NoLogo uuid.vbs

Dies funktioniert auf so gut wie jedem Computer, auf dem der Windows Scripting Host installiert ist - was sicherlich alles später als Windows 2000 und wahrscheinlich auch 95/98 / ME beinhaltet ... obwohl ich keine zu überprüfende Instanz zur Hand habe.

Wenn Sie die Klammern entfernen müssen, ersetzen Sie die letzte Zeile durch diese

WScript.StdOut.WriteLine Replace(Replace(obj.GUID,"{",""),"}","")

4
Witzig, wie einzigartig Windows für jeden Planeten ist, aber in Unix und verwandten Systemen ist es im gesamten Universum einzigartig.
Bratch

2

Sie können diesen Befehl auch in einer Eingabeaufforderung verwenden:
wmic path win32_computersystemproduct get uuid


scheint, dass es nur für 1 Guid gut ist
drzaus

4
Dies erzeugt KEINE GUID. Es wird nur eine vorhandene Anleitung angezeigt.
VERWENDEN SIE DIES

2
Relevante XKCD: xkcd.com/221
TripShock

1

Aus der MSDN Library: Generieren von Schnittstellen-UUIDs.


Wissen Sie, wo ich dieses "uuidgen" herunterladen kann?
Yazz.com

Es kommt mit Visual Studio - ich würde erwarten, dass es mit der Express-Edition von Visual C ++ kommt, von der ich glaube, dass sie auch kostenlos heruntergeladen werden kann
Rowland Shaw

1
Laut msdn.microsoft.com/en-us/library/aa373930%28VS.85%29.aspx wird das uuidgenDienstprogramm (Uuidgen.exe) automatisch installiert, wenn Sie das Platform Software Development Kit (SDK) installieren.
Mehper C. Palavuzlar

Ist es nicht als separater Download verfügbar, da ich weder für das SDK noch für Visual Studio etwas brauche?
Yazz.com

1
@Zubair: SDK installieren, uuidgen holen, SDK deinstallieren. Alles andere ist eine Urheberrechtsverletzung.
Harrymc

1

Verwenden Sie diesen Befehl, um eine neue GUID in die Zwischenablage zu kopieren:

cmd /c powershell.exe -Command "[guid]::NewGuid().ToString()|Set-Clipboard"

Sie können den Befehl direkt über das Dialogfeld "Start", "Ausführen" (WinLogo + R) ausführen und anschließend die generierte GUID mit Strg + V einfügen.


0
  FOR /F %a IN ('POWERSHELL -COMMAND "$([guid]::NewGuid().ToString())"') DO ( SET NEWGUID=%a )

0

Wenn das Systembetriebssystem kein Windows SDK hat, aber einen C-Compiler mit MingW-W64-Toolchain hat, kompilieren Sie dieses kleine Programm, um eine zufällige GUID zu generieren. Importierte Funktionen sind UuidCreate (rpcrt4.lib) zum Erstellen einer zufälligen UUID und StringFromCLSID (ole32.lib) zum Konvertieren der UUID in eine breite Zeichenfolge.

#include <Windows.h>
#include <stdio.h>

/*
 * int UuidCreate(GUID *id);
 * int StringFromCLSID(GUID *id, wchar_t **str);
 * Libraries: Rpcrt4.lib Ole32.lib
 */

int main(void)
{
    GUID id;
    wchar_t *str = NULL;

    UuidCreate(&id);
    StringFromCLSID(&id, &str);
    wprintf(L"%ls\n", str);
}
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.