Deutsch English Français Italiano |
<As32lgMMpUUm8zw8mfbxlR1lU1Y@jntp> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.mixmin.net!weretis.net!feeder8.news.weretis.net!pasdenom.info!from-devjntp Message-ID: <As32lgMMpUUm8zw8mfbxlR1lU1Y@jntp> JNTP-Route: nemoweb.net JNTP-DataType: Article Subject: Re: =?UTF-8?Q?Proc=C3=A9dure=20ARGV?= References: <6776c99f$0$12931$426a74cc@news.free.fr> <6778159f$0$513$426a74cc@news.free.fr> <677826a2$0$29717$426a74cc@news.free.fr> <Q9EaQy098-PVA5Z7zAi1RLKy4XQ@jntp> <mIBAMcSyY7LpBCtFdtvLpUFiqJc@jntp> <67785429$0$375$426a74cc@news.free.fr> <n2atGw7UckVKd_awDmn5Fdq4Hf8@jntp> <677866ee$0$12914$426a34cc@news.free.fr> <6778765b$0$29730$426a34cc@news.free.fr> <6779084b$0$407$426a74cc@news.free.fr> Newsgroups: fr.comp.sys.atari JNTP-HashClient: m_3aRkj6MdY8wPaXhUTu6MMrXY0 JNTP-ThreadID: 6776c99f$0$12931$426a74cc@news.free.fr JNTP-Uri: http://nemoweb.net/?DataID=As32lgMMpUUm8zw8mfbxlR1lU1Y@jntp User-Agent: Nemo/1.0 JNTP-OriginServer: nemoweb.net Date: Sat, 04 Jan 25 14:32:44 +0000 Organization: Nemoweb JNTP-Browser: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:133.0) Gecko/20100101 Firefox/133.0 Injection-Info: nemoweb.net; posting-host="13acd9d91f9d01fb4f6f8416f83971f20dd355ef"; logging-data="2025-01-04T14:32:44Z/9163312"; posting-account="69@nemoweb.net"; mail-complaints-to="julien.arlandis@gmail.com" JNTP-ProtocolVersion: 0.21.1 JNTP-Server: PhpNemoServer/0.94.5 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-JNTP-JsonNewsGateway: 0.96 From: OL <ol.google@lutece.net> Bytes: 3433 Lines: 58 Le 04/01/2025 à 11:07, Good Old TOS a écrit : > Hello, > > pb résolu grâce à Olivier! Un grand merci! > Voilà le code fonctionnel: > long XPexec_eas(int mode, char* full_name, char* cmdline) > { > /* A BIG thnaks to Olivier Landemarre ! */ > char buffer[1500] ; > char eas_cmd[128] ; > char* pt_env = buffer ; > char* source ; > char* envp = _BasPag->p_env ; > > /* Program Environment is required else it fails (e.g. err 27 with > curl) */ > while( *envp ) > { > while ( *envp ) *pt_env++ = *envp++ ; > *pt_env++ = 0 ; > envp++ ; > } > > *pt_env++='A' ; > *pt_env++='R' ; > *pt_env++='G' ; > *pt_env++='V' ; > *pt_env++='=' ; > *pt_env++ = 0 ; > *pt_env++ = ' ' ; /* These 2 are important else */ > *pt_env++ = 0 ; /* First parameter is ignored ! */ > while ( *cmdline ) > { > if ( *cmdline == ' ' ) *pt_env++ = 0 ; /* New > parameter/value */ > else if ( *cmdline == '\\' ) *pt_env++ = '/' ; /* Change \ to / */ > else *pt_env++ = *cmdline ; /* Next char of > parameter/value */ > cmdline++ ; > } > > *pt_env++ = 0 ; > *pt_env = 0 ; > eas_cmd[0] = 127 ; > return Pexec( mode, full_name, eas_cmd, buffer ) ; > } > > Il manquait un espace + \0 après "ARGV=" avant la génération des paramètres. Yep cool une fois j'ai passé une semaine a chercher un bug totalement stupide de niveau débutant, j'avais mis mis: if(condition = 1) ... au lieu de if(condition == 1) ... !!!! J'ai eu beau relire 1000 fois le code je ne voyais pas Bon là j'ai du tester avec un petit logiciel écrit il y a 30 ans pour voir ce qui était passé à l'application sinon je n'aurais pas trouvé pourtant c'est du C classique mais on ne gère pas cela tous les jours!