Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Ressourcen-DLL-Experte (https://www.delphipraxis.net/10331-ressourcen-dll-experte.html)

FriFra 16. Okt 2003 13:09

Re: Ressourcen-DLL-Experte
 
Zitat:

Zitat von Wormid
@FriFra: Doch, es geht anders... Das hier ist z.B. ne gültige URL für den IE: res://C:\WINNT\system32\shdoclc.dll/dnserror.htm (Vorrausgesetzt, die DLL liegt in dem Verzeichnis)

Das ist eine interne Funktion vom Internet-Explorer und geht z.B. nicht mit Netscape, Opera etc. Weiterhin kannst Du mir gern mal vormachen, wie Du eigene Resourcen aus Deinen dll's auf diese Weise aufrufen willst ;)... Für diese Art des Aufrufes existiert IMO keine klare Spezifikation/API um so etwas nachzubilden. Ich gehe davon aus, dass der Explorer bei solchen Aufrufen zwar irgendetwas aus den Resourcen der bettr. dll liest, aber dass das beliebig erweiterbar ist (z.B: durch eigene dll's) glaube ich nicht. Wenn es nicht so sein sollte, kannst Du mir gern mal ein Beispiel zeigen, wo so etwas funktioniert!

Christian Seehase 16. Okt 2003 13:34

Re: Ressourcen-DLL-Experte
 
Moin FriFra,

Zitat:

Zitat von FriFra
Weiterhin kannst Du mir gern mal vormachen, wie Du eigene Resourcen aus Deinen dll's auf diese Weise aufrufen willst

die HTML Seiten müssen unter dem Resourcentyp 23 gespeichert werden (in der RC also als #23 angeben), und als Resourcenname den Namen der Datei (incl. Endung) haben.

z.B.

Code:
MeineHP.htm #23 MeineHP.htm
will man Unterverzeichnisse ansprechen (z.B. für die Graphiken bilder/Pfeil.gif), dann muss der Resourcentyp BILDER lauten (eben der Verzeichnisname) und für den Resourcennamen gilt das Gleiche, wie für die die HTML Datei.

Hat man also eine HTML Datei namens MeineHP.htm, die eine Grafik Pfeil.gif im Unterverzeichnis BILDER erwartet, müsste die RC Datei so aussehen (Annahme: RC Datei und HTM liegen im gleichen Verzeichnis, die Grafik darunter):

Code:
MeineHP.htm #23 "MeineHP.htm"
Pfeil.gif BILDER "BILDER\PFEIL.GIF"
Bei anderen Dateitypen (z.B. CSS, JS usw.) und Verzeichnisstrukturen gilt das analog.

Der Aufruf innerhalb des eigenen Programmes müsste also lauten (Annahme: Die DLL liegt im eigenen Programmverzeichnis):
Delphi-Quellcode:
Webbrowser1.Navigate('res://'+ExtractFilePath(paramstr(0))+'MeineRes.DLL /meinehp.htm')
Wichtig:
Der Pfad muss \ enthalten, obwohl das Dateisystem ja eigentlich auch / zulässt.

In einem Punkt hast Du natürlich recht:
Es geht nur mit dem IE.

Der Tip von Wormid mit dem res:// war klasse :thuimb:

BTW: Jetzt landen die Dateien auch nicht im BrowserCache.

Evian 16. Okt 2003 13:44

Re: Ressourcen-DLL-Experte
 
So ... und was jetzt noch richtig fein wäre, wenn mir jemand sagen könnte.. wie ich aus meinen WEB-Dokumenten so eine DLL machen kann ... ich meine darum ging doch der Treat eigendlich :)

MFG

Evi

Christian Seehase 16. Okt 2003 13:54

Re: Ressourcen-DLL-Experte
 
Moin Evian,

hab' ich doch beschrieben:

HTM Dateien
Resourcentyp: #23
Resourcenname: Name der Datei incl. Extension

sonstige Dateien:
Resourcentyp: #23, wenn sie sich im gleichen Verzeichnis befinden, wie die htm Datei, ansonsten Verzeichnisname (vermutlich nur eine Ebene möglich
Resourcenname: Name der Datei incl. Extension

Um wie viele Dateien geht's denn?

Darty 16. Okt 2003 13:54

Re: Ressourcen-DLL-Experte
 
Wenn Du weisst wie eine Resource erstellt wird, dann lies doch den Posting von Seehase über Dir ... Da steht wie es sein muss ...
Wenn Du aber keine Ahnung hast vom DLL erstellen, dann würde ich Dich doch bitten mal hier Bilder in DLL einbinden und aufrufen nachzulesen wie so was überhaupt geht.

Nachtrag: oops der Hase war schneller :mrgreen:

Evian 16. Okt 2003 14:03

Re: Ressourcen-DLL-Experte
 
Zitat:

Zitat von Christian Seehase
Um wie viele Dateien geht's denn?

Und da haben wir auch schon das Problem ... es sind gut 1900 Dateien ... war vorher mal ne online Datenbank. Deshalb dachte ich, dass ich das einfach mit dem Delphi Ressource-Dll-Experten machen kann. :(

@Knebel... ja sorry ... hatte es wohl zu schnell überflogen. Wie man etwas in DLLs einbaut, weiß ich grundsäztlich.

Christian Seehase 16. Okt 2003 14:10

Re: Ressourcen-DLL-Experte
 
Moin Evian,

wenn es über mehr als eine Verzeichnisebene geht, hiesse es auszuprobieren, ob der Resourcenname auch / enthalten darf, dass weiss ich nämlich jetzt auch nicht. (Wenn ja, und ob das dann auch wie gewünscht funktioniert ;-) )
Ansonsten wäre es relativ einfach die RC Datei mit einem kleinen Programm zu erstellen.

Evian 16. Okt 2003 14:13

Re: Ressourcen-DLL-Experte
 
Naja alle Daten sind in einem Verzeichniss..., aber haben kranke namen wie z.B. 'herstellerindex.php_buchstabe=K&short=0.htm'

Hast Du so ein RC Tool schon geschrieben? Ich denke ich würde es auch hinbekommen,
aber wenn es schon eins gibt, bräuchte ich mich nicht drum kümmern. *g* *faul sei*

Evi

Wormid 16. Okt 2003 14:16

Re: Ressourcen-DLL-Experte
 
Liste der Anhänge anzeigen (Anzahl: 1)
Stichwort RC-Tool: ResourceBuilder von SiComponents... der rockt! http://www.sicomponents.com/

Stichwort res:// - Das funzt echt kewl... Ich wollte das doch auch mal austesten, also war ich so frei, mal ein Mini-Demoprojekt zu diesem Thema zu erstellen.

Wenn man da noch ein bissel dran rumfeilt, könnnte da sogar was für die Lib bei rausspringen! :wink:

:dp:

Christian Seehase 16. Okt 2003 14:17

Re: Ressourcen-DLL-Experte
 
Moin Evian,

so ein Tool hab' ich auch noch nicht geschrieben.

Wenn die alle ein einem Verzeichnis liegen, brauchst Du ja nur einmal mit einer FindFirst/FindNext Schleife durchzugehen, und je Datei eine Zeile mit Dateiname #23 Dateiname ein eine TStringList zu schreiben, die Du dann als RC Datei speicherst.

(Diesen Beitrag zu schreiben dauert ja fast schon länger ;-) )


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:11 Uhr.
Seite 2 von 4     12 34      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz