Saya mencari GUID unik yang disimpan di registri Windows yang akan membantu saya mengidentifikasi instalasi Windows atau PC.
GUID harus;
- Selalu ada
- Menjadi unik untuk instalasi Windows tertentu, yaitu tidak ada komputer lain yang memiliki ID yang sama
- Tidak pernah berubah
Terimakasih banyak
Jawaban:
Apakah Anda berharap nomor ini berubah atau tetap sama jika drive untuk pemasangan itu dipindahkan ke sistem lain?
Apakah Anda berharap nomor ini diubah jika instalasi diklon dengan hantu atau sesuatu yang lain? Bisakah Anda bergantung pada sistem yang dikloning yang selalu mengikuti rekomendasi Microsoft? SID harus baik-baik saja, jika Anda yakin pemasangan Anda tidak pernah dikloning.
Dalam hal sistem multi-boot (yaitu sistem memiliki Windows 7 dan instalasi Windows XP) apakah Anda perlu mengidentifikasi dua instalasi sebagai unik, atau terkait atau apa?
Mengapa Anda perlu ini menjadi bagian dari instalasi windows, dan bukan sesuatu yang disajikan oleh perangkat keras, mungkin nomor seri prosesor ?
Saya berasumsi Anda menanyakan tentang jenis script atau alat yang Anda gunakan untuk keperluan inventaris?
Mengapa Anda tidak menghasilkan nomor sendiri saat pertama kali menjalankan alat dan menyimpannya di kumpulan registri LOCAL_MACHINE? Mungkin bahkan menggunakan nomor RFC4122 Tipe 1 dan yang harus menyertakan alamat perangkat keras untuk salah satu antarmuka jaringan. Dengan begitu Anda dapat memeriksa untuk melihat apakah UUID masih milik sistem itu dengan membandingkan UUID dengan adapter jaringan yang ada.
sumber
Anda bisa mendapatkan GUID dari registri windows, misalnya:
sumber
Anda ingin menggunakan ID Produk Windows. Ini adalah nomor unik yang dihasilkan (hash) sebagian dari kunci produk yang diinstal, dan sebagian dari konfigurasi perangkat keras, termasuk nomor seri prosesor dan alamat MAC dari NIC pertama. Anda dapat membacanya di artikel TechNet ini (agak tanggal, tetapi masih valid) . ID produk dapat ditemukan pada layar Informasi Sistem, atau secara programatis melalui beberapa metode.
sumber
Dengan asumsi itu adalah server Windows, ada artikel basis pengetahuan yang berbicara tentang cara mengeluarkannya dari Win2k: KB224544 .
Saya tidak tahu apakah LDP.exe masih beroperasi seperti itu, tetapi mungkin saja.
sumber
Saya tidak yakin nilai GUID seperti yang Anda jelaskan benar-benar ada. Praktik yang umum adalah menggunakan info ID CPU atau motherboard.
Berikut ini tautan ke posting forum yang berisi beberapa kode skrip WMI yang relevan: http://www.devnewsgroups.net/group/microsoft.public.dotnet.framework/topic59274.aspx
sumber
Jika Anda ingin mengidentifikasi instalasi Windows, maka Anda mungkin kurang beruntung. Di lingkungan perusahaan, workstation sering dicitrakan daripada yang diinstal. Setiap komputer yang dibangun dari gambar ini akan identik.
Hal yang paling dekat dengan apa yang Anda gambarkan adalah SID mesin, namun ini tidak berhasil karena dua alasan:
Untuk apa Anda memerlukan pengenal ini? Taruhan terbaik Anda mungkin menghasilkan Anda sendiri, jika itu mungkin.
sumber
Anda dapat mencoba alamat MAC, yang setidaknya dimaksudkan untuk menjadi unik dan permanen secara global. Ini juga akan memiliki keuntungan yang bagus bahwa Anda bisa mendapatkan IP mesin dan nama host tanpa terlalu banyak repot (dan itu tidak akan dibatasi untuk Windows juga). Itu tidak akan memenuhi persyaratan Anda dalam registri, tetapi Anda dapat menggunakan WMI sebagai gantinya.
Contoh skrip di sini: http://www.winforums.com/showthread.php?t=8842
sumber
Bagaimana dengan DriveId volume sistem? Anda bisa mendapatkan id dari
Win32_Volume
kelas WMI, dengan mencari entri dengan SystemVolume True.Di PowerShell:
(Ini tentu saja dapat di-remotes.)
sumber
Ada SID yang digunakan oleh Pembaruan Windows yang mungkin dapat Anda gunakan. Sekali lagi tidak ada jaminan bahwa itu akan menjadi unik setiap waktu, atau tidak akan berubah.
Saya pikir hal yang paling dekat untuk memenuhi kebutuhan Anda adalah alamat MAC, namun itu dapat berubah jika NIC diganti.
Taruhan terbaik Anda adalah menulis GUID Anda sendiri ke dalam registri dan menggunakannya.
sumber
Untuk mengkonfirmasi mesin SID pada mesin tertentu, Anda dapat menjalankan SysInternals PSGETSID% COMPUTERNAME% $. (Domain SID).
http://blogs.msdn.com/aaron_margosis/archive/2009/11/05/machine-sids-and-domain-sids.aspx
EDIT: Dihapus referensi ke SID mesin dalam registri, yang mungkin tidak unik (atau bahkan benar).
sumber
Mengapa tidak menggunakan nama komputer saja? Ini akan menjadi unik di dalam domain Anda, semua instalasi windows memilikinya dan hanya akan berubah jika administrator domain mengubahnya yang seharusnya tidak diperlukan kecuali melakukan koreksi.
sumber
Saya juga perlu menemukan cara mengidentifikasi secara unik instalasi Windows. Pertama, untuk mengklasifikasikan dan mengidentifikasi gambar cadangan dengan benar dan menentukan mana yang dipulihkan pada mesin mana. Kedua, untuk menamai pasangan sinkronisasi untuk menyinkronkan file dan untuk menentukan pasangan sinkronisasi mana yang akan digunakan tergantung pada mesin yang terlibat dalam sinkronisasi.
Setelah membaca beberapa posting, termasuk yang ada di situs web ini, saya menyimpulkan bahwa tidak ada cara mudah untuk menemukan pengidentifikasi unik instalasi Windows secara global. Itu terlalu buruk. Seperti halnya perangkat keras, perangkat lunak juga harus memiliki nomor seri sendiri. Baiklah! Jadi ini solusi saya: Alih-alih menemukan satu pengidentifikasi unik secara global, saya telah membuat pernyataan terilisasi, yang diilhami dari cara Microsoft memberi nama drive jaringan pada Windows dan cara menamai folder bersama di PC Virtual: "[WINDOWS ID PRODUK ( sebagai variabel )] Diinstal di [NOMOR SERI KOMPUTER ( sebagai variabel)]. "Meskipun nomor identifikasi produksi Windows adalah unik hanya sejauh kunci produk yang sesuai, namun, tetap mungkin sama di beberapa instalasi, terutama pada komputer yang diproduksi secara massal yang berisi Windows yang diinstal pabrik, tetapi serial nomor unik dan berbeda dari satu mesin ke mesin yang lain. Rumus yang disebutkan di atas adalah semua yang saya butuhkan untuk keperluan saya; Saya tidak memerlukan SID (Saya kira itu menandakan Pengidentifikasi Keamanan) atau sesuatu yang lebih kompleks, karena kombinasi kedua variabel merujuk tepat instalasi Windows yang perlu saya identifikasi, sedangkan masing-masing variabel individu, dengan sendirinya, tidak ada gunanya bagi saya. Khusus dan pertama, identifikasi produk Windows identik pada komputer yang dibuat oleh pabrikan yang sama dan ditemukan pada lini produk yang sama dan itu tidak berguna bagi saya, karena saya memiliki beberapa mesin yang identik. Kedua, nomor seri tidak cukup mengidentifikasi secara unik, karena saya memiliki beberapa instalasi Windows di satu komputer yang nomor seri komputer tidak alamat. Karena itu saya menyarankan metode saya.
Juga, dan sebelum Anda menanyakannya: Saya memilih untuk tidak mendasarkan metode saya pada nama komputer. Informasi ini berbasis pengguna dan oleh karena itu perlu diinventarisasi. Namun, identifikasi produk Windows dan nomor seri komputer sudah diidentifikasi, diinventarisasi dan selalu terhubung ke dua produk tertentu, sehingga menghilangkan kebutuhan untuk menginventarisasinya lagi. Saya tidak akan memilih untuk mengidentifikasi instalasi Windows dengan pengidentifikasi unik dari hard drive, karena saya mampu dan cukup cenderung untuk beralih dari satu mesin ke yang lain, terutama ketika kapasitas drive dalam keadaan fluks konstan. Dengan cara yang sama, saya akan jauh lebih sedikit menggunakan nomenklatur pengidentifikasi dari unit pemrosesan pusat atau motherboard, seperti yang sebelumnya disarankan dalam balasan sebelumnya oleh Shoeless. Akhirnya, saya juga menolak opsi yang paling jelas untuk mengidentifikasi instalasi Windows (meskipun belum disebutkan oleh orang lain dari apa yang saya lihat): menggunakan kunci produk. Meskipun unik, itu hanya lisensi untuk menginstal versi Windows tertentu; itu sebenarnya tidak terhubung ke instalasi Windows tertentu dan tidak membedakannya sebagai diinstal pada mesin tertentu, meskipun lisensi diberikan berdasarkan pembelian komputer yang diberikan.
sumber