馬上註冊  |  找回密碼

SAY討論區

查看: 341|回復: 0
打印 上一主題 下一主題

獲取CPU ID序列號代碼(C) 獲取CPU ID序列號代碼(C) [複製鏈接]

好友
0
帖子
124731
積分
124889
最後登錄
2019-2-28
在線時間
0 小時
跳轉到指定樓層
樓主
發表於 2012-5-12 02:14:15 |只看該作者 |倒序瀏覽
可以用於软件注册保护。呵呵。

<table cellspacing="0" class="t_table" style="width:98%"><tr><td>
復制代码 <ul type="1"><li>#include &lt;stdio.h<li>#include &lt;conio.h<li>int main(int argc,char **argv)<li>{<li>unsigned long s1,s2;<li>unsigned char vendor_id[]=------------;<li>char sel;<li>printf(Select the function:\n1-------Read CPU id.\n2-------Disable CPU id.\n);<li>sel=getch();<li>switch(sel)<li>{<li>case '1':<li>__asm{<li>xor eax,eax<li>cpuid<li>mov dword ptr vendor_id,ebx<li>mov dword ptr vendor_id[+4],edx<li>mov dword ptr vendor_id[+8],ecx<li>}<li>printf(%s-,vendor_id);<li>__asm{<li>mov eax,01h<li>xor edx,edx<li>cpuid<li>mov s1,edx<li>mov s2,eax<li>}<li>printf(%08X\n%08X-,s1,s2);<li>__asm{<li>mov eax,03h<li>xor ecx,ecx<li>xor edx,edx<li>cpuid<li>mov s1,edx<li>mov s2,ecx<li>}<li>printf(%08X-%08X\n,s1,s2);<li>break;<li>case '2':<li>{<li>__asm{<li>mov ecx,119h<li>rdmsr<li>or eax,00200000h<li>wrmsr<li>}<li>}<li>printf(CPU id is disabled.\n);<li>break;<li>}<li>return 0;<li>}</ul>
</td></tr></table>
分享分享0 收藏收藏0 讚好讚好0 Unlike!Unlike!0 分享 傳送 邀請
您需要登錄後才可以回帖 登錄 | 馬上註冊 |

Archiver|手機版|SAY討論區

GMT+8, 2026-5-27 03:35 , Processed in 0.638496 second(s), 8 queries .

Powered by go2tutor.comDiscuz! X2

© 2026 Community Networks Limited

回頂部