hình như không hoạt động được - hay ở partion ẩn nó không hoạt động, thông tin giúp mình nhéCó phải cái này không vậy:
Sub FactoryVolumeSerieHD()
Dim ObjetoWMI As Object
Dim Disco As Object
Dim Discos As Object
Set ObjetoWMI = GetObject("WINMGMTS:")
Set Discos = ObjetoWMI.InstancesOf("Win32_PhysicalMedia")
For Each Disco In Discos
MsgBox "Serie : " & Disco.SerialNumber
Next
End Sub
Nếu phải thì thanks cho tôi một cái.
chibi đã viết:Dùng như bạn phongvanvu thì đọc được serialnumber cử từng ổ (C:, D:...). Nếu dùng ghost từ cùng 1 nguồn thì sẽ đọc số này giống nhau trên 2 đĩa cứng khác nhau.
Tôi muốn đọc "mã số" (tạm dịch) của đĩa cứng.
Hay bạn cũng có thể viết code bình thường nhưng dùng VSTO cho Office. Khi lập trình, nó sẽ tự động tạo file *.Dll mà bạn không cần phải chuyển code và biên dịch như trên.TuanVNUNI đã viết:Nếu chỉ VBA bảo vệ nó thì thực sự là khó khăn. Bạn hãy dùng VB6, chuyển code của bạn sang và đặt trong một class, sau đó biên dịch thành file dll.
Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
------------------------------
Function Get_Computer_Name()
Dim buffer As String * 512, length As Long
length = Len(buffer)
If GetComputerName(buffer, length) Then
'Returns nonzero if successful, and modifies the length argument
Get_Computer_Name = Trim(Left$(buffer, length))
End If
End Function
Mong bạn giải thích thêm, tôi không rõ VSTO là gì ?levanduyet đã viết:Hay bạn cũng có thể viết code bình thường nhưng dùng VSTO cho Office. Khi lập trình, nó sẽ tự động tạo file *.Dll mà bạn không cần phải chuyển code và biên dịch như trên.