前端如何获取cpu序列号

项目背景技术:vue + electron

方法:1.新建一个preload.js

const childProcess = require('child_process');

module.exports = {
  getCPUSerialNumber() {
      let res = ""
      try {
      let cmd = `wmic CPU get ProcessorID`;    //cmd里获取cpu序列号的指令
      res = childProcess.execSync(cmd);    //输出指令返回
    }catch (e){
      res = childProcess.execSync(cmd);
      console.error("获取CPU序列号错误!")
    }
    return res.toString().split('\n');  
  },
}

2.vue.config.js里配置预加载preload.js

module.exports = {
  pluginOptions: {
    electronBuilder: {
       preload: { preload: 'src/preload.js',},
    }
  }
}

3.添加global.d.ts(备注:使用ts时需要,否则可忽略次步骤)

type CallbackFunctionVariadicAnyReturn = (...args: any[]) => any;

declare global {
    interface Window {
          getCPUSerialNumber: CallbackFunctionVariadicAnyReturn
    }
}

4.使用

const CPUSerialNumber = window?.getCPUSerialNumber()?.[1]?.trim()

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
获取前端cpu序列号,可以通过使用JavaScript编写程序来实现。以下是一种可能的方法: 1. 首先,使用navigator对象的硬件信息属性来判断是否支持硬件信息获取。 ```javascript if (navigator.hardwareConcurrency) { // 支持硬件信息获取 // 继续下一步 } else { // 不支持硬件信息获取 // 返回相应提示或采取其他措施 } ``` 2. 接下来,使用Web Workers来创建一个后台线程来获取硬件信息。Web Workers可以在后台运行脚本,而不会影响前端UI的性能。 ```javascript function getHardwareInfo() { return new Promise((resolve, reject) => { const worker = new Worker('hardwareInfoWorker.js'); worker.onmessage = function(event) { resolve(event.data); worker.terminate(); } worker.onerror = function(error) { reject(error); worker.terminate(); } }); } ``` 3. 编写一个名为'hardwareInfoWorker.js'的后台脚本文件来获取硬件信息。在这个脚本中,可以使用Performance API的getEntriesByType方法来获取特定类型的性能统计信息。 ```javascript self.onmessage = function() { const entries = performance.getEntriesByType('navigation'); const firstEntry = entries[0]; const cpuSequenceNumber = firstEntry.workerStart; self.postMessage(cpuSequenceNumber); } ``` 4. 在前端代码中调用getHardwareInfo函数来获取cpu序列号。 ```javascript getHardwareInfo() .then(cpuSequenceNumber => { console.log('CPU序列号:', cpuSequenceNumber); }) .catch(error => { console.error('获取CPU序列号时出错:', error); }); ``` 请注意,以上方法只能在支持硬件信息获取的浏览器中使用,并且得到的cpu序列号可能因浏览器的实现而有所区别。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值