|
Práce s HTML v RES souborech |
|
|
|
Od vydání MS Internet Exploreru verze 4 je možné využívat zobrazení HTML stránek přímo z aplikačního resource souboru pomocí res:// protokolu. V tomto seriále si ukážeme jakým způsobem vytvářet resource soubory s HTML stránkami a jak pak tyto stránky zobrazovat ve VB aplikacích. O res://
protokolu res:// protokol byl jedno ze schémat, které byly představeny v tom samém čase. Jednoduše, res:// protokol umožňuje zobrazovat informace uložené v resource souborech zakompilovaných v EXE nebo DLL souborech přímo v IE. Například, pokud si v offline módu IE zkusíte zobrazit nějakou stránku (a není načtena v offline složce), pak se zobrazí stránka s informacemi o nepřístupnosti stránky. Pokud se podíváte na adresu stránky v prohlížeči zjistíte, že vypadá třeba nějak takhle: res://C:\WINDOWS\System32\shdoclc.dll/offcancl.htm#http://www.bozena.net/ Tato adresa říká IE, aby načetl stránku "offcancl.htm", která je zakompilována jako HTML zdroj v resource souboru v knihovně shdoccl.dll. Část, která je za znakem # je brána jako parametr skriptu, který je umístěn v této stránce. Pokud si zobrazíte zdroj této stránky zjistíte, že se odkazuje na obrázek "pagerror.gif". Tento obrázek je také obsažen v resource souboru a můžete si jej zobrazit rovnou, pokud napíšete tuto adresu: res://C:\WINDOWS\System32\shdoclc.dll/pagerror.gif To ale ještě není vše. res:// protokol může být ale také použit pro zobrazování jiných zdrojů v aplikaci. Pokud napíšete: res://C:\WINDOWS\System32\shdoclc.dll/pagerror.gif tak aktuálně říkáte IE, aby se podíval do sekce RT_HTML (id=23) pro vámi požadovaný zdroj. Můžete ovšem IE navigovat i do jiných sekcí resource souboru, pokud číslo této sekce přidáte za jméno DLL knihovny. Například pokud chcete zobrazit bitmapu z resource souboru, které jsou uloženy v sekci RT_BITMAP (id=2), a tato bitmapa má své id 17034, tak by zápis měl vypadat takto: res://C:\WINDOWS\System32\shdoclc.dll/2/17034 Je třeba ale poznamenat, že IE nepodporuje některé typy zdrojů, jako jsou například ikony nebo menu. Pokud se pokusíte takovýto zdroj zavolat, tak se zobrazí pouze informace o tom, že stránka nemůže být zobrazena. |
|
|
| Autor: The Bozena |