Español
Foro

Gedanken a @Exterrnal() y Sicherheit

 
- Página 1 -



Wer en su Anwendung con sicherheitstechnisch sensiblen Daten hantiert, debería muy genau en Nutzung el Profanfunktion @Externo nachdenken.
 
08.10.2006  
 



 
- Página 1 -


Wenn I, con DEF el externe Función al Anfang meines Programmes deklariere, wann se entonces el dagehörige Sprungadresse ermittelt? Beim nächsten Aufrufen el Función en el Programa oder en Deklaration?

Wird esta Sprungadresse irgendwann ermittelt, während mein Prozess se ejecuta, kann Yo en el geladenen Programa el Exporttables el DLL ändern y así el aufgerufenen Características abgreifen. Wird el Adresse beim Laden des Programmes al Anfang meines Quelltextes ermittelt, va el no así simplemente.

Es en keiner Weise gegen Profano, son Gedanken para Programmieren schlechthin...
 
09.10.2006  
 




RGH
Apéndice:

Einen Diferencia en DLL-Aufrufen hay (allerdings no en un XProfan-Programa):

DLL puede statisch y dynamisch gelinkt voluntad:

statisch: Hier voluntad igual beim Programmstart el DLL geladen y el Funktionsadressen gelesen, así dass en späteren Aufrufen, esta ya disponible posición. Vorteil: Ist algo más rápido y el meisten Programmiersprachen (z.B. Delphi) einfacher a programa. Nachteil: Wenn el DLL y/oder Características no disponible son, startet el Programa no y Windows meldet, daß una para Ausführen des Programmes notwendige DLL fehlt.
Como el OpenGL-DLL en allen de XProfan unterstützten Systemen (de Windows 95/NT 3.51) disponible son, estos en XProfan statisch gelinkt.

dynamisch: Hier voluntad el DLL sólo geladen y el Funktionsadressen ermittelt, si ellos en el Programa aufgerufen voluntad. Vorteil: Wenn cierto Funktionalitäten vom Anwender no benötigt voluntad, braucht él auch no el DLL en seinem Rechner haben. Un Fehlermeldung kommt sólo, si la entsprechende Funktionalität aufgerufen se. Nachteil: Es una bastante klein wenig langsamer y z.B. en Delphi algo aufwändiger a implementieren.
El ODBC-DLL para el SQL-Schnittstelle Yo en XProfan dynamisch gelinkt. XProfan startet also auch en Systemen sin installierte ODBC-Treiber (z.B. Win95/98 sin MS-Office) völlig problemlos, producido aber una Fehlermeldung, si uno en solchen Systemen una SQLInit intenta.

Im XProfan-Programa voluntad para todos con DEF, EXTERNAL oder CALL erzeugten DLL-Aufrufen el notwendigen DLL dynamisch gelinkt. (Das wäre beim Interpreter auch nada anders posible, como dieser sí no wissen kann, qué para Schweinereien el geschätzte Programmierer alles con ihm programa voluntad.)

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
09.10.2006  
 




RGH
[quote:b7f9a07702=Andreas Hötker]Wenn I, con DEF el externe Función al Anfang meines Programmes deklariere, wann se entonces el dagehörige Sprungadresse ermittelt? Beim nächsten Aufrufen el Función en el Programa oder en Deklaration?[/quote:b7f9a07702]
Erst beim Aufruf el Función en el Programa. Von por lo tanto hay no hay diferencia zwischen DEF y EXTERNAL.

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
09.10.2006  
 



[quote:b7ae512a2a=RGH]
CALL: Der Aufruf folgt en direkte Adresse., Dazu muß also en el XProfan-Programa el DLL geladen y el FunktionsAdresse ermittelt voluntad. Dieser Weg es umständlich (= langsam) y benötigt mehrere Zeilen en el XProfan-Programa. Macht eigentlich sólo Sinn, si uno, etwa en COM-Interfaces, sólo el Adressen disponible ha.[/quote:b7ae512a2a]
Beim Aufruf con Funktionsnamen muß intern auch sólo el Funktionsadresse ermittelt voluntad, así el lo con Call IMHO no länger dauern kann, pero genauso rápidamente ser debería y de el 2ten Funktionsaufruf una Geschwindigkeitszuwachs bedeutet.

Como lo en el Tat umständlicher es, lohnt el Verwendung aber meist no
 
09.10.2006  
 




RGH
[quote:8841b3a260=TS-Soft]Beim Aufruf con Funktionsnamen muß intern auch sólo el Funktionsadresse ermittelt voluntad, así el lo con Call IMHO no länger dauern kann, pero genauso rápidamente ser debería y de el 2ten Funktionsaufruf una Geschwindigkeitszuwachs bedeutet.[/quote:8841b3a260]
Como XProfan auch compiliert desafortunadamente siempre no tan rápidamente como TurboDelphi es ;) , es ya una kleiner Vorteil, si Delphi el DLL lädt y el Funktionsadresse ermittelt y no XProfan.
En mehrfachem Aufruf derselben Función puede natürlich kompensiert y ser entonces una pequeña Tempo-Vorteil bedeuten.

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
09.10.2006  
 



Vorneweg: Erst veces vielen Dank.

Yo habs con TNT grad veces incluso ausprobiert y el API MessageBeep de el User32 en el Función MessageBoxA umgeleitet. En DEF y Externo se entonces wirklick MessageBoxA en lugar de MessageBeep ausgeführt. El sicherere Método wäre entonces wirklich el encima Call y GetProcAddress (wobei GetProcAddress en Programmstart aufgerufen voluntad müßte).

Was mich gefreut ha,: El Profanfunktion Beep erzeugte más una Beep, en lugar de uno Messagebox - Yo denke veces, el es pero no en allen Características así - oder??
 
09.10.2006  
 



Juhu entonces mach ego con XPSE sí correcto el Hice Headerfiles genutzte Apis en Calls umwandle...
 
09.10.2006  
 



Sí, deshalb mi Cuestión hier.
 
09.10.2006  
 



 
- Página 2 -


Und si ego correcto verstanden habe entonces el XPSE-Variante incluso todavía sicherer como el Externo oder Def-Variante como el Funktionsadresse sí igual beim Programmstart - y no sólo en erster Verwendung bezogen se.
 
09.10.2006  
 



¡Hola IF...

Das sehe Yo auch así. Externo y DEF puede sí während des Laufens des Programmes umgeleitet voluntad =>
- kein ändern de DLL en el Festplatte
- no MASM Kenntnisse
- no Kenntnisse de Disassembling

son dafür nötig. Wenn el Sprungadresse ya beim Start des Programmes feststeht, reicht una Cambio el Exporttabellen el DLL en el Speicher no aus; Yo muß direkt el Sprünge en el Ver código fuente el DLL umleiten - y el es no así simplemente. Ob una continuación überhaupt a el übergebenen Parámetro kommt, es auch fraglich.

Usted puede sí incluso veces con TNT testen, como simplemente es, con DEF oder Externo aufgerufene Características umzuleiten. Mein kleiner Test ha 10 Sekunden gedauert.

Saludo

Andreas
 
09.10.2006  
 




RGH
[quote:0917fcffa2=Andreas Hötker]Was mich gefreut ha,: El Profanfunktion Beep erzeugte más una Beep, en lugar de uno Messagebox - Yo denke veces, el es pero no en allen Características así - oder??[/quote:0917fcffa2]
Nein, no todos Profano-Características erzeugen una Beep! ;)

Im Ernst: Es en allen Características (außer SQL) así: El gesamte Windows-API es natürlich statisch gelinkt. Lediglich el ODBC-DLL son de besagten Gründen dynamisch gelinkt.

Statisch linken va natürlich sólo en DLL, el definitiv disponible son y no en DLL, el fakultativ a Anwendung kommen.

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
09.10.2006  
 



[quote:627b335246=RGH][quote:627b335246=Andreas Hötker]Was mich gefreut ha,: El Profanfunktion Beep erzeugte más una Beep, en lugar de uno Messagebox - Yo denke veces, el es pero no en allen Características así - oder??[/quote:627b335246]
Nein, no todos Profano-Características erzeugen una Beep! ;)
[/quote:627b335246]


[quote:627b335246=RGH]Im Ernst: Es en allen Características (außer SQL) así: El gesamte Windows-API es natürlich statisch gelinkt. Lediglich el ODBC-DLL son de besagten Gründen dynamisch gelinkt.
[/quote:627b335246]
Das hört se muy bien a.
 
09.10.2006  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

1.712 Views

Untitledvor 0 min.
Sven Bader03.09.2021
p.specht29.04.2019
Christof Neuß14.10.2016
iF29.12.2012

Themeninformationen

Dieses Thema ha 3 subscriber:

unbekannt (9x)
RGH (5x)
iF (2x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie