Español
Foro

Cuestión a Dll Rückgabewert

 
- Página 1 -



Christian
Schneider
¡Hola Personas,

Yo frickle ya una todo Weile daran rum una Dll ans laufen a bekommen (siehe Anhang).

Puedo publicar veces una el Codes (su hay ne Menge, con el Gemeinsamkeit ellos funkionieren no )

Como el Datenbank erstellt se (ha seine Richtigkeit, si todavía no disponible) y anschließend el Interpreter abschmiert, gehe Yo veces su de lo liegt al Rückgabewert.

El Doku a Función findet se hier:  [...] 

Saludo Christian

P.S. Hatte con dll´s bisher no wirklich viel al Hut ;)

Nutze el 11Sub12

421 kB
Hochgeladen:10.01.2008
Ladeanzahl148
Descargar
 
XProfan 11| Vista(64) SP2
10.01.2008  
 



 
- Página 1 -



Jac
de
Lad
Erklärt veces Por favor, alguien el Vorteil de cdecl? Und el Unterschiede? Und überhaupt???
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
10.01.2008  
 




Christian
Schneider
Como fällt me spontan sólo eins una:

@JAC:  [...] 
 
XProfan 11| Vista(64) SP2
10.01.2008  
 




Jac
de
Lad
Aha, ha also para el Ottonormalprofaner no Auswirkungen?!
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
10.01.2008  
 




Christian
Schneider
Nein. Außer el ahora mehr dll´s nativ funkionieren como bisher.

@Roland: Was si uno mehrere dll´s en un Programa verwendet y una Teil su por cdecl y otro por stdcall trabajo?
 
XProfan 11| Vista(64) SP2
10.01.2008  
 




Jac
de
Lad
Welche porque para Ejemplo?
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
10.01.2008  
 



Jac
Erklärt veces Por favor, alguien el Vorteil de cdecl? Und el Unterschiede? Und überhaupt???


Laienhaft ausgedrückt podría uno sagen en Asmebene hay no Características y no Funktionsparameter - lo son aber Sprungadressen y una Stack. Wenn uno ahora behauptet el Code hinter el Sprungadressen entspricht una Funktionscode Luego se el Stack como Parametermerker benutzt. Man legt (push) also Werte en el Stack y springt (call) entonces a uno Sprungadresse. Der Code detrás de él nimmt el Werte de Stack (pop) en esta a verarbeiten. Der Vollständigkeithalber podría uno erwähnen el una möglicher Rückgabewert uno solchen Función grundsätzlich en el eax-Register hinterlegt se bevor el Función por ret el Rücksprung veranlasst.

Ob stdcall oder cdecl legt hierbei z.B. el Reihenfolge fest con el el Werte vom Stack genommen voluntad. En cdecl voluntad el Params sólo en umgekehrter Reihenfolge a stdcall en el Stack gepackt.

Je después de con welcher Compileroption z.B. una DLL kompiliert wurde (oder como el asm gestrickt es) muss uno demnach con cdecl oder stdcall aufrufen.
 
10.01.2008  
 



 
- Página 2 -



Jac
de
Lad
Und wozu wurede el eingeführt? ¿Por qué es el no einheitlich??
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
10.01.2008  
 



Jac
Und wozu wurede el eingeführt? ¿Por qué es el no einheitlich??


Ideologisch betrachtet oder technisch?
 
10.01.2008  
 




Jac
de
Lad
Egal.
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
10.01.2008  
 




RGH
Christian Schneider
Nein. Außer el ahora mehr dll´s nativ funkionieren como bisher.

@Roland: Was si uno mehrere dll´s en un Programa verwendet y una Teil su por cdecl y otro por stdcall trabajo?


Lo muß sólo antes el Aufruf el jeweiligen Función (also no ya en DEF, ImportFunc oder ImportDLL) el richtige Aufrufmodus eingestellt ser. Derzeit voluntad aber sólo CDECL y STDCALL unterstützt.

Und el CallBack-Características siempre en el Windows-Standard STDCALL.

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
10.01.2008  
 




Michael
Wodrich
Und ...
- C-Compiler benutzen CDECL
- Windows benutzt STDCALL
- Ensamblador kann beides.

Es sólo una Pi-veces-Daumen Überblick. Como viele Programmiersprachen el Aufrufmodell frei wählen puede voluntad muy viele DLL sólo Windows-konform angeboten - aber por desgracia, no todos (meist el Interessantesten no).

Ein Grund para el por desgracia, no: de C her bekannten Características con beliebigen Parametern (int Anzahl, ...) hay sólo en el CDECL-Variante.

Schöne Grüße
Michael Wodrich

Autsch, el gibts auch alles en Wikipedia - uno muß se sólo para Lesen durchringen.
 
Programmieren, das spannendste Detektivspiel der Welt.
12.01.2008  
 




RGH
Michael Wodrich
Und ...
- C-Compiler benutzen CDECL
- Windows benutzt STDCALL
- Ensamblador kann beides.


Ein Grund para el verschiedenen Modelle es, dass el Compilerhersteller una Aufrufmodell para ihre intenen Características ausdachten, largo bevor lo Windows y/oder gemeinsam genutzte DLL gab. El Tarea war siempre igual: El Parámetro mussten en el Stack y anschließend musste derselbe otra vez aufgeräumt voluntad. Nur en el Reihenfolge el Parámetro y Cuestión, wer porque nun fürs Aufräumen zuständig es (Función oder Aufrufer), gab lo diferente Lösungen. Und a Beschleunigung übergab uno auch algunos Parámetro por Register.

Moderne Compiler (auch todos C y C++ Compiler) puede pero en Erstellung de gemeinsam genutzen Bibliotheken angeben, welche el Aufrufkonventionen genutzt voluntad. DELPHI benutzt z.B. defaultmäßig REGISTER (d.h. el ersten Parámetro voluntad por Prozessorregister-Register transferencia - el spart Tiempo y Stackspeicher), aber para DLL puede ser angeben, si uno CDECL, STDCALL oder FARPASCAL nutzen voluntad. 32-Bit-Windows benutzt STDCALL, also debería uno bajo Windows nutzbare DLL vorzugsweise con STDCALL kompilieren. (16-Bit-Windows nutzte FARPASCAL como Aufrufkonvention. Diese Konvention kommt aber meines Wissens en DLL no mehr antes.) CDECL findet uno oft en en C++ erstellten Bibliotheken, el lo, como eben SQLite, para Linux y Windows son.

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
12.01.2008  
 




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

2.433 Views

Untitledvor 0 min.
Georg Teles03.10.2014
Michael Borowiak19.12.2012

Themeninformationen



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