Ayuda para abrir fichero pps desde programa en php

Experto soy yo otra vez y algo estoy haciendo mal.
El archivo que quiero abrir desde director es pepe.pps (una presentación)
Y pongo esto
on exitFrame me
pepe=the moviePath &"pepe.pps"
OK = baOpenFile(pepe,"maximised")
end
Y me da error. ¿Qué hago mal?

1 respuesta

Respuesta
1
Para que funcione ese código tienes que colocar el archivo pepe.pps en la misma carpeta que el proyector de tu aplicación, o que el archivo .dir. Cuando pones the moviePath se sustituye por esa ruta. Si tienes tu aplicación en el raíz de la unidad, por ejemplo: "D:\MiProyector.exe" y el archivo pepe.pps lo tienes en "D:\Presentaciones\pepe.pps", tienes que poner lo siguiente:
pepe = the moviePath & "Presentaciones\pepe.pps"
Cuando ejecutas baOpenFile, te tiene que devolver un valor mayor o igual a 32. En caso contrario se ha producido un error. Los códigos de errores los tienes en la documentación de Buddy Api, te los pongo aquí.
0 System was out of memory.
2 File was not found.
3 Path was not found.
5 Sharing or network-protection error.
6 Library required separate data segments for each task.
8 There was insufficient memory to start the application.
10 Windows version was incorrect.
11 Executable file was invalid. Either it was not a Windows application or there was an error in the .EXE image.
12 Application was designed for a different operating system.
13 Application was designed for MS-DOS 4.0.
14 Type of executable file was unknown.
15 Attempt was made to load a real-mode application (developed for an earlier version of Windows).
16 Attempt was made to load a second instance of an executable file containing multiple data segments that were not marked read-only.
19 Attempt was made to load a compressed executable file. The file must be decompressed before it can be loaded.
20 Dynamic-link library (DLL) file was invalid. One of the DLLs required to run this application was corrupt.
21 Application requires 32-bit extensions.
26 A sharing violation occurred.
27 The filename association is incomplete or invalid.
29 The DDE transaction failed.
30 The DDE transaction could not be completed because other DDE transactions were being processed.
31 There is no application associated with the given filename
No me canso de responderte, estoy encantado.
Me refiero a que Director cuando está ejecutando un código lingo y encuentra "the moviePath", lo sustituye por la ruta donde se encuentre la película que estas ejecutando. Esto te permite colocar la película en cualquier carpeta que quieras y te seguirá funcionando, evita tener que poner la ruta completa donde se encuentre la película.
Imagina que pones:
pepe = "D:\Presentaciones\pepe.pps"
Cuando grabes la película en cd y lo ejecutes desde la unidad E:, te dará error porque lo esta buscando en D:. Pero si pones:
pepe = the moviePath & "Presentaciones\pepe.pps"
Va a coger siempre bien la ruta. Lo cogerá en D: cuando el lector de cd sea D: y pondrá E: cuando esté en esa unidad el cd.
De lo único que debes preocuparte es de la ruta relativa. Es decir, si tienes tu película en una carpeta llamada Película, y la presentación está dentro de la carpeta Película en una llamada Presentaciones, cuando hagas el proyector y lo ejecutes, debes tener la misma estructura.
Si te da errores, puedes mostrar el valor devuelto por baOpenFile con el siguiente código (te lo pongo completo junto con el anterior):
On exitFrame me
pepe=the moviePath & "pepe.pps"
OK = baOpenFile(pepe,"maximised")
alert ("Error: " & OK )
end
Si muestra un número menor que 32, se ha producido un error.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas