Bonjour,
J'ai un problème qui semble être lié à mac os x Lion :
GetCurrentDirectory() me renvoie un / tout seul au lieu de me renvoyer le répertoire de l'application.
Du coup, je ne peux charger d'images via LoadImage.
Une idée de ce que je peux faire, s.v.p ?
Merci
EDIT:
Bon ben finalement j'ai utilisé CatchImage, et ça, ça fonctionne mieux.
[Résolu] Répertoires et mac os x Lion
- DjPoke
- Messages : 121
- Inscription : mar. 02/nov./2010 13:53
- Localisation : Corte, Corse, France
- Contact :
[Résolu] Répertoires et mac os x Lion
Dernière modification par DjPoke le lun. 28/nov./2011 6:07, modifié 1 fois.
Re: Répertoires et mac os x Lion
Bonjour,DjPoke a écrit :J'ai un problème qui semble être lié à mac os x Lion :
GetCurrentDirectory() me renvoie un / tout seul au lieu de me renvoyer le répertoire de l'application.
je n'ai pas de mac, mais :
- GetCurrentDirectory() ne renvoie pas le répertoire de l'application, mais le répertoire courant (comme son nom l'indique).
- ProgramFilename() renvoie le nom de l'exécutable, y compris le chemin. Il reste à faire GetPathPart() pour obtenir le répertoire de l'application.
- DjPoke
- Messages : 121
- Inscription : mar. 02/nov./2010 13:53
- Localisation : Corte, Corse, France
- Contact :
Re: Répertoires et mac os x Lion
Merci gnozal, je vais tester de suite.
Edit :
Hélas, à mon avis c'est un probleme lié à OS X Lion.
Ce qui est étrange, c'est que cela marche quand je compile sous PB, mais dès que je crée un executable, il ne trouve plus le dossier.
Il me manque peut être une directive de compilation liée aux droits administrateur alors ?
ReEdit:
Problème résolu de la manière suivante pour mac os x :
currentdir$ contient alors le répertoire de l'application pour mac os x.
Edit :
Hélas, à mon avis c'est un probleme lié à OS X Lion.
Mon programme est dans le répertoire "Documents/Mes Programmes" pour l'instant, et j'essaye de charger des images dans un dossier relatif à celui-ci.GetCurrentDirectory()
Renvoie le chemin du répertoire courant de l'application. Tous les accès aux fichiers sont relatifs à ce répertoire quand un chemin absolu n'est pas spécifié. SetCurrentDirectory() peut être utilisé pour changer le répertoire courant.
Cette fonction renvoie une chaîne vide dans le cas très improbable d'un échec.
Ce qui est étrange, c'est que cela marche quand je compile sous PB, mais dès que je crée un executable, il ne trouve plus le dossier.
Il me manque peut être une directive de compilation liée aux droits administrateur alors ?
ReEdit:
Problème résolu de la manière suivante pour mac os x :
Code : Tout sélectionner
currentdir$=GetCurrentDirectory()
dd$=GetPathPart(ProgramFilename())
If FindString(dd$,GetTemporaryDirectory(),1)=0
SetCurrentDirectory(dd$)
If LCase(Right(dd$,Len("contents/macos/")))="contents/macos/"
SetCurrentDirectory("..")
SetCurrentDirectory("..")
SetCurrentDirectory("..")
currentdir$=GetCurrentDirectory()
EndIf
EndIf