Hallo Christian,
ich habe es mir für den Demo-Code leicht gemacht und einfach alle extensions in die ComboBox eingestellt, auch wenn sie gar keine assoziierte OpenWithList besitzen. Sobald du einen Eintrag auswählst, der eine assoziierte OpenWithList aufweist, sollten die Programme im ValueListEditor aufgelistet werden. Wähle doch mal die extensions aus, von denen du sicher weißt, dass sie das Untermenü "Öffnen mit..." mitbringen.
Ehrlich gesagt hatte ich nicht daran gedacht, dass jemand das Programm ohne Ansehen des Codes kompiliert und ausführt. Die wenigen Zeilen Code sollten eigentlich zeigen, wie der Zugriff auf die Liste funktioniert.
Freundliche Grüße
Nachtrag:
Wenn der Eintrag shell\open\command unter
HKCR:\Software\Classes\.pdf fehlt, dann steht stattdessen ein application name dort, der auf \Software\Applications verweist. Dort ist dann der Eintrag shell\open\command zu suchen um den Speicherort der application zu ermitteln. Außerdem lese ich nur beispielhaft im hive
HKCR. Oft stehen zusätzliche Einträge im hive
HKLM.