Bonjour
Comme je l'indiquais dans un autre message, je suis en train d'"obfusquer" mon code pour éviter son "piratage".
Pour compléter le tout, je souhaite mettre en place une protection contre la recopie par le biais notamment de l'utilisation de la "mac address" du poste de travail.
Pour compliquer la tache de mes éventuels pirates () et puisque l'obfuscation ne fait pas tout, je voudrais remplacer certains termes "évidents" par des chaînes de caractères définies ailleurs.
Je m'explique sur un exemple avec une fonction telle que celle-ci :
Pour éviter que "objAdptr.MACAddress" ne se voie comme le nez au milieu de la figure, je voudrais (je simplifie) définir plusieurs constantes (a="objad": b="ptr.MACAd":c="dress") définies "ailleurs" et écrire quelque chose du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Function MacAdressCourante() Dim objVMI As Object Dim vAdptr As Variant Dim objAdptr As Object Set objVMI = GetObject("winmgmts:\\" & "." & "\root\cimv2") Set vAdptr = objVMI.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True") For Each objAdptr In vAdptr If objAdptr.MACAddress <> "" Then MacAdressCourante = objAdptr.MACAddress Exit For End If Next objAdptr End Function
MacAdressCourante=Evaluate(a&b&c)
mais ça ne marche pas, pas plus d'ailleurs que MacAdressCourante=Evaluate("objAdptr.MACAddress")... J'obtiens une erreur 2029.
Pouvez-vous m'aider, s'il vous plait ? Est-ce simplement Evaluate qui ne marche pas comme je le crois ?
Merci d'avance
Gilbert
Partager