Français
Forum

Frage trop Dll Rückgabewert

 
- page 1 -



Christian
Schneider
allô gens,

je frickle déjà une ganze Weile daran rum une Dll à l' courir trop bekommen (siehe Anhang).

Je poste parfois une qui Codes (en gibt es ne la quantité, avec qui Gemeinsamkeit vous funkionieren pas )

là qui banque de données erstellt wird (hat sa Richtigkeit, si encore pas vorhanden) et anschließend qui Interpreter abschmiert, vais je la fois en aus es liegt am Rückgabewert.

qui Doku zur Funktion findet sich ici:  [...] 

Salut Christian

P.S. Hatte avec dll´s bisher pas wirklich viel am Hut ;)

Nutze qui 11Sous12

421 kB
Hochgeladen:10.01.2008
Downloadcounter148
Download
 
XProfan 11| Vista(64) SP2
10.01.2008  
 



 
- page 1 -



Jac
de
Lad
Erklärt la fois s'il te plaît quelqu'un den Vorteil de cdecl? et qui Unterschiede? et ü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
là fällt mir spontan seulement une un:

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




Jac
de
Lad
Aha, hat alors pour den Ottonormalprofaner aucun 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
non. Außer cela maintenant plus dll´s nativ funkionieren comme bisher.

@Roland: quoi si on plusieurs dll´s dans einem Programme verwendet et un partie en per cdecl et autre per stdcall travailler?
 
XProfan 11| Vista(64) SP2
10.01.2008  
 




Jac
de
Lad
quelle car zum Beispiel?
 
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 la fois s'il te plaît quelqu'un den Vorteil de cdecl? et qui Unterschiede? et überhaupt???


Laienhaft ausgedrückt pourrait on dire sur Asmebene gibt es aucun Funktionen et aucun Funktionsparameter - il y a mais Sprungadressen et une Stack. si on maintenant behauptet qui Code derrière den Sprungadressen entspricht einem Funktionscode ensuite wird qui Stack comme Parametermerker benutzt. on legt (push) alors Werte sur den Stack et springt (call) ensuite trop einer Sprungadresse. qui Code derrière elle nimmt qui Werte de Stack (pop) um cet trop verarbeiten. qui Vollständigkeithalber pourrait on erwähnen cela un möglicher Rückgabewert einer solchen Funktion grundsätzlich im eax-Register hinterlegt wird bevor qui Funktion per ret den Rücksprung veranlasst.

si stdcall ou bien cdecl legt hierbei z.B. qui Reihenfolge fest avec qui qui Werte vom Stack pris volonté. chez cdecl volonté qui Params arrêt dans umgekehrter Reihenfolge trop stdcall sur den Stack emballé.

Je après que avec quel Compileroption z.B. une DLL kompiliert wurde (ou bien comment qui asm gestrickt ist) muss on donc avec cdecl ou bien stdcall appel.
 
10.01.2008  
 



 
- page 2 -



Jac
de
Lad
et wozu wurede cela eingeführt? pourquoi ist cela pas unique??
 
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
et wozu wurede cela eingeführt? pourquoi ist cela pas unique??


Ideologisch betrachtet ou bien technique?
 
10.01.2008  
 




Jac
de
Lad
égal.
 
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
non. Außer cela maintenant plus dll´s nativ funkionieren comme bisher.

@Roland: quoi si on plusieurs dll´s dans einem Programme verwendet et un partie en per cdecl et autre per stdcall travailler?


Es doit seulement avant dem Aufruf qui jeweiligen Funktion (alors pas déjà chez DEF, ImportFunc ou bien ImportDLL) qui richtige Aufrufmodus eingestellt son. Derzeit volonté mais seulement CDECL et STDCALL soutenu.

et qui CallBack-Funktionen sommes toujours im Windows-Standard STDCALL.

Salut
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
et ...
- C-Compiler benutzen CDECL
- Windows benutzt STDCALL
- Assembler peux beides.

c'est seulement un Pi-la fois-pouce Überblick. là viele Programmiersprachen cela Aufrufmodell libre choisir peut volonté très viele DLL arrêt Windows-konform angeboten - mais malheureusement pas alle (meist qui Interessantesten pas).

un Grund pour cela malheureusement pas: qui aus C her bekannten Funktionen avec beliebigen Parametern (int Anzahl, ...) gibt es seulement dans qui CDECL-variante.

belle Grüße
Michael Wodrich

Autsch, cela gibts aussi alles chez Wikipedia - il faut sich seulement zum Lesen durchringen.
 
Programmieren, das spannendste Detektivspiel der Welt.
12.01.2008  
 




RGH
Michael Wodrich
et ...
- C-Compiler benutzen CDECL
- Windows benutzt STDCALL
- Assembler peux beides.


un Grund pour qui verschiedenen Modelle ist, dass sich qui Compilerhersteller un Aufrufmodell pour ses intenen Funktionen ausdachten, longtemps bevor es Windows et/ou bien gemeinsam genutzte DLL donnais. qui devoir était toujours juste: qui paramètre mussten sur den Stack et anschließend musste derselbe wieder aufgeräumt volonté. seulement dans qui Reihenfolge qui paramètre et qui Frage, qui car eh bien pour Aufräumen zuständig ist (Funktion ou bien Aufrufer), donnais es différent Lösungen. et zur Beschleunigung übergab on aussi quelques paramètre per Register.

Moderne Compiler (aussi alle C et C++ Compiler) peut mais chez Erstellung de gemeinsam genutzen Bibliotheken angeben, quelle qui Aufrufkonventionen genutzt volonté. DELPHI benutzt z.B. defaultmäßig REGISTER (d.h. qui ersten paramètre volonté per Prozessorregister-Register transfert - cela spart Zeit et Stackspeicher), mais pour DLL peux on angeben, si on CDECL, STDCALL ou bien FARPASCAL nutzen veux. 32-Bit-Windows benutzt STDCALL, alors sollte on sous Windows nutzbare DLL vorzugsweise avec STDCALL kompilieren. (16-Bit-Windows nutzte FARPASCAL comme Aufrufkonvention. cet Konvention venez mais meines Wissens dans DLL pas plus avant.) CDECL findet on souvent chez dans C++ erstellten Bibliotheken, qui es, comment plan SQLite, pour Linux et Windows gibt.

Salut
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  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

2.431 Views

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

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie