![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Problema al pasar función de D2007 a Berlín
Hola a tod@s.
Tengo esta función para activar/desactivar la función "duplex" de las impresoras:
Esto con mi Delphi 2007 va perfectamente pero estoy intentando pasarla a Delphi Berlin y me da el siguiente error al compilar: Incompatible types: 'PAnsiChar' and 'array[0..255] or Char señalando la variable "Device" de la linea "if DeviceCapabilitiesA(Device, Port, DC_DUPLEX, nil, nil) = 1 then begin" Imagino que habrá que hacer alguna conversión de tipos de variable pero la verdad es que no doy con la tecla. ¿Alguien me puede iluminar? Gracias y un saludo
__________________
Be water my friend. |
|
#2
|
||||
|
||||
|
¿Has probado: Device, Driver, Port : array[0..255] of ansichar; ?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
Cita:
Si, y me dice: Incompatible types: 'PWideChar' and 'array[0..255] of AnsiChar Gracias y un saludo
__________________
Be water my friend. |
|
#4
|
||||
|
||||
|
Lo otro es que sean pansichar, pero no sé qué tipos son cada uno de los parámetros.
A ver si alguien que use esas versiones modernas puede ayudar.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#5
|
||||
|
||||
|
Si, cambiaron los tipos de datos de los parámetros! Pues, de esta manera compila pero...
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
|
#6
|
||||
|
||||
|
Gracias a los dos por contestar.
movorack, disculpa pero no entiendo tu respuesta. En la unidad WinSpool de mi Delphi Berlín la función está declarada de la siguiente forma:
o sea, las variables están como tipo LPCSTR pero no sé cómo hacer la declaración y la llamada. Saludos
__________________
Be water my friend. |
|
#7
|
||||
|
||||
|
Mientras responde movorack...
Dices que la función es: Sin embargo, creo que la llamas con los parámetros cambiados de orden: Aparte de eso, lo mismo puede que funcione de la forma: PAnsiChar(AnsiString())
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#8
|
||||
|
||||
|
Casimiro.
Ese código era una propuesta de movorack, yo lo estaba poniendo en el orden correcto. Por otro lado con tu última propuesta "PAnsiChar(AnsiString())" si que ha funcionado. ![]() Gracias a los dos y un saludo
__________________
Be water my friend. |
|
#9
|
||||
|
||||
|
Hola, que mala costumbre la de nosotros los latinoamericanos de dormir mientras uds están trabajando
![]() Lo que sucede es que en el Berlín que tengo instalado (Delphi Berlín 10.1 Update 2) están así:
Pero, LPCSTR termina siendo del tipo PAnsiChar
y la duda es porque DeviceCapabilitiesA pide un parámetro llamado pDeviceName que en tu código original no veo.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Problema transacciones IBX + Delphi Berlin | lavtaro | Conexión con bases de datos | 16 | 04-06-2018 15:29:09 |
| Problema con proyecto en Delphi Berlin | newtron | Varios | 13 | 26-05-2017 20:09:26 |
| Error "Incompatible types" al pasar de Delphi 2007 a Delphi Berlin | newtron | Varios | 4 | 21-02-2017 13:46:59 |
| Problema con el IDE D2007 | diegofhernando | Varios | 3 | 13-06-2008 00:29:49 |
| pasar un puntero a una funcion | baby | Varios | 2 | 21-05-2007 13:10:22 |
|