U bre, chivitli, pa ti rece da ti je malo c++ koda dovoljno ?

Nekim ljudima je parce koda sasvim dovoljno kao hint gde da traze dalje info, ali ocigledno da to ovde ili nije slucaj ili nije bilo ocigledno
Elem, kao prvo, nismo se razumeli, tj. ovo nije ono sto si ti trazio. Ovaj primer pokazuje kako da iz svog programa registrujes svoju vrstu fajla, dokumenta. Dakle, ti meniji iz explorera kao shella nisu fixni, nego se menjaju prema kontekstu, dakle, zavisi na sta si "desnokliknuo". Dakle, ovaj primer gore pokazuje parce koda kako da uz svoju aplikaciju PrdEditor registrujes svoj *.prd format fajla, tako da kad god kliknes na *.prd u exploreru (ili shellu) se otvori tvoj program i u njemu dokument. Ono '// ...' znaci da ima nesto koda pre odnosno posle ovog dela koda - fala Bogu da kao takav, ovaj isecak ne radi nesto smisleno sam. Za taj deo, generalno, treba da se registruje com objekt sa svojim CSLID-jem kao default viewer za dotican tip podataka, da klasa bude registrovana u HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers (i u istoj grani sa HKEY_LOCAL_MACHINE keyem kao rootom), itd. Dakle, posto nije samo prosto upisivanje u registri, najbolje je da se korise win API funkcije koje ce to obaviti (AddDocTemplate, EnableShellOpen, RegisterShellFileTypes, itd).
Ako hoces da dodajes viewere u shell context meni, treba ti funkcija CShellExt::QueryContextMenu, tako da sada imas hint gde da trazis, a za ono sto ti konkretno treba ... zasuci malo rukave. Posto je programerima solidan primer najbolja knjiga, evo ga sample microsoftovog koda, da ja sad ne bih kucao nesto bez veze.
:wave;