app.path ¿ como ?

matamala
14 de Noviembre del 2003
tengo un problema de novato.
resulta que yo cuando creo un control el que sea y le aplico cualquier evento, ejemplo:
marchoso1.filename= c: tania iconos baleares.gif.
pero no tengo ni ide de como se hace esto:
marchoso1.filename = app.path & "lo que sealo que sea.gig"
no sé donde ni como hacer referencia al app.path.
me podeis ayudar, gracias de antemano.


sdemingo
14 de Noviembre del 2003
Hola,

por lo que veo en tu ejemplo lo haces bien, no se dónde está tu duda...

De todas formas te aconsejo que hagas esta comprobación antes de utilizar app.path porque varía el valor que devuelve dependiendo del SO.

Dim ruta As String
Dim strbarra As String

strbarra = Right(App.Path, 1)

If strbarra = "" Then
ruta = App.Path + "lo que sealo que sea.gif"
Else
ruta = App.Path + "" & "lo que sealo que sea.gif"
End If

Un saludo
sdemingo

matamala
14 de Noviembre del 2003
lo que no tengo ni idea es de como tengo que decir el valor de app.path, ni de donde e de ponerlo.
porque si lo ago como pone en el pricipio del ejemplo cuando compilo la aplicación si no esta la carpeta c:tanialoquesea no funciona.
espero averme explicado.
de todos modos gracias por tu respuesta.
por cierto el sistema op. que tengo es wxp-prof.

Baltasar
14 de Noviembre del 2003
Matamala:

cuando escribimos APP.PATH, lo que hacemos es referencia a la carpeta donde está situado el ejecutable. Si tu programa está en "c:taniaproyecto.vbp", entonces app.path te devolverá esa dirección, pero si generamos el ejecutable, app.path tendrá el valor de la carpeta donde lo instalemos, incluso puedes tener varias instalaciones de un mismo programa con diferentes carpetas. Lo he explicado bien?

Lo ideal, si tienes archivos/imágenes/etc que necesites para tu aplicación, es que los pongas o en la misma carpeta que el ejecutable (en app.path) o en una subcarpeta dentro de la carpeta del ejecutable (app.path & "carpetafotos")

Si quieres verlo más claro, en un proyecto vacío, pon este código:

Private Sub Form_Load()
Caption = App.Path
End Sub

crea el ejecutable, y hazlo correr desde diferentes carpetas, verás lo que te devuelve.

Saludos.