Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Que pasa con el operador @? (https://www.clubdelphi.com/foros/showthread.php?t=29121)

Turboleta 12-01-2006 19:58:03

Que pasa con el operador @?
 
Hola, amigos. Ya hacía un tiempo que no entraba en el foro.
Aunque un poco tarde, feliz año a todos.

A lo que vamos.

Tengo una aplicación que hice hace tiempo von D3 y funciona perfecta pero el otro día se me ocurrió recompilarla con D7 y me aparecen un motón de warnings con el mensaje: Unsafe code '@ operator'.

Esto me sucede en todas las unidades que tengo con una interface para encontrar funciones dentro de librerías (.dll) creadas por mí.

1º/ Declaro una variable: ClaveBien: function(clave:string): ByteBool;
2º/ Averiguo el Handle del la dll donde está la función.
3º/ Saco la dirección de la función: @ClaveBien:= GetProcAddress(handle,'La función que busco');.

Bien, pues en este último paso es donde aparece el warning.

El programa se compila y funciona bien, pero no consigo averiguar la causa. Si sólo saliese ese warning me daría igual pero es que aparecen más de 80 en otros tantos casos similares.

Alguien me puede dar algo de luz sobre el tema?

Gracias anticipadas. :confused:

maeyanes 12-01-2006 20:04:16

Por lo que recuerdo, esos "warnings" los muestra el compilador de Delphi 7 para asegurar una migración sin problemas a .NET.

Lo que puedes hacer es en las opciones del proyecto (Project/Options...), en la pestaña Compiler Messages, desactivar las opciones "Unsafe type", "Unsafe code" y "Unsafe typecast" del CheckListBox "Warnings".


Saludos...

jachguate 12-01-2006 20:34:18

En lo personal creo que son warnings necesarios para quien no sabe lo que está haciendo. Si vos sabes lo que estas haciendo, ya Marcos te ha dado la solución.

Saludos.

Turboleta 12-01-2006 20:50:35

¡Ya esta!
 
Gracias, amigos.

Solucinado. Por lo menos no me duele la tripa de ver tanto warning.

Un saludo. ;)


La franja horaria es GMT +2. Ahora son las 13:42:30.

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