Je cherche une solution pour r=E9duire le risque de copie=20
illicite d'un fichier excel. Pour ce faire, j'ai pens=E9 =E0=20
ex=E9cuter un calcul =E0 partir du num=E9ro de s=E9rie de=20
l'ordinateur.
En somme, je veux ins=E9rer un num=E9ro d'identification=20
unique dans une cellule du chiffrier Excel.
Avez-vous une solution?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Daniel.j
Une solution en recuperant le numero de serie du disque dur: ================ 'Comment récupérer le numéro de série d'un disque dur ? 'Il faut employer l'API GetVolumeInformation qui permet de retourner, 'entre autres, le numéro de série d'un disque dur :
Option Explicit
Private 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
Private Const MAX_PATH = 260
Sub NumSerie()
Dim strRacine As String, strVolumeName As String, strFileSystemName As String Dim lSerialNumber As Long, lpMaximumComponentLength As Long, lFileSystemFlag As Long
' Appel de l'API If GetVolumeInformation(strRacine, strVolumeName, MAX_PATH, lSerialNumber, lpMaximumComponentLength, lFileSystemFlag, strFileSystemName, MAX_PATH) Then strVolumeName = Left$(strVolumeName, InStr(strVolumeName, Chr$(0)) - 1) strFileSystemName = Left$(strFileSystemName, InStr(strFileSystemName, Chr$(0)) - 1)
MsgBox "Chemin du volume : " & strRacine MsgBox "Nom du volume : " & strVolumeName MsgBox "Numéro de série : " & lSerialNumber MsgBox "Longueur maximale d'un composant d'un nom de fichier : " & lpMaximumComponentLength MsgBox "System flags : " & lFileSystemFlag MsgBox "Nom du système de fichier : " & strFileSystemName Else MsgBox "Une erreur s'est produite !", vbExclamation End If
End Sub ================================= Daniel FAQ du Forum Microsoft Public Fr Excel http://dj.joss.free.fr/faq.htm
"Alain Ouellet" a écrit dans le message de news: 1ac501c3e099$e05f35a0$ Je cherche une solution pour réduire le risque de copie illicite d'un fichier excel. Pour ce faire, j'ai pensé à exécuter un calcul à partir du numéro de série de l'ordinateur.
En somme, je veux insérer un numéro d'identification unique dans une cellule du chiffrier Excel. Avez-vous une solution?
Je vous remercie pour votre collaboration.
Une solution en recuperant le numero de serie du disque dur:
================ 'Comment récupérer le numéro de série d'un disque dur ?
'Il faut employer l'API GetVolumeInformation qui permet de retourner,
'entre autres, le numéro de série d'un disque dur :
Option Explicit
Private 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
Private Const MAX_PATH = 260
Sub NumSerie()
Dim strRacine As String, strVolumeName As String, strFileSystemName As String
Dim lSerialNumber As Long, lpMaximumComponentLength As Long, lFileSystemFlag As Long
' Appel de l'API
If GetVolumeInformation(strRacine, strVolumeName, MAX_PATH, lSerialNumber,
lpMaximumComponentLength, lFileSystemFlag, strFileSystemName, MAX_PATH) Then
strVolumeName = Left$(strVolumeName, InStr(strVolumeName, Chr$(0)) - 1)
strFileSystemName = Left$(strFileSystemName, InStr(strFileSystemName, Chr$(0)) - 1)
MsgBox "Chemin du volume : " & strRacine
MsgBox "Nom du volume : " & strVolumeName
MsgBox "Numéro de série : " & lSerialNumber
MsgBox "Longueur maximale d'un composant d'un nom de fichier : " & lpMaximumComponentLength
MsgBox "System flags : " & lFileSystemFlag
MsgBox "Nom du système de fichier : " & strFileSystemName
Else
MsgBox "Une erreur s'est produite !", vbExclamation
End If
End Sub
=================================
Daniel
FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm
"Alain Ouellet" <anonymous@discussions.microsoft.com> a écrit dans le message de news:
1ac501c3e099$e05f35a0$a301280a@phx.gbl...
Je cherche une solution pour réduire le risque de copie
illicite d'un fichier excel. Pour ce faire, j'ai pensé à
exécuter un calcul à partir du numéro de série de
l'ordinateur.
En somme, je veux insérer un numéro d'identification
unique dans une cellule du chiffrier Excel.
Avez-vous une solution?
Une solution en recuperant le numero de serie du disque dur: ================ 'Comment récupérer le numéro de série d'un disque dur ? 'Il faut employer l'API GetVolumeInformation qui permet de retourner, 'entre autres, le numéro de série d'un disque dur :
Option Explicit
Private 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
Private Const MAX_PATH = 260
Sub NumSerie()
Dim strRacine As String, strVolumeName As String, strFileSystemName As String Dim lSerialNumber As Long, lpMaximumComponentLength As Long, lFileSystemFlag As Long
' Appel de l'API If GetVolumeInformation(strRacine, strVolumeName, MAX_PATH, lSerialNumber, lpMaximumComponentLength, lFileSystemFlag, strFileSystemName, MAX_PATH) Then strVolumeName = Left$(strVolumeName, InStr(strVolumeName, Chr$(0)) - 1) strFileSystemName = Left$(strFileSystemName, InStr(strFileSystemName, Chr$(0)) - 1)
MsgBox "Chemin du volume : " & strRacine MsgBox "Nom du volume : " & strVolumeName MsgBox "Numéro de série : " & lSerialNumber MsgBox "Longueur maximale d'un composant d'un nom de fichier : " & lpMaximumComponentLength MsgBox "System flags : " & lFileSystemFlag MsgBox "Nom du système de fichier : " & strFileSystemName Else MsgBox "Une erreur s'est produite !", vbExclamation End If
End Sub ================================= Daniel FAQ du Forum Microsoft Public Fr Excel http://dj.joss.free.fr/faq.htm
"Alain Ouellet" a écrit dans le message de news: 1ac501c3e099$e05f35a0$ Je cherche une solution pour réduire le risque de copie illicite d'un fichier excel. Pour ce faire, j'ai pensé à exécuter un calcul à partir du numéro de série de l'ordinateur.
En somme, je veux insérer un numéro d'identification unique dans une cellule du chiffrier Excel. Avez-vous une solution?