Respuestas:
Si PowerShell está instalado, esta es una línea de comando simple para obtener un GUID
powershell -Command "[guid]::NewGuid().ToString()"
Coloque el siguiente código en un nuevo nombre de archivo uuid.vbs
set obj = CreateObject("Scriptlet.TypeLib")
WScript.StdOut.WriteLine obj.GUID
Luego puede ejecutarlo desde la línea de comando de la siguiente manera:
cscript //NoLogo uuid.vbs
Esto funcionará en casi cualquier computadora que tenga instalado Windows Scripting Host, que ciertamente incluye cualquier cosa posterior a Windows 2000, y probablemente también incluye 95/98 / ME ... aunque no tengo una instancia útil para verificar.
Si necesita quitar las llaves, reemplace la última línea con esto
WScript.StdOut.WriteLine Replace(Replace(obj.GUID,"{",""),"}","")
También puede usar este comando en un símbolo del sistema:
wmic path win32_computersystemproduct get uuid
Para copiar un nuevo GUID al portapapeles, use este comando:
cmd /c powershell.exe -Command "[guid]::NewGuid().ToString()|Set-Clipboard"
Puede ejecutar el comando directamente desde el cuadro de diálogo Inicio, Ejecutar (WinLogo + R), luego use Ctrl + V para pegar el GUID generado.
Desde la biblioteca de MSDN: Generando UUID de interfaz.
uuidgen
utilidad (Uuidgen.exe) se instala automáticamente cuando instala el Kit de desarrollo de software de plataforma (SDK).
FOR /F %a IN ('POWERSHELL -COMMAND "$([guid]::NewGuid().ToString())"') DO ( SET NEWGUID=%a )
Si el sistema operativo no tiene Windows SDK pero tiene un compilador de C con la cadena de herramientas mingw-w64, compile este pequeño programa para generar un GUID aleatorio. Las funciones importadas son UuidCreate (rpcrt4.lib) para crear UUID aleatorio y StringFromCLSID (ole32.lib) para convertir UUID en cadena ancha.
#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);
}