View Single Post
  #8   Report Post  
Posted to microsoft.public.excel.programming
David Hall[_4_] David Hall[_4_] is offline
external usenet poster
 
Posts: 3
Default Computer identification using Excel VB

Bob and Frank

Many thanks, a great help
David
-----Original Message-----
Yeah, I swear you are reading my mind at times.

Bob

"Frank Kabel" wrote in message
...
Hi Bob
lol
seems we have both the same library :-)
AND are posting at the same time!



--
Regards
Frank Kabel
Frankfurt, Germany


Bob Phillips wrote:
David,

A couple of ways

Using FSO

Function DiskVolumeId() As String
Dim FSO As Object

Set FSO = CreateObject

("Scripting.FileSystemObject")
DiskVolumeId = Format(CDbl(FSO.Drives

("C:").SerialNumber))
End Function


Using API

Declare Function GetVolumeInformation Lib "kernel32"

Alias
"GetVolumeInformationA" _
(ByVal lpRootPathName As String, _
ByVal lpVolumeNameBuffer As String, _
ByVal nVolumeNameSize As Long, _
lpVolumeSerialNumber As Long, _
lpMaximumComponentLength As Long, _
lpFileSystemFlags As Long, _
ByVal lpFileSystemNameBuffer As String, _
ByVal nFileSystemNameSize As Long) As Long

Function DriveiD(Drive As String)
Const cMaxPath As Long = 256
Dim nTemp
Dim sTemp As String
Dim nRet As Long
Dim nVolSerial As Long
Dim sVolName As String * cMaxPath
Dim nMaxCompLen As Long
Dim nFileSysFlags As Long
Dim sFileSysName As String * cMaxPath

If Right(Drive, 1) < "\" Then Drive = Drive & "\"
nRet = GetVolumeInformation(Drive, sVolName,

cMaxPath, _
nTemp, nMaxCompLen,

nFileSysFlags, _
sFileSysName,

cMaxPath)
sTemp = Format(Hex(nTemp), "00000000")
sTemp = Left(sTemp, 4) & "-" & Right(sTemp, 4)

DriveiD = sTemp
End Function


"Dvid Hall" wrote in

message
...
Hi

I would like to setup a macro within Excel that

checks
which computer is using a particular Excel Doc.

I know of the Excel VBA command:

Application.UserName and
the more complex VB codes to recall the NT network

name
and computer name.
However these could be changed relatively easily for

stand
alone computers.

Is there a command that gets the computer's "Hard

Disc
Serial Number" or any other unique reference number

that
identifies the particular computer ?

I use Excel 2003, and I am trying to find a way of
limiting the use of a particular Excel Doc to certain
users.

Many thanks for your input and comments

David Hall



.