Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-02-2008
calogero calogero is offline
Miembro
 
Registrado: oct 2006
Ubicación: Los Mochis, Sinaloa, México
Posts: 76
Poder: 18
calogero Va por buen camino
Como convertir pchar a string ?

Hola que tal!!

He creado una dll en delphi con una funcion que recibe dos tipos de datos string uno es una cadena y el otro es una cadena de solo un caracter y esta funcion devuelve un string.
El objetivo de esta funcion es tomar una palabra y devolver una parte de la cadena a partir de un string de izquierda a dereha ejemplo 'ulises' y a partir de la 'i' devolver 'ises'.

Luego de haber creado la dll defino en ibexpert una UDF hasta aqui todo va bien la udf queda bien definida el problema resulta cuando hago uso de ella porque en el ibexpert
el tipo de dato varchar no es compatible con string de delphi pero si es compatible con pchar solo que pchar no me facilita concatenar cadenas es decir no me lo permite.

ojala alguno de ustedes supiera cuales tipos de datos de cadena de ibexpert y delphi son compatibles o si sabe alguien como convertir pchar a string, ojala tengan alguna idea, gracias de antemano.

Ya estuve buscando aqui en los post de delphi pero ya tengo rato y no he encontrado algo relacionado con lo cual me pueda orientar.
__________________
La conquista mas grande de un hombre es la conquista de el mismo.

Última edición por calogero fecha: 24-02-2008 a las 06:00:38. Razón: mejorar el mensaje
Responder Con Cita
  #2  
Antiguo 24-02-2008
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Smile

¡Hola!

Tratándose de DLLs lo más recomendable es usar PChar, ya que los valores de tipo String (o cadenas largas) llevan contadores de referencias y tienen un tratamiento especial dentro de Delphi.

La conversión de un PChar a String se da de manera implícita cada vez que usas un PChar donde se espera un String. La conversión inversa tan sólo requiere un molde de tipo.

Código Delphi [-]
Str := UnPChar;
UnPChar := Pointer (Str);

Te recomiendo que declares a la función y sus parámetros como elementos de tipo PChar. Dentro de la función realiza las conversiones que sean necesarias (usando variables auxiliares si lo crees conveniente) para ejecutar la operación en cuestión.

Espero haber orientado un poco.

Saludos.

Al González.

Última edición por Al González fecha: 24-02-2008 a las 06:45:11.
Responder Con Cita
  #3  
Antiguo 25-02-2008
calogero calogero is offline
Miembro
 
Registrado: oct 2006
Ubicación: Los Mochis, Sinaloa, México
Posts: 76
Poder: 18
calogero Va por buen camino
Gracias Al Gonzáles por tu respuesta apenas a cabo de leer el post todavía no la pongo en práctica pero si a ti te ha funcionado seguramente me será de gran ayuda, bueno muchas gracias por tu respuesta y en cuanto ponga en práctica tu recomendación te diré como me fue, hasta luego
__________________
La conquista mas grande de un hombre es la conquista de el mismo.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
convertir string a pchar rzf1983 Varios 5 22-10-2007 19:17:33
String, PChar y UNICODE Ñuño Martínez Varios 5 04-06-2007 19:39:20
CopyFile String Pchar FGarcia Varios 7 14-08-2006 18:12:07
¿como pasar de String dentro de un PChar? Moises22 Varios 6 27-09-2005 15:43:47
Pchar y String superhopi Varios 8 19-08-2004 09:54:06


La franja horaria es GMT +2. Ahora son las 14:05:59.


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
Copyright 1996-2007 Club Delphi