Làm cách nào tôi có thể tạo UUID từ dòng lệnh trong Windows XP?


Câu trả lời:


11

Nếu powershell được cài đặt, đây là một dòng lệnh đơn giản để có được hướng dẫn

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

Bạn có thể biến nó thành một lệnh có thể sử dụng lại trong PowerShell với. hàm uuid {[guide] :: NewGuid (). ToString ()}. Chỉ cần chạy "uuid" khi cần thiết.
Alain O'Dea

7

Thả mã sau vào tên tệp mới uuid.vbs

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

Sau đó, bạn có thể chạy nó từ dòng lệnh như vậy:

cscript //NoLogo uuid.vbs

Điều này sẽ hoạt động trên hầu hết mọi máy tính đã cài đặt Windows Scripting Host - chắc chắn bao gồm mọi thứ muộn hơn Windows 2000 và có thể bao gồm 95/98 / ME ... mặc dù tôi không có một ví dụ nào tiện để kiểm tra.

Nếu bạn cần tháo niềng răng, hãy thay thế dòng cuối cùng bằng cái này

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

4
Thật buồn cười là trong Windows nó chỉ có duy nhất cho mỗi hành tinh, nhưng trong Unix và các hệ thống liên quan, nó là duy nhất trong toàn bộ vũ trụ.
Bratch

2

Bạn cũng có thể sử dụng lệnh này trong dấu nhắc lệnh:
wmic path win32_computersystemproduct get uuid


có vẻ như nó chỉ tốt cho 1 hướng dẫn
drzaus

4
Điều này KHÔNG tạo ra một GUID. Nó chỉ hiển thị một hướng dẫn hiện có. KHÔNG SỬ DỤNG cái này nếu bạn muốn một GUID độc đáo
Air2

2
XKCD có liên quan: xkcd.com/221
TripShock

1

Từ Thư viện MSDN: Tạo UUID giao diện.


Bạn có biết tôi có thể tải "uuidgen" này từ đâu không?
Yazz.com

Nó đi kèm với Visual Studio - Tôi hy vọng nó sẽ đi kèm với phiên bản express của Visual C ++ mà tôi tin là cũng là một bản tải xuống miễn phí
Rowland Shaw

1
msdn.microsoft.com/en-us/luuidgen Library / aa373930% 28VS85% 29.aspx nói rằng tiện ích (Uuidgen.exe) được cài đặt tự động khi bạn cài đặt Bộ công cụ phát triển phần mềm nền tảng (SDK).
Mehper C. Palavuzlar

Có phải nó không có sẵn dưới dạng tải xuống riêng biệt, vì tôi không sử dụng SDK hoặc cho Visual Studio.
Yazz.com

1
@Zubair: Cài đặt SDK, tải uuidgen, gỡ cài đặt SDK. Bất cứ điều gì khác là vi phạm bản quyền.
harrymc

1

Để sao chép GUID mới vào bảng tạm, sử dụng lệnh này:

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

Bạn có thể chạy lệnh trực tiếp từ hộp thoại Bắt đầu, Chạy (WinLogo + R), sau đó sử dụng Ctrl + V để dán GUID được tạo.


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

0

Nếu hệ điều hành hệ thống không có SDK Windows nhưng có trình biên dịch C với chuỗi công cụ mingw-w64 thì hãy biên dịch chương trình nhỏ này để tạo GUID ngẫu nhiên. Các hàm được nhập là UuidCreate (rpcrt4.lib) để tạo UUID và StringFromCLSID ngẫu nhiên (ole32.lib) để chuyển đổi UUID thành chuỗi rộng.

#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);
}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.