Page 1 sur 1
[R] Problème avec compilateur automatique ...
Posté : mer. 04 mars 2015 22:13
par azerty2699
Bonjour,
(encore une fois) j'utilise l'UDF suivante (_compile.au3) pour compiler un programme automatiquement :
Code : Tout sélectionner
Func _compile($source, $dest)
Run(@ProgramFilesDir & "\AutoIt3\Aut2Exe\Aut2exe.exe /in """ & $source & """ /out """ & $dest & ".exe""" & " /icon " & "icone.ico")
EndFunc
je l'utilise ensuite dans un autre programme :
Code : Tout sélectionner
$path = FileSelectFolder("Choose a folder", "")
_compile(@UserProfileDir & "\AppData\Local\AutoIt v3\Temp\program.au3", $path)
Je m'attends donc à ce que le programme program.au3 soit compilé dans le répertoire $path, mais ça ne marche pas.
Le problème vient de $path, car si je remplace $path par un répertoire ça fonctionne.
Une idée ?
Re: [...] Problème avec compilateur automatique ...
Posté : mer. 04 mars 2015 23:10
par Tlem
Bonsoir.
Il serait bienvenu d'avoir un minimum de réflexion.
Votre erreur est flagrante. Vous ne devriez pas avoir besoin d'aide pour ce genre de chose.
Si je vous demande de me passer la bouteille est que vous me donnez un verre, ça ne va pas aller .... ^^
Envoyé de mon appareil mobile avec Tapatalk.
Re: [...] Problème avec compilateur automatique ...
Posté : mer. 04 mars 2015 23:18
par azerty2699
$path n'est-il pas une chaîne de caractère ?
Lorsque je lis $path (avec MsgBox) j'obtiens bien un truc du genre "C:\users\test\desktop" !
Re: [...] Problème avec compilateur automatique ...
Posté : mer. 04 mars 2015 23:21
par Tlem
Et le deuxième paramètre de votre fonction _compile(), il attend quoi ? ^^
Pas un verre en tout cas !!!
Envoyé de mon appareil mobile avec Tapatalk.
Re: [...] Problème avec compilateur automatique ...
Posté : mer. 04 mars 2015 23:28
par azerty2699
Il attend la destination, qui est une chaîne de caractères n'est-ce-pas ?
Or $path n'est-il pas une chaîne de caractères ?
Re: [...] Problème avec compilateur automatique ...
Posté : mer. 04 mars 2015 23:37
par Tlem
$Path est bien une chaîne de caractères, mais pas formatée comme il le faut pour le deuxième paramètre de _compile(). A vous de relire le code et de comprendre votre erreur.
Envoyé de mon appareil mobile avec Tapatalk.
Re: [...] Problème avec compilateur automatique ...
Posté : mer. 04 mars 2015 23:48
par azerty2699
Que veut dire "formatée" pour une chaîne de caractères ? Il y a des formats de chaînes de caractères ??
Dans ce cas je n'y connais rien.
Le code je l'ai relu 100 fois sans comprendre.
Re: [...] Problème avec compilateur automatique ...
Posté : jeu. 05 mars 2015 00:00
par Tlem
Hé bien remplacez la variable $Path par votre chaîne et lisez ce que ça donne avec la suite ...
Je ne repondrais pas plus.
Votre problème est franchement des plus simple, il suffit d'un tout petit peux de réflexion.
Dormez et relisez demain matin.
Bonne nuit (en tout cas moi je vais dormir).
Envoyé de mon appareil mobile avec Tapatalk.
Re: [...] Problème avec compilateur automatique ...
Posté : jeu. 05 mars 2015 00:07
par orax
Utilise ConsoleWrite par exemple pour voir rapidement la valeur d'une variable. Ce qui s'affiche dans la console de SciTE est ce qui est envoyé à Run(). J'ai juste recopier la ligne, je n'ai rien changé.
Code : Tout sélectionner
$path = FileSelectFolder("Choose a folder", "")
_compile(@UserProfileDir & "\AppData\Local\AutoIt v3\Temp\program.au3", $path)
Func _compile($source, $dest)
;~ Run(@ProgramFilesDir & "\AutoIt3\Aut2Exe\Aut2exe.exe /in """ & $source & """ /out """ & $dest & ".exe""" & " /icon " & "icone.ico")
ConsoleWrite(@ProgramFilesDir & "\AutoIt3\Aut2Exe\Aut2exe.exe /in """ & $source & """ /out """ & $dest & ".exe""" & " /icon " & "icone.ico" & @CRLF)
EndFunc ;==>_compile
Re: [...] Problème avec compilateur automatique ...
Posté : jeu. 05 mars 2015 22:02
par azerty2699
@Orax, voilà, c'est ce que j'ai fait, j'ai exécuté le code suivant :
Code : Tout sélectionner
$path = FileSelectFolder("Choose a folder", "")
_compile(@UserProfileDir & "\AppData\Local\AutoIt v3\Temp\program.au3", $path)
Func _compile($source, $dest)
;~ Run(@ProgramFilesDir & "\AutoIt3\Aut2Exe\Aut2exe.exe /in """ & $source & """ /out """ & $dest & ".exe""" & " /icon " & "icone.ico")
ConsoleWrite(@ProgramFilesDir & "\AutoIt3\Aut2Exe\Aut2exe.exe /in """ & $source & """ /out """ & $dest & ".exe""" & "" & @CRLF)
EndFunc ;==>_compile
Dans la console, voilà ce que je vois :
http://gyazo.com/9b324678e0e4a6361239ed644e5334d3
Ainsi, je ne vois pas l'erreur : la source et la destination sont bien entre guillemets tous les deux !
Re: [...] Problème avec compilateur automatique ...
Posté : jeu. 05 mars 2015 22:26
par jguinch
@azerty2699 : je ne sais pas si tu l'as remarqué, mais je préfère lever le doute :
Dans sa forme actuelle, le paramètre $dest correspond au chemin + nom du fichier de sortie sans l'extension .exe.
Si tu as choisis le bureau comme destination (ce qui est le cas sur ta capture d'écran), tu auras en sortie un fichier qui s'appellera desktop.exe dans c:\Users\azerty2699
Re: [R] Problème avec compilateur automatique ...
Posté : jeu. 05 mars 2015 22:46
par azerty2699
Merci, résolu.