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
相关推荐
-
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
-
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相关内容感兴
-
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
-
.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
-
C#获得MAC地址(网卡序列号)的实现代码
代码如下: 复制代码 代码如下: //获得网卡序列号 public string GetMoAddress() { string MoAddress = " "; ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection moc2 = mc.GetInstanc
-
C#实现读取指定盘符硬盘序列号的方法
本文实例讲述了C#实现读取指定盘符硬盘序列号的方法.分享给大家供大家参考,具体如下: using System; using System.IO; using System.Runtime.InteropServices; using System.Text; using Microsoft.Win32; namespace Wjb.ReadOrWriteIniAndReg { /**/////// 读取指定盘符的硬盘序列号 /// public class HardDiskVal { [Dll
-
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
-
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
-
安装完成后如何找回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
-
C#获取U盘序列号的方法
本文实例讲述了C#获取U盘序列号的方法.分享给大家供大家参考.具体如下: using System.Management; private List<string> _serialNumber = new List<string>(); /// <summary> /// 调用这个函数将本机所有U盘序列号存储到_serialNumber中 /// </summary> private void matchDriveLetterWithSerial() { s
随机推荐
- 详解在Spring MVC中使用注解的方式校验RequestParams
- 如何远程读取数据库页面?
- Android拍照得到全尺寸图片并进行压缩
- java IO实现电脑搜索、删除功能的实例
- ASP.NET页面按钮单击事件失效的解决方法
- JavaScript中的toLocaleDateString()方法使用简介
- Android使用MobSDK短信验证
- nodejs的require模块(文件模块/核心模块)及路径介绍
- linux下修改MAC地址问题解决方法
- c++统计文件中字符个数代码汇总
- C#设置自定义文件图标实现双击启动(修改注册表)
- JQuery 表单中textarea字数限制实现代码
- 基于jQuery实现动态数字展示效果
- 基于javascript实现右下角浮动广告效果
- AndroidStudio安全管理签名文件keystroe和签名密码(星空武哥)
- 探讨:android项目开发 统筹兼顾 需要考虑的因素
- 基于Spring开发之自定义标签及其解析
- C语言中传值与传指针的介绍与区别
- elementUI vue this.$confirm 和el-dialog 弹出框 移动 示例demo
- 详解BootStrap表单验证中重置BootStrap-select验证提示不清除的坑
