[R] Problème de codage d'une fonction DOS en Autoit.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

[R] Problème de codage d'une fonction DOS en Autoit.

#1

Message par Boulanza »

Bonjour,
J'ai un souci lors de codage d'une fonction dos en Autoit.
"Ultimate Packer for eXecutables (UPX)" sous DOS elle marche très bien:
C:\upx.exe -9 TEST.DLL
Codée en autoit ça ne marche pas.
NB: Le script se lance normalement sans message d'erreur.
Pour cela je sollicite votre aide. Merci

Code : Tout sélectionner

Local $fileDll =  @ScriptDir&("\TEST.dll")
Local $program = @ScriptDir&"\upx.exe"
Local $Appli3 = "-9"
Local $param = $program&" "&$Appli3
Local $fonction= ($param&" "& $fileDll)
MsgBox(0, "test", $fonction)
Run($fonction,"","",@SW_HIDE)
Modifié en dernier par Boulanza le jeu. 21 janv. 2016 15:13, modifié 5 fois.
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#2

Message par jguinch »

Essai avec Run(@ComSpec & " /k " & $fonction) et dis-nous ce qui s'affiche dans la fenêtre DOS.
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#3

Message par Boulanza »

Merci pour votre aide...
Tout simplement c:\>
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#4

Message par jguinch »

Qu'affiche ConsoleWrite($fonction) ?
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#5

Message par Boulanza »

En exécutant msdos voici se qui s'affiche sur l'écran noir:

c:\>upx.exe -9 TEST.dll

UPX est un outil incroyablement parfait pour compresser les .Dll et les .exe. En plus de cela, il a une utilité inédite primordiale en faveur aux scripts compilés par AutoIt (après compression sous UPX), je ne peux dire plus: à vous de découvrir....!!???
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#6

Message par jguinch »

Non, c'est impossible que ça t'affiche ça, puisque TEST.DLL devrait être précédé du chemin que tu as défini à @ScriptDir.

Et ça, ça marche ?

Code : Tout sélectionner

Run(@ScriptDir & '\upx.exe -9 "' & @ScriptDir& '\TEST.dll"')
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#7

Message par Boulanza »

Je vous assure que c'est le résultat lors de l'execution de cmd.
jguinch télécharger UPX et faites le test vous allez être surpris...
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#8

Message par jguinch »

Upx fonctionne très bien chez moi, depuis toujours.

Ca devient désespérant... :roll:
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#9

Message par Boulanza »

Run(@ScriptDir & '\upx.exe -9 "' & @ScriptDir& '\TEST.dll"')
Résultat du test: Sans effet !!
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#10

Message par orax »

Et ceci ?

Code : Tout sélectionner

#include <WinAPI.au3>
$iRet = RunWait(@ScriptDir & '\upx.exe -9 "' & @ScriptDir & '\TEST.dll"')
If @error Then
    ConsoleWriteError(_WinAPI_GetLastErrorMessage() & @CRLF)
Else
    ConsoleWrite("upx a retourné le code : " & $iRet & @CRLF)
EndIf
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#11

Message par Boulanza »

Non plus !!
Pas de message d'erreur.
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#12

Message par Boulanza »

jguinch, vous faites allusion à: "Ultimate Packer for eXecutables (UPX)" sous DOS?
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#13

Message par orax »

Mon code retourne forcément quelque chose dans la console. Il faut l'exécuter depuis SciTE.
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Problème de codage d'une fonction dos en Autoit.

#14

Message par jguinch »

Je confirme que ça marche avec RunWait(@ScriptDir & '\upx.exe -9 "' & @ScriptDir & '\Test.exe"'), en utilisant UPX que j'ai téléchargé ici : http://upx.sourceforge.net/#downloadupx
Le problème se situe entre le clavier et le fauteuil :wink:
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction DOS en Autoit.

#15

Message par Boulanza »

Bonjour,
J'ai téléchargé deux versions: upx391d et upx391w du lien: http://upx.sourceforge.net/#downloadupx.
J'ai testé sur Windows 10 avec:
RunWait(@ScriptDir & '\upx.exe -9 "' & @ScriptDir & '\Test.exe"')
ne marche pas: pas de réaction.
Je vais testé sur Windows 7 puis je reviens vers vous.
Cordialement.
Modifié en dernier par Boulanza le mer. 20 janv. 2016 14:00, modifié 1 fois.
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction DOS en Autoit.

#16

Message par Boulanza »

Bonjour,
Oui, cher jguinch vous avez raison :
RunWait(@ScriptDir & '\upx.exe -9 "' & @ScriptDir & '\Test.exe"')
Marche parfétement sous upx391w sur Win : xp, vista, 7 et 8.1 mais pas sur w 10.
Pour mes testes j'ai utilisé UPX: 'MS-DOSupx391d.zip DOS/i386' qui ne marche pas sous Windows en ligne de commande, autrement il marche parfaitement sous Win 10.
Merci infiniment à vous tous pour votre aimable compréhension.
Cordialement.
Modifié en dernier par Boulanza le mer. 20 janv. 2016 14:03, modifié 1 fois.
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [R] Problème de codage d'une fonction DOS en Autoit.

#17

Message par Boulanza »

Bonjour,
Je reviens encore une fois vers vous, mais cette fois pour résoudre un petit problème de compréhension de " et ' , comme décrit ci-dessous:

Code : Tout sélectionner

Local $program = @ScriptDir&"\upx.exe"
Local $Appli3 = "-9"
Local $Source = "MonDossier"
Local $DirFile = "\Test.dll"
$Resultat = $Source&$DirFile

là ça marche avec [color=#0000FF]"[/color] en plus, svp pourquoi ?
RunWait(@ScriptDir & '\upx.exe -9 [color=#0000FF]"[/color]' & @ScriptDir & '\'&$Resultat) 

là ça ne marche pas du tout:
RunWait($program&" "&$Appli3 &" "& @ScriptDir&"\"&$Resultat)
 
Je vous prie de me dire pourquoi ça ne marche pas.
Merci pour votre attention.
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction DOS en Autoit.

#18

Message par Boulanza »

votre aide svp
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Problème de codage d'une fonction DOS en Autoit.

#19

Message par jguinch »

Quand le chemin contient des espaces, il faut le mettre entre double quotes :
upx.exe -9 "d:\mes programmes\fichier.dll" : OK

Si tu ne mets pas les doubles quotes, ta commande verra plusieurs paramètres :
upx.exe -9 d:\mes programmes\fichier.dll : Pas OK
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Problème de codage d'une fonction DOS en Autoit.

#20

Message par Boulanza »

Ma question est:
1- là ça marche avec " en plus, svp pourquoi ?
RunWait(@ScriptDir & ' \upx.exe -9 " ' & @ScriptDir & '\'&$Resultat)

2- là ça ne marche pas du tout pourquoi svp?
RunWait($program&" "&$Appli3 &" "& @ScriptDir&"\"&$Resultat)
Répondre