PowerShell中获取Windows系统序列号的脚本分享
windows序列号可以直接在注册表中读取,PowerShell要做的只是读出数据后稍作处理,让它更像一个序列号。
function Get-ProductKey {
$map="BCDFGHJKMPQRTVWXY2346789"
$value = (get-itemproperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").digitalproductid[0x34..0x42]
$ProductKey = ""
for ($i = 24; $i -ge 0; $i--) {
$r = 0
for ($j = 14; $j -ge 0; $j--) {
$r = ($r * 256) -bxor $value[$j]
$value[$j] = [math]::Floor([double]($r/24))
$r = $r % 24
}
$ProductKey = $map[$r] + $ProductKey
if (($i % 5) -eq 0 -and $i -ne 0) {
$ProductKey = "-" + $ProductKey
}
}
$ProductKey
}
输出结果为:
PS> Get-ProductKey
VKTXG-GXXY3-W97QP-GP4PV-XXXXX
相关推荐
-
安装完成后如何找回SQL Server实例安装时的序列号
当需要再次安装SQL Server时,如果序列号找不到了,可以试着从已经安装的实例里找回序列号,因为安装完SQL Server后,序列号(Product Key)被保存在注册表里: MSDN订阅下载的安装包是内置序列号的,则没有这个困扰. 一. 序列号保存在哪 通过无文档记载的扩展存储过程xp_regread读取注册表: --For SQL Server 2008, 2008 R2 use master GO exec xp_regread 'HKEY_LOCAL_MACHINE','SOFTW
-
java生成申请单序列号的实现方法
复制代码 代码如下: import java.text.SimpleDateFormat;import java.util.Date; import org.apache.commons.lang3.StringUtils; /** * 产生流水号工具类 * @version V1.0 * @date: 2013-11-16 下午5:21:37 */ public class SerialNum { private static String count = "000"; privat
-
SQL Server自动生成日期加数字的序列号
USE MASTER GO IF EXISTS(SELECT * FROM dbo.sysdatabases WHERE name='my_test_database') DROP DATABASE [my_test_database] GO CREATE DATABASE [my_test_database] GO USE [my_test_database] GO CREATE TABLE [my_table] ([my_id] VARCHAR(16)) GO --存储过程开始 : CREA
-
mysql简单实现查询结果添加序列号的方法
本文实例讲述了mysql简单实现查询结果添加序列号的方法.分享给大家供大家参考,具体如下: 第一种方法: 复制代码 代码如下: select (@i:=@i+1) as i,table_name.* from table_name,(select @i:=0) as it 第二种方法: set @rownum=0; select @rownum:=@rownum+1 as rownum, t.username from auth_user t limit 1,5; 更多关于MySQL相关内容感兴
-
ORACLE实现自定义序列号生成的方法
实际工作中,难免会遇到序列号生成问题,下面就是一个简单的序列号生成函数 (1)创建自定义序列号配置表如下: --自定义序列 create table S_AUTOCODE ( pk1 VARCHAR2(32) primary key, atype VARCHAR2(20) not null, owner VARCHAR2(10) not null, initcycle CHAR(1) not null, cur_sernum VARCHAR2(50) not null, zero_flg VAR
-
C#实现读取指定盘符硬盘序列号的方法
本文实例讲述了C#实现读取指定盘符硬盘序列号的方法.分享给大家供大家参考,具体如下: using System; using System.IO; using System.Runtime.InteropServices; using System.Text; using Microsoft.Win32; namespace Wjb.ReadOrWriteIniAndReg { /**/////// 读取指定盘符的硬盘序列号 /// public class HardDiskVal { [Dll
-
C#利用win32 Api 修改本地系统时间、获取硬盘序列号
C#利用win32 Api 修改本地系统时间.获取硬盘序列号,可以用于软件注册机制的编写! 复制代码 代码如下: using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; namespace Fengyun { public class Win32 { #region 修改本地系统时间 [DllIm
-
C#获取U盘序列号的方法
本文实例讲述了C#获取U盘序列号的方法.分享给大家供大家参考.具体如下: using System.Management; private List<string> _serialNumber = new List<string>(); /// <summary> /// 调用这个函数将本机所有U盘序列号存储到_serialNumber中 /// </summary> private void matchDriveLetterWithSerial() { s
-
C#获得MAC地址(网卡序列号)的实现代码
代码如下: 复制代码 代码如下: //获得网卡序列号 public string GetMoAddress() { string MoAddress = " "; ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection moc2 = mc.GetInstanc
-
.net获取硬件信息_CPU序列号
复制代码 代码如下: Public Sub getCpuId() Try Dim mc As Management.ManagementClass Dim moc As Management.ManagementObjectCollection Dim mo As Management.ManagementObject mc = New Management.ManagementClass("win32_processor") moc = mc.GetInstances() For E
随机推荐
- ASP超级链接和HTML函数正则表达式 修正版
- python中使用urllib2获取http请求状态码的代码例子
- python出现"IndentationError: unexpected indent"错误解决办法
- asp服务器如何搭建
- C#快速排序算法实例分析
- c#可空类型的作用说明
- javascript自定义滚动条实现代码
- JQuery1.8 判断元素是否绑定事件的方法
- WMI入门教程之WMI中的类在哪里?
- Javascript DOM事件操作小结(监听鼠标点击、释放,悬停、离开等)
- 使用tab做左缩进和右缩进, 你知道么?
- Android基础总结篇之三:Activity的task相关介绍
- Spring Boot整合Elasticsearch实现全文搜索引擎案例解析
- JAVA Frame 窗体背景图片,首位相接滚动代码实例
- Android 登录密码信息进行RSA加密示例
- 基于typedef的用法详解
- 详解正则表达式 \v 元字符
- python函数式编程学习之yield表达式形式详解
- Python3中_(下划线)和__(双下划线)的用途和区别
- JS扁平化输出数组的2种方法解析