IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

Problème avec GDB et les chemins avec espaces [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Problème avec GDB et les chemins avec espaces
    Bonjour,

    J'utilise LAZARUS 1.6.0, FPC 3.0 sous windows 7 64bits. Par défaut il y a GDB 7.3.20110510.
    Subitement depuis 8 jours, GDB refuse de lancer l’exécutable message : exec-run ..... error 193, alors qu'au paravent GDB fonctionnait correctement dans une même configuration.
    J'ai trouvé la cause de l'erreur -> des espaces dans les chemins.
    En remplaçant les espaces par des '_', il n'y a plus d'erreur ?
    Je ne trouve pas la solution après avoir chercher sur google et autres.

    Pour info supplémentaire, même soucis sous windows 10 depuis 8 jours, je suis tenté de dire qu'une MàJ des OS a causée le désordre.

    Merci d'avance à votre intéressement.

  2. #2
    Responsable Lazarus & Pascal

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Points : 20 855
    Points
    20 855
    Billets dans le blog
    84
    Par défaut
    Citation Envoyé par gfelec Voir le message
    J'ai trouvé la cause de l'erreur -> des espaces dans les chemins.
    Bonjour,

    Le problème a été signalé depuis longtemps, et avec tous les langages de programmation. L'erreur 193 indique que le débogueur ne trouve pas l'exécutable. Après étude, il s'agirait d'une erreur Windows, donc non corrigible depuis Lazarus : elle se produit dans le cas particulier où le chemin contenant l'espace a sa première partie (donc avant l'espace) identique à un fichier.

    Par exemple :

    L'application : C:\mon dossier\monprojet.exe
    Un fichier : C:\mon

    Il n'y a pas d'autre solution que d'éviter les espaces et/ou de vérifier que le nom du chemin ne correspond pas en partie à un fichier existant.
    Ce qui m'étonne en revanche, c'est que cette erreur n'était signalée que pour XP et que sous W10 (Lazarus 1.6), je n'ai pas réussi à la reproduire .

    Cordialement,

    Gilles
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Les espaces dans les noms
    Bonjour,

    Je vous remercie de votre réponse mais ne suis pas tout a fait d'accord avec vous.
    En effet je développe avec LAZARUS et DELPHI et tous mes développements, se trouve sur une autre unité que celle de l'OS par sécurité.
    Dans plusieurs cas je possède des applications qui pilote des cartes électroniques de ma fabrication, et pour avoir un environnement compatible a cela depuis de nombreuses années le répertoire Mes Documents est déplacé sur cette unité de travail. Et cela ne causé aucun problème depuis la version 1.2 de LAZARUS.
    Pour Windows 10 le problème est apparu après une MàJ qui permet de gérer ses appareils en utilisant une adresse MAIL.
    Seulement cette MàJ contient plus d'une quinzaine de fichiers et la désinstallation de tous n'a pas remis mon environnement dans son état précédant.
    De ce fait je suis revenu à SEVEN mais des inscriptions ont dus avoir lieu sur l'unité de travail et le problème est le même.
    Je soupçonne que les noms de fichiers aient été modifiés sur l'unité de travail ou la résolution des noms entre la partie HARD et OS.
    J'ai même réinstallé LAZARUS 1.6.0 de base, rien y fait.
    Le soucis des espaces avaient été résolut avec les noms long et l'encodage depuis XP. Mais aujourd'hui j'ai peine à croire que nous sommes revenu en arrière.
    Ce problème est nouveau avec WINDOWS 7 et 10, mais comment le résoudre, cela n'est pas encore apparue avec vous.
    Je bataille aussi côté virus ou autre cochonnerie du genre.

    Sous interpréteur GDB saisie à la main :
    F:/project1.exe -> Ok
    F:/mes documents/project1.exe -> erreur 193 ?

    Cordialement.

    Gérard.

  4. #4
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 700
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 700
    Points : 15 044
    Points
    15 044
    Par défaut
    Salut,

    je rebondis juste sur ce point, car ça, c'est bien connu et la solution aussi :
    Citation Envoyé par gfelec Voir le message
    Sous interpréteur GDB saisie à la main :
    F:/project1.exe -> Ok
    F:/mes documents/project1.exe -> erreur 193 ?
    Sous DOS, avec tout un tas de lignes de commande ou de lignes de code (l'exemple qui me vient en tête c'est l'appel de ShellExecute), s'il y a des espaces dans le chemin on l'encadre avec des double quotes !
    Essaye "F:/mes documents/project1.exe" ou F:/"mes documents/project1.exe" (ces / me perturbent : dans le monde Windows ce n'est pas \ ?)
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Bonjour Jipété,

    Perdu j'ai testé et cela ne fonctionne pas exemple sous GDB en mode console :
    exec-file "F:/mes documents/project1.exe" -> Ok
    Run retourne -> starting program: F:/mes documents/project1.exe
    Error creating process F:/mes documents/project1.exe, <error 193>
    Ont peut voir que les " ne figure pas dans la réponse.
    De toute façon, il aurait fallu adapter la solution au sein de LAZARUS.
    Pour info je développe depuis 1983 en assembleur, pascal, html et java. les bidouilles d'écriture pour arriver a mes fins ça me connait.
    Je suis tenté de prendre le code source de GDB 7.12 pour l'adapter, mais beaucoup de travail en vue pour trouver la parade.

    Merci tout de même Jipété.

    Gérard

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Je continue mes tests.

    Il s’avère qu'un répertoire nommé "c:/mes documents" ne cause pas d'erreur en utilisant le DEBUGGER sous LAZARUS (exécution avec F9).
    Par contre GDB en console = error 193.

    J'ai poussé le vice avec "C:\Les documents a gerard" ça marche ??????

    J'en déduit, que le problème n'est pas vraiment causé par les espaces, mais le fait que cela soit sur le lecteur f:

    A suivre

  7. #7
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 700
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 700
    Points : 15 044
    Points
    15 044
    Par défaut
    Citation Envoyé par gfelec Voir le message
    J'en déduis que le problème n'est pas vraiment causé par les espaces, mais le fait que cela soit sur le lecteur f:

    A suivre
    Lecteur "f:", disque externe ? Si oui, formattage NTFS ou FAT32 ?
    Si NTFS c'est incompréhensible ; si FAT32 alors peut-être que les noms de fichiers longs ne sont pas convertis de la même manière dans ce mode que dans NTFS qui, avec ses ADS, peut peut-être s'en sortir autrement.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Lecteur "f:", disque externe ? Si oui, formattage NTFS ou FAT32 ?Lecteur
    Bonjour jipété,

    Le lecteur f: est un disque interne de 1Tera formaté NTFS non compressé et connecté sur un port SATA.
    Je ne pense pas que le disque par lui même soit en cause, mais son accès a travers windows 7 depuis son utilisation avec Windows 10 depuis un peu plus d'une semaine.

    1ére Anomalie
    Voir mon précédant texte :
    LAZARUS sait démarrer GDB depuis "C:\Les documents a gerard"
    Alors que cela n'est pas possible en utilisant GDB en mode console ?
    (Il est possible qu'il me manque des infos pour pouvoir le faire).

    2 eme Anomalie
    LAZARUS sait démarrer GDB depuis "C:\Les documents a gerard"
    Mais pas "F:/mes documents/project1.exe"

    3 eme Anomalie
    J'utilise ce lecteur f: qui est interne au PC depuis plusieurs années comme disque de travail, depuis LAZARUS 1.4 sans problème ?
    Tout mon travail, a travers l'ensemble de mes outils accède a "F:mes documents" depuis de nombreuse années (sortie de DELPHI 2010)

    Mieux encore : LAZARUS accepte "F:Toto docs"
    Il me semble que cela tourne autour du répertoire "F:mes documents" le seul mis en défaut.

    A suivre.

  9. #9
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 700
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 700
    Points : 15 044
    Points
    15 044
    Par défaut
    Yep !
    Citation Envoyé par gfelec Voir le message
    Il me semble que cela tourne autour du répertoire "F:mes documents" le seul mis en défaut.
    Pb de droits sur ce répertoire suite à màj de (cette cochonnerie de) Windows ?
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Je persiste,

    Je viens de découvrir un phénomène étrange sur le disque C: il est possible de créer un répertoire "Mes", alors qu'il est impossible de le faire sur F:.
    Est-ce le fait qu'il existe déjà un "Mes Documents".
    De plus le debugger avec LAZARUS provoque une erreur 193 pour tout répertoire sur F: commençant par "Mes" espace puis quelque chose.
    J'ai fait une analyse complète de tous les lecteurs par BITDEFENDER pas d'intrus.
    De même pour ZHPCLEANER.
    Des sous répertoires de "Mes Document" sont cadenassés un coup oui un coup non ?
    F: n'est pas un lecteur réseau.

    Je séche.

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Je répond à mes questions.

    1 ére tentative de solution :
    Sous dos commande ->– TAKEOWN /F F:\Mes Documents\*.* /R
    Redonne a tous les fichier le nom de l'utilisateur qui lance la commande.
    Ensuite il faut utiliser Icalc pour savoir si d'autre utilisateurs ont des droits sur ce repertoire.
    Puis toujours avec Icalc supprimer tous les utilisateurs indésirables.
    Je ne donne pas le détail de cette commande, trop dangeureuse cela peut mener à la pertes des données.
    Résultat Nul, toujours impossible de créer un répertoire "Mes".

    2éme tentative :
    Je craie un répertoire exemple "Mon Travail" et je déplace tous les sous répertoires de "Mes Documents" vers le nouveau.
    Teste GDB avec LAZARUS Bingo.
    Je supprime le répertoire "Mes Documents" vide mais toujours cadenassé.

    Pas satisfait de ne pas connaitre la cause d'interdiction de créer un répertoire "Mes".
    Je tente à nouveau et la par magie windows me dit fichier existant.
    Je parcours la racine de "Mon Travail" et je trouve plusieurs fichiers sans extension dont un qui s'appelle "Mes" tout cours.
    Je le détruit et renomme "Mon Travail" en "Mes" -> OK dont je remets "Mes Documents"
    Et là M A G I E je teste GDB avec LAZARUS et Super Bingo.

    Moralité windows 10 cré des fichiers cachés dans certains répertoires qui servent à .... l'histoire nous le dira peut être un jour.

    Une semaine de galère.

    Gérard

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/12/2012, 12h13
  2. Les pointeurs avec gdb
    Par emprex dans le forum Débuter
    Réponses: 0
    Dernier message: 30/01/2012, 12h31
  3. [Interface] Problème de DrawCell sur les StringGrid avec le style gdsGradient
    Par getz85 dans le forum C++Builder
    Réponses: 0
    Dernier message: 15/02/2010, 12h25
  4. Problème d'espaces dans les chemins avec Cygwin
    Par destructive dans le forum Applications et environnements graphiques
    Réponses: 1
    Dernier message: 14/04/2008, 18h48
  5. Réponses: 18
    Dernier message: 29/08/2006, 00h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo