西部数据硬盘如何查询序列号

西部数据硬盘如何查询序列号,第1张

1、首先,打开百度搜索“西数”关键字,在搜索结果页面中,点击进入西数官网。

2、打开西数官网页面之后,在页面底部找到“保修信息”链接,进入保修网页查询页面。

3、接下来,在打开的页面中,先选择设备的所在地,一般情况下按照网页中的默认选项,不要进行更改。

4、接下来,在网页中输入硬盘序列号,硬盘序列号可以在硬盘表面找到,也可以通过一些软件来查询获取,在输入序列号的时候,如果类似下面的格式:WD-WXXX等,前面的WD-就不要输入了,直接输入后面的字符。

5、输入完毕之后,点击“提交”按钮,就需要等待网页的响应。

6、稍等片刻之后就可以在网页中看到硬盘设备的查询结果,如果网页中正常显示了设备的保修状态,即可判定该设备为真。

1、首先在开始菜单栏中输入cmd。

2、接着点击程序CMD。

3、然后输入diskpart并按下回车键,如下图所示。

4、接下来输入list disk,如下图所示。这样就可以看到我们的磁盘的相关信息了。

5、然后输入select disk 0并按下回车键。

6、最后输入detail disk并按下按下回车键,就可以查看我们磁盘的序列号了。

vc++中获得硬盘的序列号可以参考如下代码:

//MyDiskInfoh头文件

#pragma once

class MyDiskInfo

{

public:

MyDiskInfo(void);

public:

~MyDiskInfo(void);

public:

int GetDiskInfo(int driver=0);

char szModelNumber[64];

char szSerialNumber[64];

};

//MyDiskInfocpp文件

// MyDiskInfocpp: implementation of the CMyDiskInfo class

//

#include "stdafxh"

#include "MyDiskInfoh"

#ifdef _DEBUG

#undef THIS_FILE

static char THIS_FILE[]=__FILE__;

#define new DEBUG_NEW

#endif

const WORD IDE_ATAPI_IDENTIFY = 0xA1; // 读取ATAPI设备的命令

const WORD IDE_ATA_IDENTIFY = 0xEC; // 读取ATA设备的命令

#define _WIN32_WINNT 0x0400

#include "winioctlh"

//#include "NTDDSCSIh"

// Construction/Destruction

MyDiskInfo::MyDiskInfo(void)

{

}

MyDiskInfo::~MyDiskInfo(void)

{

}

BOOL __fastcall DoIdentify( HANDLE hPhysicalDriveIOCTL,

PSENDCMDINPARAMS pSCIP,

PSENDCMDOUTPARAMS pSCOP,

BYTE btIDCmd,

BYTE btDriveNum,

PDWORD pdwBytesReturned)

{

pSCIP->cBufferSize = IDENTIFY_BUFFER_SIZE;

pSCIP->irDriveRegsbFeaturesReg = 0;

pSCIP->irDriveRegsbSectorCountReg = 1;

pSCIP->irDriveRegsbSectorNumberReg = 1;

pSCIP->irDriveRegsbCylLowReg = 0;

pSCIP->irDriveRegsbCylHighReg = 0;

pSCIP->irDriveRegsbDriveHeadReg = (btDriveNum & 1) 0xB0 : 0xA0;

pSCIP->irDriveRegsbCommandReg = btIDCmd;

pSCIP->bDriveNumber = btDriveNum;

pSCIP->cBufferSize = IDENTIFY_BUFFER_SIZE;

return DeviceIoControl( hPhysicalDriveIOCTL,

SMART_RCV_DRIVE_DATA,

(LPVOID)pSCIP,

sizeof(SENDCMDINPARAMS) - 1,

(LPVOID)pSCOP,

sizeof(SENDCMDOUTPARAMS) + IDENTIFY_BUFFER_SIZE - 1,

pdwBytesReturned, NULL);

}

char __fastcall ConvertToString(DWORD dwDiskData[256], int nFirstIndex, int nLastIndex)

{

static char szResBuf[1024];

char ss[256];

int nIndex = 0;

int nPosition = 0;

for(nIndex = nFirstIndex; nIndex <= nLastIndex; nIndex++)

{

ss[nPosition] = (char)(dwDiskData[nIndex] / 256);

nPosition++;

// Get low BYTE for 2nd character

ss[nPosition] = (char)(dwDiskData[nIndex] % 256);

nPosition++;

}

// End the string

ss[nPosition] = '\0';

int i, index=0;

for(i=0; i <nPosition; i++)

{

if(ss[i]==0 || ss[i]==32) continue;

szResBuf[index]=ss[i];

index++;

}

szResBuf[index]=0;

return szResBuf;

}

int MyDiskInfo::GetDiskInfo(int driver)

{

char sFilePath[64]={0};

sprintf(sFilePath,"\\\\\\PHYSICALDRIVE%d",driver);//modify by lonkil 2008-07-13

HANDLE hFile = INVALID_HANDLE_VALUE;

hFile = ::CreateFile(sFilePath,

GENERIC_READ | GENERIC_WRITE,

FILE_SHARE_READ | FILE_SHARE_WRITE,

NULL, OPEN_EXISTING,

0, NULL);

if (hFile == INVALID_HANDLE_VALUE) return -1;

DWORD dwBytesReturned;

GETVERSIONINPARAMS gvopVersionParams;

DeviceIoControl(hFile,

SMART_GET_VERSION,

NULL,

0,

&gvopVersionParams,

sizeof(gvopVersionParams),

&dwBytesReturned, NULL);

if(gvopVersionParamsbIDEDeviceMap <= 0) return -2;

// IDE or ATAPI IDENTIFY cmd

int btIDCmd = 0;

SENDCMDINPARAMS InParams;

int nDrive =0;

btIDCmd = (gvopVersionParamsbIDEDeviceMap >> nDrive & 0x10) IDE_ATAPI_IDENTIFY : IDE_ATA_IDENTIFY;

// 输出参数

BYTE btIDOutCmd[sizeof(SENDCMDOUTPARAMS) + IDENTIFY_BUFFER_SIZE - 1];

if(DoIdentify(hFile,

&InParams,

(PSENDCMDOUTPARAMS)btIDOutCmd,

(BYTE)btIDCmd,

(BYTE)nDrive, &dwBytesReturned) == FALSE) return -3;

::CloseHandle(hFile);

DWORD dwDiskData[256];

USHORT pIDSector; // 对应结构IDSECTOR,见头文件

pIDSector = (USHORT)((SENDCMDOUTPARAMS)btIDOutCmd)->bBuffer;

for(int i=0; i < 256; i++) dwDiskData[i] = pIDSector[i];

// 取系列号

ZeroMemory(szSerialNumber, sizeof(szSerialNumber));

strcpy(szSerialNumber, ConvertToString(dwDiskData, 10, 19));

// 取模型号

ZeroMemory(szModelNumber, sizeof(szModelNumber));

strcpy(szModelNumber, ConvertToString(dwDiskData, 27, 46));

return 0;

}

1开始菜单,运行

2在DOS提示符下输入以下命令: ipconfig /all

3按回车,就可以看到Physical Address,后边的数字编码,这个就是主机的机器码。

硬盘的出厂序列号,拆了主机自己看下了,在硬盘上贴着呢。如果是序列ID号。

1开始菜单,运行

2 在命令行输入diskpart,启动diskpart程序,接着输入list disk,接着输入select disk 0 ,接着输入detail disk,

1、第一步在的电脑上按win+R键打开运行,输入cmd,点击确定,进去命令提示符。

2、第二步进去之后,在命令提示符输入diskpart命令,按回车键进行启动diskpart程序。

3、第三步输入list disk命令,按回车键查看电脑所有的磁盘信息,一般电脑上都只有一个磁盘,其它盘都是通过这个分区而来的。

4、第四步输入select disk 0命令,按回车键进行选中磁盘0。

5、第五步输入detail disk命令,按回车键,会显示硬盘所有的信息,其中硬盘ID号就是需要查看的硬盘序列号。

6、第六步如果想退出diskpart程序,输入exit命令就可以。

以上就是关于西部数据硬盘如何查询序列号全部的内容,包括:西部数据硬盘如何查询序列号、电脑怎么查询硬盘序列号、怎样在vc++中获得硬盘的序列号等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9316285.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存