Accueil > > > DÉCODEUR DE L'HISTORIQUE "CACHÉ" DE WINDOWS 2000/XP
DÉCODEUR DE L'HISTORIQUE "CACHÉ" DE WINDOWS 2000/XP
Information sur la source
Description
Je suis tombé par hasard sur une partie du registre qui paraissait bizzare et j'ai essayé de comprendre a quoi elle servait... Après avoir fait quelques tests, j'ai vu qu'il s'agissait d'un mini historique interne a Windows qui Microsoft avait "un peu" codé ! Voila donc le code du programme qui va lire le registre et qui récupère puis affiche ce qu'il a trouvé !!! Au passage, j'ai essayé de me forcer a commenter mon code mais c'est pas facile ;-)
Source
- Private Sub Form_Load()
- 'On définit le caract " et on le réécrit encore une fois pour être sympa envers le parser de colorisation du code du gentil Nix --> "
- g = Chr(34)
-
- 'On récupére le contenu du registre
- file = "registry.dat"
- Shell "regedit /S /E " + file + " " + g + "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist" + g, vbHide
-
- 'Gestion d'erreur
- On Error GoTo Err
- 'On lit le fichier et on l'analyse
- Dim l As String
- Open file For Input As #1
- While Not EOF(1)
- Line Input #1, l
- If Mid(l, 1, 6) = g + "HRZR_" Then 'Ligne codée
- list.AddItem Decode(l, 13)
- End If
- If Mid(l, 1, 6) = g + "UEME_" Then 'Ligne décodée
- list.AddItem Decode(l, 0)
- End If
- Wend
- 'On ferme le fichier et on le détruit
- Close #1
- Kill file
- Exit Sub
-
- Err:
- 'On détruit le fichier et on affiche l'erreur
- Kill file
- MsgBox Err.Description, vbCritical, "Erreur n°" + Str(Err.Number)
- End
- End Sub
-
- Public Function Decode(t As String, d As Integer) As String
- Dim c As String, a As Integer, r As String
- 'On définit les valeurs ascii pour plus tard
- ami = Asc("a")
- ama = Asc("A")
- zmi = Asc("z")
- zma = Asc("Z")
- 'On définit aussi la valeur a retrancher pour plus tard
- azmi = zmi - ami + 1
- azma = zma - ama + 1
- 'On boucle...
- For i = 2 To Len(t)
- c = Mid(t, i, 1)
- a = Asc(c)
- If a = 34 Then 'On a trouvé un ", fin...
- Decode = r
- Exit Function
- ElseIf a >= ami And a <= zmi Then 'Lettre en minuscule...
- a = a + d
- If a > zmi Then a = a - azmi
- c = Chr(a)
- ElseIf a >= ama And a <= zma Then 'Lettre en majuscule...
- a = a + d
- If a > zma Then a = a - azma
- c = Chr(a)
- End If
- r = r + c 'On ajoute le caractère décodé
- Next i
- Decode = r
- End Function
Private Sub Form_Load()
'On définit le caract " et on le réécrit encore une fois pour être sympa envers le parser de colorisation du code du gentil Nix --> "
g = Chr(34)
'On récupére le contenu du registre
file = "registry.dat"
Shell "regedit /S /E " + file + " " + g + "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist" + g, vbHide
'Gestion d'erreur
On Error GoTo Err
'On lit le fichier et on l'analyse
Dim l As String
Open file For Input As #1
While Not EOF(1)
Line Input #1, l
If Mid(l, 1, 6) = g + "HRZR_" Then 'Ligne codée
list.AddItem Decode(l, 13)
End If
If Mid(l, 1, 6) = g + "UEME_" Then 'Ligne décodée
list.AddItem Decode(l, 0)
End If
Wend
'On ferme le fichier et on le détruit
Close #1
Kill file
Exit Sub
Err:
'On détruit le fichier et on affiche l'erreur
Kill file
MsgBox Err.Description, vbCritical, "Erreur n°" + Str(Err.Number)
End
End Sub
Public Function Decode(t As String, d As Integer) As String
Dim c As String, a As Integer, r As String
'On définit les valeurs ascii pour plus tard
ami = Asc("a")
ama = Asc("A")
zmi = Asc("z")
zma = Asc("Z")
'On définit aussi la valeur a retrancher pour plus tard
azmi = zmi - ami + 1
azma = zma - ama + 1
'On boucle...
For i = 2 To Len(t)
c = Mid(t, i, 1)
a = Asc(c)
If a = 34 Then 'On a trouvé un ", fin...
Decode = r
Exit Function
ElseIf a >= ami And a <= zmi Then 'Lettre en minuscule...
a = a + d
If a > zmi Then a = a - azmi
c = Chr(a)
ElseIf a >= ama And a <= zma Then 'Lettre en majuscule...
a = a + d
If a > zma Then a = a - azma
c = Chr(a)
End If
r = r + c 'On ajoute le caractère décodé
Next i
Decode = r
End Function
Conclusion
Pour ceux que ca intéresse, le mini-historique codé et spécifique a chaque utilisateur se trouve dans "HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr entVersion\Explorer\UserAssist" ! On peut aussi passer pas HKEY_USERS pour les autres utilisateurs...
Historique
- 26 août 2005 20:26:49 :
- >on le réécrit encore une fois pour être sympa envers le parser de colorisation du code du gentil Nix --> "
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
VB6 SP5 et Windows XP [ par krazitchek ]
Bonjour, lorsque j'insére un optionbutton dans un frame dans un projet vb6sp5 sous windows XP, le fond de l'option est noir sans possibilité de change
DirectX + Windows XP = ??? [ par Xentor ]
J'ai un problème au niveau de la transparence sous XP avec DirectX : rien ne transparait ! Aidez-moi !!! :)
Interface Windows XP ? [ par Arnotic ]
Bonjour, Je voudrai bien savoir comment on peut intégrer à notre logiciel l'interface de Windows XP et non pas l'ancienne (par défaut). En vous re
PB install sur xindows xp [ par looping ]
Bonjour !J'ai fais un prog qui tourne bien sous windows 98SE mais sous windows XP au lancement du prog un message indique « erreur 50002 manque de mém
Ocx pour controles windows XP [ par patcui ]
Je cherche un controle pour faire des controles windows xpMerci,
arret de windows xp [ par PBDLpc13 ]
bonjour, je voudrais savoir comment faire pour arreter mon pc sachant qu'il fonctionne sous win xp.je cherche depuis 3 semaines et je trouve pas alors
passage de win98 à win XP [ par bbs ]
j' ai installe windows XP professionnellors de l 'execution du source fonctionnant sous windows 98 , le message suivant est apparu:<< bibliotheq
HELP WINDOWS XP !! [ par rvbenoit ]
J'ai réalisé un logiciel de Tarot en VB5 qui marche très bien sous win95/98.(voir mon site: http://perso.libertysurf.fr/rvbenoit)Des utilisateurs m'on
User actif ds windows xp... [ par Pof ]
j'aimerais savoir comment faire pour faire une fonction que quand je l'appelle, elle me retourne le nom de l'user actif... en fait, ds windows xp, on
Arrêt Windows XP [ par Stru ]
Salut,Quelle est la ligne de code pour arrêter un système sous windows XP ? Merci.A+,Stru.
|
Derniers Blogs
ASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHEASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHE par fathi
Tout le monde est unanime pour dire que la programmation multi-thread et asynchrone est en train de devenir un sujet incontournable. Beaucoup de choses sont arrivées avec le framework 4 pour le code parallèle (TPL, PLinq,.) et bientôt, on va avoir l...
Cliquez pour lire la suite de l'article par fathi PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS !PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS ! par Etienne Margraff
J'ai récemment eu un problème pour obtenir l'intelliTrace sur un site web dans IIS. Il n'y avait pas de message d'erreur, rien dans le journal d'évènement Windows, et après 3 appels à une voyante, 2 visites chez un marabou, j'ai failli me résign...
Cliquez pour lire la suite de l'article par Etienne Margraff OFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONSOFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONS par junarnoalg
De nombreuses entreprises font le choix de SharePoint Online, service fourni au travers de l'offre de Microsoft Office 365. S'il est vrai que ce choix apporte un grand nombre d'avantages; rapidité de mise en œuvre, disponibilité, large couvertu...
Cliquez pour lire la suite de l'article par junarnoalg PRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGEPRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGE par richardc
http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage
Désolé pour "toto", mais c2i existait avant blogs.developpeur.org et c'est mon site "officiel" ;-) ...
Cliquez pour lire la suite de l'article par richardc
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|