Ayuda para resolver un problema con la importación de una función desde una dll - página 8

 

Lee en Google y parece que he acertado con lo de stdafx.h :-))

Bueno... sí... vivir y aprender... :-)

 

Sí, sí.

A menudo, el primer enlace contiene todo lo que necesita.

 

Interesante... y en Bilder 6 nadie jura realmente el archivo stdafx.h, sólo 17 advertencias y el archivo pesa la mitad.

Hmmm... sí...

Ahora tengo 2 bibliotecas que parecen funcionar :-). Los iré comprobando a medida que vayan trabajando con los datos. Realmente espero un resultado positivo :-)))

 
jartmailru писал(а) >>

Um... Bueno, como que tengo que poner todos los archivos en el proyecto

que me enviaste.

.

Sinceramente, ni siquiera se me ocurriría pensar en

qué archivo del conjunto de archivos de la *biblioteca*

para añadir al proyecto.

Creía que subían automáticamente por la cadena a través de los archivos h. Sin embargo, la primera vez que compilé y enlacé usando sólo el archivo svd.cpp, no hubo errores hasta que añadí extern. El svd.cpp tiene un enlace a su archivo h, y hace referencia a otros archivos h, y esos usan archivos cpp con el mismo nombre. Parece que tiene tanto sentido como yo pensaba. Sólo quiero justificarme un poco, para que no te hagas una idea de que soy completamente estúpido :-)). Es una pena cuando se opina así de ti :-)). Es una broma :-))

 
boysn >> :

Pensaba que se subían automáticamente a la cadena a través de los archivos h. La primera vez, sin embargo, usando sólo el archivo svd.cpp, compilé y me deslice, no hubo errores hasta que añadí extern. El svd.cpp tiene un enlace a su archivo h, y hace referencia a otros archivos h, y esos usan archivos cpp con el mismo nombre. Parece que tiene tanto sentido como yo pensaba. Sólo quiero justificarme un poco, para que no te hagas una idea de que soy completamente estúpido :-)). Es una pena cuando se tiene ese tipo de opinión :-)). Es una broma :-))

Para no cometer ese error, hay que saber esto:

* Por qué dividir los archivos en .CPP / .H

* La diferencia entre una declaración de función y una declaración

* ¿Por qué necesitamos palabras clave inline / template-?

* Qué pasa si declaras funciones dentro de una declaración de clase

* Objetivo de la compilación y la vinculación

* Distinción y propósito de .OBJ / .LIB / .DLL / .EXE

* Enlazamiento estático y dinámico

* Qué es el error del enlazador = Función no resuelta

* Qué es el error del enlazador = símbolo múltiple

* Cómo el enlazador construye un archivo binario

* ¿Qué es el exterior?

.

Así que ahí lo tienes en alguna parte.

 
jartmailru >> :
* La diferencia entre una declaración de una función y una declaración.

Bueno, la declaración y la declaración son la misma cosa :).

declaración -- definición.

 

Sí... Me di cuenta de que estaba equivocado... Está bien, ya aprenderemos...

Sobre la dll recibida... Desgraciadamente, hasta ahora no ha cumplido mis expectativas :-), es decir, no ha funcionado de inmediato. En principio estaría muy bien conseguirlo de inmediato.

Por desgracia, los milagros nunca ocurren... :-)

He intentado darle como entrada una matriz cuadrada de 3x3. Sé cuál debe ser la salida, lo sé por el ejemplo. Por desgracia, la salida tiene valores singulares de ceros, y las matrices de salida de los vectores son singulares.

Es decir, parece que se hace algo, pero no sé qué es. Por lo que he entendido, es imposible escribir información de salida dentro de la dll... como print("a["+i+"]", a[i]), porque no lo imprimirá... Esto es lo que juzgo del primer ejemplo en este hilo...

Ahí estaba la función printf("GetDoubleValue toma %.8lf\n",dpar);

No se imprimió ninguna información en los registros del meta-trader, sólo se mostró el valor de la función devuelta (return)

Entonces, según entiendo, no puedo depurar de esta manera, ¿no? ¿O he vuelto a meter la pata?

Ahora estoy intentando crear un proyecto exe en lugar de dll, porque me dijiste que es más fácil depurar los proyectos eche...

Aunque la función WinMain aparece allí y no puedo averiguar cómo acoplar mi proyecto a un proyecto exe correctamente...

Y todavía no he entendido qué funciones de salida y qué herramientas me vienen mejor para depurar... Estoy leyendo Arkhangelsky ahora...

 
TheXpert >> :

Bueno, la declaración y el anuncio son la misma cosa :).

declaración -- definición.

Gracias por el error. Lo sé en inglés :-).

 
boysn >> :

Sin embargo, la función WinMain aparece allí y todavía no he descubierto cómo acoplar mi proyecto correctamente para el proyecto eche...

Y todavía no he averiguado qué funciones y herramientas de salida debo depurar... Estoy leyendo Arkhangelsky ahora...

Y tú, compañero, escribe un código de prueba con tu matriz 3 sobre 3 y la salida de depuración - y todo funcionará.

Lo principal es que necesitas una aplicación de *consola* para printf().

 
Sí, lo intentaré...
Razón de la queja: