Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > FireMonkey
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-08-2012
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Error al ejecutar aplicación en MacBook

Hola a tod@s.
Casi que debería haber titulado el post como "Mis peripecias con Delphi XE2 + Firemonkey + XCode y la madre que los parió..."

Os cuento:

Estoy desarrollando una aplicación Firemonkey con la idea de que funcione en un iPad.
Para ello dispongo de Rad Studio XE2 (con la última actualización Update 4 HotFix 1) y
de un MacBook Pro (de segunda mano comprado en USA) con OS X 10.6.8 (Snow Leopard) y Xcode 3.2.6.

Asigno el perfil remoto en Delphi XE2 para la plataforma OSX para enviarlo al MacBook y va perfecto,
se muestran las fichas de los clientes (de una BD Sqlite usando un driver dbexpress para sqlite), puedo hacer pedidos, y todo para lo que está pensada la aplicación,
pero si ejecuto directamente el App que Delphi XE2 deja en el MacBook,
lo primero que me aparece es un mensaje en una ventana indicando el error "Exception in safecall method", pulso OK y me aparece mi formulario principal.
En cuanto pulso cualquier otro botón, da igual si tiene evento OnClick o no, me vuelve a salir la ventana con el error anterior y pulsando repetidas veces el botón OK,
se cierra el programa.

También he intentado compilar el proyecto con XCode, preparándolo con el ejecutable dpr2xcode.exe, y me sale el error:

Free Pascal Compiler version 2.6.0 [2012/08/29] for i386
Copyright (c) 1993-2011 by Florian Klaempfl and others
Target OS: Darwin/iPhoneSim for i386
Compiling /Users/User/Documents/DelphiXE2/../iPADTest.pas
Fatal: Can't open file "iPADTest.pas"
Fatal: Compilation aborted
Command /bin/sh failed with exit code 1

Bien, pues revisando el fichero .sh que (creo que) genera Delphi en el Mac, veo lo siguiente:
-XR$SDKROOT -FD$PLATFORM_DEVELOPER_BIN_DIR "$PROJECT_DIR/../$PROJECT.pas"
y pienso ¿por qué se pone /../?, y me voy a la opción del menú Xcode "Project / New Build Phase / New Run Script Build Phase",
y copio y pego el contenido del fichero .sh modificando "$PROJECT_DIR/../$PROJECT.pas" por "$PROJECT_DIR/$PROJECT.pas",
y ahora me salen un montón de mensajes de compilación, indicando que compila todas los .pas de firemonkey...
-casi me caigo de la silla de la emoción-

pero al final dió otro error...
"Compiling Principal.pas"
"Principal.pas(6,9) Error: Duplicate identifier "SYSTEM""

y pienso: -lo mismo es que hay que quitarle System. al código fuente en los uses-

lo corrijo eliminando System. de ese fichero .pas y luego dió otro error...

"Compiling ListaClientes.pas"
"Fatal: Can't find unit FMX used by unit ListaClientes"

joder... -pienso yo- ahora no me encuentra la unit FMX... un momento, ¿la unit FMX?, pero si he visto como compilaba los pas de Firemonkey !!!

Pues, si, los compila, pero se llaman FMX_Types.pas, FMX_Colors.pas, etc.

En principio si sustituyo FMX. por FMX_ (añadiendo la directiva de compilación {$IFDEF FPC} en cada caso,
debería compilar el proyecto con el XCode, pero ¿qué pasa con las demás units como Data.DB, Data.Bind.Scope, etc.?


Se agradece cualquier comentario/experiencia al respecto.
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #2  
Antiguo 31-08-2012
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Buscando en google, he visto más gente que le pasa lo mismo:

http://community.freepascal.org:8080...forum_id=24111

https://forums.embarcadero.com/messa...ssageID=460283
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #3  
Antiguo 05-09-2012
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Pues resulta que para XCode sólo existen los .pas de Firemonkey, pero de dbexpress, nada de nada.

Así que si quieres crear una aplicación para iPad con Delphi XE2 + FireMonkey, puedes olvidarte de usar:

- dbexpress
- livebindings (no estoy seguro al 100%)
- DataSnap (no estoy seguro al 100%)

y de cualquier otro componente que no esté disponible para Free Pascal.

Voy a tener que hacer toda la presentación de los datos "a mano",
creando una instancia de la clase "TSQLite" (definida en SQLite3db.pas de Free Pascal)
y realizar la carga de los datos (sentencias SELECT) tal que así:
Código Delphi [-]
procedure TForm1.CargarDatos; 
{$IFDEF FPC} 
var   SQL, Row: String;   
       DB: TSQLite;   
       SL: Classes.TStringList;   
       NewItem: TListBoxItem;
{$ENDIF} 
begin 
{$IFDEF FPC}   
  DB := TSQLite.Create(Varios.DBFileName);    // Get the records back and list them in the memo   
  SL := Classes.TStringList.Create;   
  SQL := 'select * from basedatos';   
  DB.Query(SQL, SL);    
// Eliminar el nombre de las columnas (primera fila)   
  SL.Delete(0);    
  for Row in SL do   
  begin     
    NewItem := TListBoxItem.Create(FishList);     
    NewItem.Text := UnQuoteStr(Row, '"');     
    NewItem.Font.Family := 'Arial';     
    NewItem.Font.Size := 24;     
    FishList.AddObject(NewItem);   
  end;   
  SL.Free;    
  DB.Free; 
{$ENDIF}
end;

Ejemplo: http://www.youtube.com/watch?v=77HYR...feature=relmfu

PD:Espero que esto oriente a todo aquel que tenga pensado hacer aplicaciones para iPad/iPhone con Delphi XE2 + FireMonkey + SQLIte
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...

Última edición por defcon1_es fecha: 05-09-2012 a las 19:49:34.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
error al ejecutar aplicación yevabas API de Windows 0 02-03-2011 17:43:25
Error ejecutar aplicacion teclilla API de Windows 2 04-04-2008 18:20:41
Error al ejecutar aplicacion Elite237 OOP 2 31-07-2007 10:21:03
Error al ejecutar aplicación creus Varios 2 29-03-2007 11:13:31
Error en al ejecutar aplicacion CARSOFT_AR Varios 1 15-04-2005 21:17:48


La franja horaria es GMT +2. Ahora son las 15:15:23.


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