Español
Foro

Rückgabewerte en C++ - DLL ?!

 

Christian
Eichler
Tiempo otra vez tener Yo una Problema: Yo weiß no, Yo en C++ en diesem Fall una double - Valor zurückgeben kann...
[siehe Anhang]
Das Problema en DLL en el Anhang es, dass el Profanprogramm (el .prf-Expediente) una otro Valor druckt, como en el DLL eigentlich es ...
Como va el

mfg Christian E

PS: Sí, Yo kann me vorstellen, dass Yo euch langsam langweile ...

8 kB
Hochgeladen:12.12.2007
Ladeanzahl221
Descargar
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
12.12.2007  
 




Michael
Wodrich
Float bajo C, como hay el 4 Byte großen y el 8 Byte großen.

En el kleineren mußt Usted con Single/Double umwandeln (siehe en el Ayuda).

Tal vez schreibt Sebastian uns sí veces una Tutorial a Erstellung de C-DLL - con Übergabe/Rückgabe aller Profanwerte. Dann wäre alles dazu en una Fleck.


PS: Sí, Yo kann me vorstellen, dass Yo euch langsam langweile ...


Su Fragen son siempre muy interessant...

Wozu muß el Función eigentlich CALLBACK ser? Hast Usted lo veces sin esta Angabe intenta?

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
12.12.2007  
 




Frank
Abbing
Übergib simplemente una Zeiger en una Speicherbereich. In el kannst du cualquier viele Bytes speichern.
 
12.12.2007  
 




Sebastian
König
¡Hola,

XProfan esperado como Rückgabewert de externo Características siempre Werte con uno Größe de 4 Byte, also en el Grunde Longs. Natürlich puede ser en el DLL simplemente una C/C++ float zurückgeben y luego en XProfan con @Double() umwandeln, also para Ejemplo:

C++:
KompilierenMarcaSeparación
XProfan:
KompilierenMarcaSeparación
print Wert = ,@Double(Mean(3,2))
>

A Rückgabe de C/C++ doubles, el sí una Breite de 8 Byte haben, es Franks Vorschlag con el Zona genau correcto. Für una individual Valor podría el entonces así aussehen:

C++:
KompilierenMarcaSeparación
XProfan:
KompilierenMarcaSeparación
dim ret#,8
Mean(2,3,ret#)
imprimir Valor = ,@Float(ret#)
disponer ret#

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
13.12.2007  
 




Christian
Eichler
Hmm... seit uno Stunde versuch Yo ahora el para laufen a bringen. Erst Yo quería el DLL con Profano aufrufen. Como lo aber el Funktuonen Float() y Double() no son, tener Yo veces con String$() intenta, bin aber en el Nase gefallen.
Dann tener Yo pensamiento, dass lo eh sinnvoller wäre, en el DLL con C++ zuzugreifen. Okay, geschafft tener Yo, el Yo DLL mithilfe de LoadLibrary a invitar y luego con ... naja, schaut euch simplemente el código a :
KompilierenMarcaSeparación
In el DLL dll.dll ( ) es lediglich una Función, el funk heißt y una Int-Parámetro ha, y como Rückgabewert auch otra vez esta Parámetro zurückgibt .

Laden kann Yo el DLL, funktionnieren tuts anscheinend auch. Nur una double oder float como Rückgabewert funktionniert no. ... ... also otra vez el altbekannte Problema ... ajjj ...
Naja, para heute langts me ... tener sí schließlich heute ya una 3 - stüniges Deutschaufsatzschreiben hinter me ...

Wenns na no así kompliziert wäre ....

mfg Christian E
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
13.12.2007  
 




Sebastian
König
Ah, Yo hatte übersehen, dass Usted con Profano² 6.6 arbeitest - como hay @Double(), @Single() y @Float() todavía no... Für el ersten beiden findest Usted Ersatz-Prozeduren en media alten DirectX-Codes - el son allerdings algo unbequem en el Handhabung

En el otro Problema wäre lo hilfreich, si veces el Quellcode el Función funk puesto könntest. Soll esta una Fließkommazahl zurückgeben? Wenn sí, liegt el Fehler evtl. simplemente en el Línea

typedef int (*DLLFUNC)(int);

Diese definiert schließlich DLLFUNC como Zeiger en una Función, el una int como Argument esperado y una int zurückgibt. Abgesehen su fehlt auch el WINAPI o. __stdcall a Aufrufkonvention anzugeben...

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
13.12.2007  
 




Christian
Eichler
Ah, danke

Yo habs des ahora soweit geschafft, dass lo funktionniert, lag wirklich irgendwie a el no passenden ints

Gracias soweit.
Ergebniss se Nuevo, si verwertbar ...

mfg Christian E
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
13.12.2007  
 



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

6.456 Views

Untitledvor 0 min.
Sven Bader26.02.2023
Erasmus.Herold02.05.2019
E.T.17.01.2012
Stephan Lührsen04.05.2011

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