>Jak v dll? Ja jsem myslel polozku v kontextovem menu na prave tlacitko >mysi. Teda hlavne ten text v tom menu ze je moc dlouhy a to snad s tema >dll nema co delat. Ty polozky v tom menu jsou pry v Registrech ale tuhle >nemuzu najit. A kdyz by to teda bylo tim dll souborem tak jakym? muze to mit hodne co delat s .dll... :) a jaksi jsi pozapomnel napsat, o jaky prog a jaky text ti vlastne jde. treba by se dalo konkretne poradit... ale kdyz string skutecne neni v registru, bude situace asi slozitejsi a leckdy nad moznosti "normalniho" usera. omlouvam se tedy za ponekud delsi mail, ale podobne dotazy tady uz parkrat byly. a protoze nekdy je reseni oriskem i pro stareho programatora, zkusim "strucne" vysvetlit, proc je lepsi se do podobnych akci radeji nepoustet. je to tedy spise ODSTRASUJICI rada !!! :))) nektere softy pouzivaji dll knihovnu, ktera takove shell extensions realizuje. budu tedy predpokladat, ze ta polozka v menu existuje obecne vzdy, jinak musis misto * najit ext. pro ktere plati. musis tedy najit v registru HKCR\*\shellex\ContextMenuHandlers\ klic toho softu, ktery ma tu polozku menu na svedomi a v nem bude ASI stringova polozka (obvykle default) obsahujici clsid, tedy neco jako "{0ab12.....}". to musis zkopirovat a nasledne si najit klic se stejnou hodnotou pod HKCR\CLSID\. pod nim by pak mel byt klic \InProcServer* a v nem polozka, ktera definuje prave prislusnou dll knihovnu. to ale jeste zdaleka neni vsechno... :) nasledne pak musis prislusnou knihovnu editovat hex-editorem a pokusit se najit prislusny string. nekdy ho najdes vcelku, jindy ne, nekdy bude v ascii, jindy v unicode, casto v obojim a casto tam bude vicekrat. zmenit string pri zachovani jeho stavajici delky neni problem. chces-li string ZKRATIT, musis ten zbytek doplnit nulami (mezery by se ti zobrazily a zkraceni by bylo k nicemu). taky je potrebne dat pozor na word tesne pred stringem, ktery muze (ale nemusi :)) obsahovat delku stringu. (ale byva obvykle v intel-formatu, tedy "naruby"). v takovem pripade nekdy MUSIS zmenit jeho hodnotu tak, aby v nem byla nova delka zkraceneho stringu (delka unicode je bez nul, tedy jenom ascii bytes). jindy ji zase naopak menit NESMIS... zvetsit delku stringu je obvykle ve vetsine pripadu temer nemozne. frustrujici hledani pod clsid v registrech (shora uvedena moznost totiz zdaleka neni jedina) si muzes obcas usetrit, pokud najdes v adresari toho programu nejakou knihovnu, obsahujici potrebny string. nekdy se jmenuje *ext.*, *shex*.*, *shell*.* nebo podobne. ale pozor - takovych souboru muze byt vic a potom babo, rad! ;-) krome toho, jak uz jsem rekl vyse, nemusi byt ten string vzdycky vcelku a knihovna nemusi byt v adresari programu... TAK. uz te presla chut menit nepristupne polozky? ;-)) pokud ne, tak jeste doplnim, ze pokud jde o komercni soft, tak jsou obvykle editace a zmeny ve strojaku programu oznacovany jako trestne. a kdo neni ve strojaku jako ryba ve vode, potresta se obycejne stouranim v kodu velice rychle sam - znici si program, pripadne i nakopne os nebo i disk. nekdy staci blbej bajt na blbym miste v blbym okamziku... btw: pokud te ta polozka hodne stve, :) tak vetsina slusnych softu miva moznost tyto shell extensions vypnout. pak nekdy staci udelat si vlastni potrebnou polozku v menu pro potrebne soubory klasickym uzivatelskym postupem z menu okna: view / options... / filetypes. bye. spock.
This archive was generated by hypermail 2.1.2 : 04. 09. 2001, 03:15 CEST