Ecco il mio problema 8spero di riuscire a spiegarlo bene):
Ho un gruppo di file ai quali devo accedere. sono in un directory contenute nella directory in cui ho il progetto.
Tutto bene fino a quando accedo da Gambas, ad esempio
FOR EACH File IN Dir("./immagini/img", "*.jpg").Sort()
Fornisce in modo corretto tutti i nome dei file jpg contenuti in Gambas/MioProgetto/immagini/img.
Viceversa, se voglio poi stampare uno di questi file con
Miastampa = "./immagini/img/" & nomefile
SHELL ("lpr " & Miastampa)
Non trova il file (nonostante, ovviamente, ci sia) perché la shell ha, come directory di default, la mia home.
Ho risolto, temporaneamente, il problema specificando il path assoluto (a partire dalla mia home), anziché relativo, in questo modo:
Miastampa = "./Gambas/MioProgetto/immagini/img/" & nomefile
SHELL ("lpr " & Miastampa)
La soluzione,comunque, è temporanea perché un progetto così non è, ovviamente, portabile.
Come si può risolvere definitivamente il problema?
Grazie in anticipo!
Per ovviare al tuo problema puoi interrogare
Application.Path
Che ti restituisce la cartella dove risiede il progetto.
Quindi con
Application.Path &/ "immagini/img"
Avrai la cartella che desideri....
DIM Percorso AS String
Percorso = User.home &/ ".MiaCartella"
IF NOT Exist(Percorso) THEN
MKDIR Percorso
ENDIF