Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   usando archivos .obj de C++ en mi proyecto de Delphi (https://www.clubdelphi.com/foros/showthread.php?t=89987)

xangiesaurx 14-03-2016 19:58:04

usando archivos .obj de C++ en mi proyecto de Delphi
 
Hola a todos, tengo una pequeña duda, estoy usando archivos .obj de C++ en mi proyecto de Delphi, el problema es que me salen estos errores:

[dcc64 Error] JPG.pas(1223): E2065 Unsatisfied forward or external declaration: '_fltused'
[dcc64 Error] JPG.pas(1223): E2065 Unsatisfied forward or external declaration: '__GSHandlerCheck'
[dcc64 Error] JPG.pas(1223): E2065 Unsatisfied forward or external declaration: '__security_cookie'
[dcc64 Error] JPG.pas(1223): E2065 Unsatisfied forward or external declaration: '__security_check_cookie'

Alguien sabe que me falta hacer (ya implemente funciones de msvcrt.dll para corregir otros errores, pero estos persisten) o como eliminar estos errores?
Gracias :)

Ñuño Martínez 15-03-2016 12:14:44

Usar archivos objeto de C++ desde Delphi no es fácil. De hecho, es muy difícil ya que ambos compiladores usan nomenclaturas diferentes para definir el nombre de los objetos, y también difiere en el número, orden y forma de paso de los parámetros. En concreto "this" no tiene traducción directa a "SELF", así como la definición de la tabla virtual no tiene nada que ver en uno u otro lenguaje, y si ya nos vamos a las excepciones, ni te cuento.

Con C es otro tema, ya que, al ser un lenguaje diseñado para trabajar en bajo nivel, tiene un funcionamiento muy sencillo.

Normalmente, cuando hay que acceder a C++ desde Delphi se suele crear una envolvente "C++ a C", y luego ya se puede acceder a esa envolvente como si fuera C.

xangiesaurx 15-03-2016 18:02:08

Gracias por tu respuesta ñuño, es cierto que me ah costado un poco de trabajo esto de los archivos objeto, pero afortunadamente poco a poco voy entiendo un poco, logre solucionar estos errores
[dcc64 Error] JPG.pas(1223): E2065 Unsatisfied forward or external declaration: '__GSHandlerCheck'
[dcc64 Error] JPG.pas(1223): E2065 Unsatisfied forward or external declaration: '__security_cookie'
[dcc64 Error] JPG.pas(1223): E2065 Unsatisfied forward or external declaration: '__security_check_cookie'

deshabilitando el /GS Switch desde VS, asi al compilar de nuevo y generar los objetos ya no tenia ese problema, lo que aun no logro arreglar es el siguiente error:

[dcc64 Error] JPG.pas(1223): E2065 Unsatisfied forward or external declaration: '_fltused'

Alguien sabe por que me sale este error y cual sería su posible solución?.
Gracias :)


La franja horaria es GMT +2. Ahora son las 04:19:56.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi