|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
sheuok
註冊時間: 2004-11-20 文章: 63 來自: Taiwan
第 1 樓
|
發表於: 星期二 九月 18, 2007 10:55 am 文章主題: 利用WMI取得本機或區域網路內電腦的網卡卡號、CPUID、硬碟序號 |
|
|
利用WMI取得本機或區域網路內電腦的網卡卡號、CPUID、硬碟序號
****
Function uf_硬體序號(ulp_電腦名稱,ulp_使用者,ulp_密碼) &&-未輸入電腦名稱則視為本機
Public pa_硬體序號[3]
Private All Like m_*
m_owmi=Createobject("WbemScripting.SWbemLocator")
If Empty(ulp_電腦名稱)
m_olocal=m_owmi.connectserver(".", "root\cimv2")
Else
m_olocal=m_owmi.connectserver(ulp_電腦名稱,"root\cimv2",ulp_使用者,ulp_密碼)
Endif
m_ohardware=m_olocal.execquery("SELECT * FROM Win32_Processor")
For Each m_object1 In m_ohardware
pa_硬體序號[1]=m_object1.properties_('ProcessorId').Value
pa_硬體序號[1]=Iif(IsNull(pa_硬體序號[1]),"無法取得CPUID",pa_硬體序號[1])
Exit
Endfor
m_ohardware=m_olocal.execquery("SELECT * FROM Win32_NetworkAdapterConfiguration Where IPEnabled=1")
For Each m_object1 In m_ohardware
pa_硬體序號[2]=Strtran(m_object1.properties_('MACAddress').Value,":","-")
pa_硬體序號[2]=Iif(IsNull(pa_硬體序號[2]),"無法取得網卡序號",pa_硬體序號[2])
Exit
Endfor
m_ohardware=m_olocal.execquery("SELECT * FROM Win32_PhysicalMedia")
For Each m_object1 In m_ohardware
pa_硬體序號[3]=m_object1.properties_('SerialNumber').Value
pa_硬體序號[3]=Iif(IsNull(pa_硬體序號[3]),"無法取得硬碟序號",pa_硬體序號[3])
pa_硬體序號[3]=Alltrim(Substr(pa_硬體序號[3],1,40))
Exit
Endfor
* ? 'CPU序號:',pa_硬體序號[1]
* ? '網卡卡號:',pa_硬體序號[2]
* ? '硬碟序號:',pa_硬體序號[3]
Return
ps. WMI: Windows Management Instrumentation |
|
回頂端 |
|
|
oldvbman
註冊時間: 2007-10-19 文章: 13
第 2 樓
|
發表於: 星期五 十月 19, 2007 5:04 pm 文章主題: |
|
|
急需了解VFP,感謝分享 |
|
回頂端 |
|
|
jtcom01
註冊時間: 2005-07-29 文章: 408
第 3 樓
|
發表於: 星期日 十一月 22, 2009 11:12 pm 文章主題: |
|
|
請教 sheuok
將上列程式存成.prg 不能執行..不知那裡出錯.請不吝指教..謝謝.. |
|
回頂端 |
|
|
sheuok
註冊時間: 2004-11-20 文章: 63 來自: Taiwan
第 4 樓
|
發表於: 星期一 十一月 23, 2009 7:57 pm 文章主題: |
|
|
uf_硬體序號()
? 'CPU序號:',pa_硬體序號[1]
? '網卡卡號:',pa_硬體序號[2]
? '硬碟序號:',pa_硬體序號[3]
Function uf_硬體序號(ulp_電腦名稱,ulp_使用者,ulp_密碼) &&-未輸入電腦名稱則視為本機
Public pa_硬體序號[3]
Private All Like m_*
m_owmi=Createobject("WbemScripting.SWbemLocator")
If Empty(ulp_電腦名稱)
m_olocal=m_owmi.connectserver(".", "root\cimv2")
Else
m_olocal=m_owmi.connectserver(ulp_電腦名稱,"root\cimv2",ulp_使用者,ulp_密碼)
Endif
m_ohardware=m_olocal.execquery("SELECT * FROM Win32_Processor")
For Each m_object1 In m_ohardware
pa_硬體序號[1]=m_object1.properties_('ProcessorId').Value
pa_硬體序號[1]=Iif(IsNull(pa_硬體序號[1]),"無法取得CPUID",pa_硬體序號[1])
Exit
Endfor
m_ohardware=m_olocal.execquery("SELECT * FROM Win32_NetworkAdapterConfiguration Where IPEnabled=1")
For Each m_object1 In m_ohardware
pa_硬體序號[2]=Strtran(m_object1.properties_('MACAddress').Value,":","-")
pa_硬體序號[2]=Iif(IsNull(pa_硬體序號[2]),"無法取得網卡序號",pa_硬體序號[2])
Exit
Endfor
m_ohardware=m_olocal.execquery("SELECT * FROM Win32_PhysicalMedia")
For Each m_object1 In m_ohardware
pa_硬體序號[3]=m_object1.properties_('SerialNumber').Value
pa_硬體序號[3]=Iif(IsNull(pa_硬體序號[3]),"無法取得硬碟序號",pa_硬體序號[3])
pa_硬體序號[3]=Alltrim(Substr(pa_硬體序號[3],1,40))
Exit
Endfor
Return
*** 請存成 prg 檔後執行 |
|
回頂端 |
|
|
ezpos
註冊時間: 2011-04-20 文章: 323
第 5 樓
|
發表於: 星期二 四月 10, 2018 2:48 pm 文章主題: |
|
|
SELECT * FROM Win32_NetworkAdapterConfiguration 可以列出所有網卡MAC值
停用的話,就沒辦法了 _________________ ezPos收銀機 簡單好用低成本 http://www.ezpos.info
全新美觀的POS收銀機.POS軟硬體耗材.
軟體客制化.網站規劃....能賺錢的都可以找我
http://www.twelife.com 台灣生活網 |
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|