Jak wygenerować identyfikator UUID z wiersza polecenia w systemie Windows XP?


Odpowiedzi:


12

Jeśli jest zainstalowany PowerShell, jest to prosty wiersz polecenia, aby uzyskać przewodnik

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

Możesz uczynić to polecenie wielokrotnego użytku w programie PowerShell za pomocą. function uuid {[guid] :: NewGuid (). ToString ()}. Po prostu uruchom „uuid” w razie potrzeby.
— Alain O'Dea,

Umieściłem ten wiersz w pliku guid.bat w folderze PATH, aby działał w zwykłym wierszu polecenia i programie PowerShell.
— biscuit314

7

Upuść następujący kod do nowej nazwy pliku uuid.vbs

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

Następnie możesz uruchomić go z wiersza poleceń w następujący sposób:

cscript //NoLogo uuid.vbs

Będzie to działać na prawie każdym komputerze, na którym jest zainstalowany Windows Scripting Host - który z pewnością zawiera wszystko później niż Windows 2000 i prawdopodobnie obejmuje także 95/98 / ME ... chociaż nie mam instancji przydatnej do sprawdzenia.

Jeśli chcesz usunąć nawiasy klamrowe, zastąp ostatnią linię tym

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

4
Zabawne, że w systemie Windows jest unikalny tylko dla każdej planety, ale w systemach Unix i pokrewnych jest wyjątkowy w całym wszechświecie.
— Bratch

2

Możesz także użyć tego polecenia w wierszu polecenia:
wmic path win32_computersystemproduct get uuid


wydaje się, że jest dobry tylko dla 1 przewodnika
— drzaus

4
To NIE generuje GUID. Pokazuje tylko istniejącego przewodnika. NIE UŻYWAJ tego, jeśli chcesz mieć unikalny GUID
— Air2

2
Odpowiedni XKCD: xkcd.com/221
— TripShock

2

Aby skopiować nowy identyfikator GUID do schowka, użyj tego polecenia:

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

Możesz uruchomić polecenie bezpośrednio z okna Start, Uruchom (WinLogo + R), a następnie użyj Ctrl + V, aby wkleić wygenerowany identyfikator GUID, który BĘDZIE również zapisywać go w historii okna dialogowego Uruchom - inaczej jeśli często go używasz, wyskakuje- tam jako sugestia ...


1

Z biblioteki MSDN: Generowanie UUID interfejsu.


Czy wiesz, skąd mogę pobrać ten „uuidgen”?
— Yazz.com

Jest dostarczany z Visual Studio - spodziewałbym się, że zostanie dostarczony wraz z ekspresową wersją Visual C ++, która moim zdaniem jest również bezpłatna do pobrania
— Rowland Shaw

1
msdn.microsoft.com/en-us/library/aa373930%28VS.85%29.aspx mówi, że uuidgennarzędzie (Uuidgen.exe) jest instalowane automatycznie podczas instalacji pakietu Software Development Kit (SDK).
— Mehper C. Palavuzlar

Czy nie jest dostępny jako osobny plik do pobrania, ponieważ nie mam zastosowania do zestawu SDK ani programu Visual Studio.
— Yazz.com

1
@Zubair: Zainstaluj SDK, pobierz uuidgen, odinstaluj SDK. Wszystko inne stanowi naruszenie praw autorskich.
— harrymc

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

0

Jeśli systemowy system operacyjny nie ma zestawu Windows SDK, ale ma kompilator C z zestawem narzędzi mingw-w64, skompiluj ten mały program, aby wygenerować losowy identyfikator GUID. Zaimportowane funkcje to UuidCreate (rpcrt4.lib) w celu utworzenia losowego UUID i StringFromCLSID (ole32.lib) w celu konwersji UUID na szeroki ciąg.

#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);
}
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.