2016-04-07 1 views
0

La première partie est le nom de l'application exe dans Unicode à terminaison nulle, ce qui est assez facile. Passé cela, chaque niveau du chemin est inclus, d'abord en non-Unicode, puis en Unicode (à l'exception du chemin root/drive, qui est juste non-Unicode), mais séparé par des structures de données inconnues.Quel est le format interne des clés de registre binaires sous LastVisitedPidlMRU et LastVisitedPidlMRULegacy?

Mon problème sous-jacent est que le bouton d'exportation de l'interface utilisateur du contrôle .Net Reportviewer appelle le dialogue commun, mais le contrôle n'expose aucun moyen de définir le dossier initial. Je souhaite lire/écrire de manière fiable ces clés pour gérer le comportement d'ouverture/de sauvegarde par défaut.

Exemple registre vidage clé (app est notepad.exe, le chemin est "C: \ Stuff \ DLTemp \ HattoriHanzo"):

"10" = hex: 6E, 00,6f, 00,74 , 00,65,00,70,00,61,00,64,00,2e, 00,65,00,78,00,65,00,00, \ 00,14,00,1f, 50, e0 , 4f, d0,20, ea, 3a, 69,10, a2, d8,08,00,2b, 30,30,9d, 19,00,2f, 43, \ 3a, 5c, 00,00,00 , 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,4c, 00,31,00, \ 00,00,00,00 , 87,48, c0,8a, 10,00,53,74,75,66,66,00,38,00,08,00,04,00, ef, be, 7b, \ 44,5a, 69 , 87,48, c0,8a, 2a, 00,00,00,1f, d8,01,00,00,00, ca, 04,00,00,00,00,00,00, \ 00,00 , 00,00,00,00,00,00,53,00,74,00,75,00,66,00,66,00,00,00,14, 00,50,00,31, \ 00,00,00,00,00,87,48, b1,95,10,00,44,4c, 54,65,6d, 70,00,00,3a, 00,08,00,04,00, \ ef, être, 1c, 45,60,7e, 87,48, b1,95,2a, 00,00,00,61,5b, 02,00,00, 00,62,00,00,00,00, \ 00,00,00,00,00,00,00,00,00,00,00,00,44,00,4c, 00,54,00,65, 00,6d, 00,70,00,00,00, \ 16,00,5e, 00,31,00,00,00,00,00,87,48, ca, 9a, 10,00,48, 41,54,54,4f, 52,7e, 31,00, \ 00,46,00,08,00,04,00, ef, soit, 87,48, ab, 90,87,48, ca, 9a, 2a, 00,00,00, e3, e3,04,00, \ 00,00,0e, 00,00,00,00,00,00,00,00,00,00,00,00, 00,00,00,48,00,61,00,74,00,74, \ 00,6f, 00,72,00,69,00,48,00,61,00,6e, 00,7a, 00,6f, 00,00,00,18,00,00,00

+0

Déblayage à peu près comme ceci [n'est pas supporté] (https://blogs.msdn.microsoft.com/oldnewthing/20160308-00/?p=93123). –

+0

Donc, j'avais présumé, en raison du manque de documentation. Briller la lumière dans les coins les plus sombres des internes de Windows est une tradition étagée, néanmoins. – Pastymage

Répondre