ขอนอกเรื่องเกี่ยว VB หน่อยนะครับ
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 195   3
URL.หัวข้อ / URL
ขอนอกเรื่องเกี่ยว VB หน่อยนะครับ

คืองี้ครับผมได้ดูโค๊ตที่ให้มาเกี่ยวกะ การดู Serieal Number ของ HDD แล้วแต่ใช้ไม่ได้นะครับ
คือผมอยากจะใช้จริงครับ แล้วอีกอย่าง อยากได้โค๊ตและการอธิบายด้วยอะครับ รบกวนอย่างแรงครับ
อ้อ อีกอย่างนะครับ คือ S/N ของ HDD เขาจะเป็นเลขฐาน 16 แล้วเราจะต้องใช้ในการคำนวน มีคำสั่งแปลงเป็นฐาน 10 ด้วยก็ดีนะครับ ขอบคุณมากๆ ครับผม คอนเซปที่ต้องการก็ตามที่บอกมาครับ
ส่วนรูปร่างก็คือ มี Text1 เป็นตัวแสดงค่า S/N HDD มีปุ่ม OK พอกดก็ให้โชว์ที่ TEXT1 อะครับ

......................ขอขอบคุณมานะที่นี้เลยนะครับผม ขอบคุณหลายๆ เด้อครับ

3 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R04165
ผมได้ส่งโค๊ดไว้ในกระทู้แล้วนี่นา หรือคุณใช้ฟังก์ชั่นไม่เป็น?
ผมลองใช้ใน vb หรือ access ก็ใช้ได้ไม่มีปัญหา

ให้คุณสร้าง module ใหม่ขึ้นมา เอาโค๊ดนี้ไปวาง แล้วเซฟชื่ออะไรก็ได้

Public Declare Function GetVolumeInformation& Lib "kernel32" _
Alias "GetVolumeInformationA" (ByVal lpRootPathName _
As String, ByVal pVolumeNameBuffer As String, ByVal _
nVolumeNameSize As Long, lpVolumeSerialNumber As Long, _
lpMaximumComponentLength As Long, lpFileSystemFlags As _
Long, ByVal lpFileSystemNameBuffer As String, ByVal _
nFileSystemNameSize As Long)

Public Const MAX_FILENAME_LEN = 256


Public Function GetDriveSerialNumber(Drive As String) As String
'ตรวจสอบ Harddisk Serial ID
Dim No&, s As String * MAX_FILENAME_LEN
Call GetVolumeInformation(Drive + ":\", s, MAX_FILENAME_LEN, _
No, 0&, 0&, s, MAX_FILENAME_LEN)
GetDriveSerialNumber = Mid(Hex(No), 1, 4) & "-" & Mid(Hex(No), 5, 4)
End Function


ที่ฟอร์ม สร้างเท๊กซบ๊อกมา แล้วเขียนโค๊ดตามนี้

text1.text = GetDriveSerialNumber("C:")

มันจะคืนค่าซีเรี่ยลของไดรฟ์ซี กลับมาเป็น string


เรื่องการแปลงเลขฐาน10 ผมว่าคุณน่าจะเขียนฟังก์ชั่นแปลงได้นี่นา ไม่น่ายาก
2 @R04170
ผมเอาไปรองกะ VB แล้วไอ้ตรงโมดูลอะครับ จะไปวางจรงไหนของ VB รบกวนแนะนำทีครับ
3 @R04171
มัน Error บรรทัดนี้ครับ Public Const MAX_FILENAME_LEN = 256
แล้วอีกอันที่สงสัย text1.text = GetDriveSerialNumber("C:")
ไม่ทราบว่าตรง C: ต้องเป็น C:\ หรือป่าวครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.0417s