Accueil > Forum > > > > Directory
Directory
mercredi 6 février 2008 à 16:35:56 |
Directory

cincap
|
Bonjour à toutes et à tous, Voici mon problème, j'ai un logiciel qui lors de l'installation vérifie si un dossier contenu dans son répertoire existe. Si pas il le crée. Code sans les guillemets : "chemappli := ExtractFilePath(Application.ExeName);" "if not DirectoryExists('Plans') then mkdir('Plans');" Tout fonctionne sur Win XP mais sur Vista, le dossier est bien créé dans le répertoire de l'application mais si je sauve un plan, Vista recrée le dossier sur la racine. Y a t'il une explication que je n'aurai pas saisi. Merci d'avance si quelqu'un a une idée du problème. @+, Cincap mailto:
|
|
mercredi 6 février 2008 à 16:52:46 |
Re : Directory

BernieNoel68
|
Réponse acceptée !
Je ne sais pas si j'ai bien compris, mais peut etre avec ça:
if not DirectoryExists(cheminappli + 'Plans') then mkdir(cheminappli + 'Plans');
|
|
mercredi 6 février 2008 à 17:00:14 |
Re : Directory

cincap
|
Bonjour, Je n'ai pas besoin de reprendre le chemin "chemappli" puisqu'il est en variable, je pense que c'est plutôt un problème de Vista puisque cela fonctionne correctement sur Win Xp pack1et 2. Merci de ta réponse. @+, Cincap mailto:
|
|
jeudi 7 février 2008 à 04:27:08 |
Re : Directory

f0xi
|
Réponse acceptée !
"Je n'ai pas besoin de reprendre le chemin "chemappli" puisqu'il est en variable" et alors ? tu crois que ça suffit ? que delphi "devine" ce que tu compte faire de cette variable ? "pense que c'est plutôt un problème de Vista puisque cela fonctionne correctement sur Win Xp pack1et 2" ben tiens ... c'est bien beau d'incriminer Windows ... mais quand on se trompe dans une programme on peu toujours dire que c'est "a cause du systeme" ... { SafeCreateDir Crée un repertoire grace a l'api windows si ce repertoire n'existe pas.
parametres : DirName [i] string, chemin complet du repertoire a créer exemple: C:\Program Files\MonProgramme\Ressources "Ressources" etant le repertoire a créée.
retour : boolean, true si le repertoire existe ou a pus etre créé sinon false. SafeCreateDir affiche une boite d'erreur indiquant le numero d'erreur et le message systeme correspondant. } function SafeCreateDir(const DirName: string): boolean; var MsgErr : string; ErrCode : cardinal; begin result := DirectoryExists(DirName); // verifie la presence de DirName if not result then // non ? begin result := CreateDirectory(PChar(DirName), nil); // on crée DirName if not result then // erreur ? begin ErrCode := GetLastError; // recupere le code erreur MsgErr := 'Erreur [' + IntToStr(ErrCode) + '] creation du dossier :' + #13#10 + '(' + DirName + ')' + #13#10#13#10 + SysErrorMessage(ErrCode); MessageDlg(MsgErr, mtWarning, [mbOk], 0); // affiche l'erreur end; end; end;
procedure TForm1.FormCreate(Sender: TObject); var DirName : string; begin DirName := ExtractFilePath(ParamStr(0))+'\Plans'; // notre dossier SafeCreateDir(DirName); // test x:\repertoire\monprogramme\plans SafeCreateDir('//:kapoué*'); // test un dossier erroné end;
|
|
jeudi 7 février 2008 à 07:04:31 |
Re : Directory

cincap
|
Bonjour à toutes et à tous,
@ Foxi, merci de ta longue explication comme toujours appréciée, tu as raison mais j'attendais de faire l'essai ce jour sur le Pc du voisin qui tourne sur Vista.
En effet, j'avais appliqué l'explication du membre BernieNoel68 que je remercie encore.
D'autant que dans le reste du programme , j'avais codé le chemin comme proposé par ce membre pour un autre dossier.
Méa Culpa.
@+,
Cincap
mailto:
|
|
jeudi 7 février 2008 à 14:05:17 |
Re : Directory

Loda
|
salut,
j'ai eut un problème avec Vista (beta):
je charge un fichier de config qui est dans un sous-dossier de l'applic: pas de problem. je modifie le fichier et je le sauve: pas de problème. le fichier sur le disque n'est pas modifié.
après quelques recherches et test: il semble que vista te fasse croire que tas acces au fichier dans le dossier programm file, mais il fait les modif dans un cache qui n'est jamais écrit sur le disque.
D'après MS, il exist deux solutions: - sauver tes données d'application dans ApplicationData. - obetnir les droits d'écriture dans programmFile (j'ai même pas essayé)
A+
Loda
Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
|
|
jeudi 7 février 2008 à 17:02:41 |
Re : Directory

cincap
|
Salut Loda, Tu rejoins ma première impression sur Vista (droits ect...), néanmoins je dois encore faire le test chez mon voisin. Dans Vista, le répertoire "Program Files" n'existe pas, il est remplacé par "Program". Je pense que la solution des membres BernieNoel68 et Foxi doit fonctionner telle quelle. Sinon merci aussi pour ta réponse.  @+, Cincap mailto:
|
|
mardi 26 février 2008 à 20:06:49 |
Re : Directory

cincap
|
Bonsoir à toutes et à tous,
J'ai donc essayé le code de BernieNoel68 sur le pc du voisin équipé de Vista et cela ne fonctionne pas.
J'ai donc utilisé le code de l'ami Foxi mais je n'ai pas encore eu l'occasion de le tester sur le pc avec Vista, sur le mien cela fonctionne comme celui de BernieNoel.
En supposant que dans le dossier créé, je dois sauver une image, plutôt que de faire ceci (en rouge) :
Function TCameras.SaveJpeg1(Camera:integer):string; var Jpg1 : TjpegImage; FileName:string; chappli : String; begin Result:=''; while Image1.Tag<>0 do Application.ProcessMessages; Image1.Tag:=1; afficheheure1(camera,20);
Jpg1 := TjpegImage.Create; Jpg1.Assign(image1.Picture.Bitmap); Jpg1.CompressionQuality := 80; inc(Parcam[Camera].IndexImage); FileName:= chappli + 'Detection\' +'CAM'+inttostr(Camera)+' '+'IMG' + inttostr(Parcam[Camera].IndexImage)+ '.jpg'; Jpg1.SaveToFile(FileName); Jpg1.Free; Image1.Tag:=0; Result:=Filename; end;
Je pourrai peut être faire ceci :
FileName:= ExtractFilePath(ParamStr(0))+ '\Detection'+ 'CAM' + inttostr(Camera)+ ' ' + 'IMG' + inttostr(Parcam[Camera].IndexImage) + '.jpg';
Qu'en penser vous ?
@+ Cincap
mailto:
|
|
Cette discussion est classée dans : problème, répertoire, application, dossier, directory
Répondre à ce message
Sujets en rapport avec ce message
Suppression d'un dossier impossible [ par ludo2223 ]
Bonjour à tous,Je travaille sur une application utilisant des bases de données Paradox.Lorsque l'utilisateur supprime un élément depuis l'application
Problème de plantage entre Delphi 4 et Logmein [ par marcofelipe ]
Bonjour,Voilà en gros ce qui se passe.Je développe une application avec Delphi 4 avec une icône dans le systray.Lorsque j'essaie de me connecter d'un
Connection bases de données [ par tmsource ]
Salut tous le monde !Bon voila, mes amis j'ai un gros problème avec mon application, je m'explique :Je travaille sur une application de gestion avec D
impossible d'intégrer un UNIT dans mon projet, problème d'exécution [ par bartmaul3000 ]
Bonjour, Je suis étudiant en informatique et je développe en delphi une application formulaire avec de la POO. Je dispose d'un unit : 'U_joueur.pas' d
Quel identificateur dans clé de registre correspondant à un objet Fichier [ par octavianus_1 ]
Bonjour à tous, Je veux pourvoir lancer une application de la manière suivante: 1° on sélectionne un fichier ou un répertoire 2° sur clic droit de la
problème de résolution [ par 0redou ]
Bonjour à tous Je viens juste de développer ma première application. Quand j'éxecute l'application sur mon pc, elle s'affiche à plein écran mais quan
Mon application empêche Windows de se fermer [ par Aurel184 ]
Bonjour, j'ai réalisé une petite application qui me sert à dialoguer avec des vidéo-projecteurs. Cette application créé donc des connexions socket.
Problème d'installation d'une application réseau [ par rovicuth ]
Salut à tous J'ai développé une application de gestion de la facturation qui doit tourner en réseau sur 5 machines. J'ai déjà créé la procédure d'ins
une application multi dossier [ par alimeziani ]
bonjour, j'aimerais cree une application avec des dossier afin de faire de different gestion mais je ne sait pas comment faire pour permettre a l'util
TOleContainer et Office 2007 [ par devil2407 ]
Bonjour, Cela fait déjà un petit bout de temps que je suis sur ce problème et je ne sais pas comment le résoudre. Situation : Mon application tourne
Livres en rapport
|
Derniers Blogs
[SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|