#NoTrayIcon #Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_Icon=..\IDE\Resources\img\ICO-FSP2EXE.ico #AutoIt3Wrapper_UseX64=n #AutoIt3Wrapper_Res_Description=Compilateur Fsp2Exe #AutoIt3Wrapper_Res_Fileversion=1.3.0.0 #AutoIt3Wrapper_Res_ProductVersion=1,3,0,0 #AutoIt3Wrapper_Res_LegalCopyright=© 2012 LeCoindAide.com #AutoIt3Wrapper_Res_Language=1036 #AutoIt3Wrapper_Res_requestedExecutionLevel=asInvoker #AutoIt3Wrapper_Run_Obfuscator=y #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** #Region AutoIt3Wrapper directives section #EndRegion #cs ---------------------------------------------------------------------------- AutoIt Version: 3.3.8.1 Author: TT22 Remerciments : Tlem pour l'aide de l'utilisation de Resource Hacker. Script Function: Compilateur de fichiers FSProg vers des exécutables. #ce ---------------------------------------------------------------------------- ; Script Start - Add your code below here #include #include #include ;_RunDOS('ResHacker.exe -modify '&@ScriptDir&'\exe.exe, '&@ScriptDir&'\cpy.exe, '&@ScriptDir&'\1.fsp, RCData, 10,') If UBound($CmdLine) > 1 Then $File = $CmdLineRaw;Cherche les paramètres. If (StringLeft($File,1) = '"' Or StringLeft($File,1) = "'") And (StringRight($File,1) = '"' Or StringRight($File,1) = "'") Then;Supprime les " ou ' au début et à la fin. $File = StringTrimLeft($File,1) $File = StringTrimRight($File,1) EndIf Else $File = FileOpenDialog("Choisissez le script à convertir...",-1,"Fichiers FSProg (*.fsp)");Choix du fichier. EndIf If @error Then Exit;Getsion des erreurs... If Not FileExists($File) Then MsgBox(16,"Fsp2Exe : Erreur","Erreur !"&@CRLF&@CRLF&"Le fichier choisis n'existe pas !") FileDelete($File);Supprime le fichier. Exit EndIf SplashTextOn("Fsp2Exe","Compilation en cours..."&@CRLF&"Veuillez patienter.",500,70) If Not FileCopy($File,$File&".Fsp2Exe",9) Then;Copie le fichier... SplashOff() MsgBox(16,"Fsp2Exe : Erreur","Erreur !"&@CRLF&@CRLF&"Impossible de copier le fichier choisis !") FileDelete($File);Supprime le fichier. Exit EndIf $File&=".Fsp2Exe" $FileContent = FileRead($File) $FileContentSplit = StringSplit($FileContent,@CRLF) $FileContentSplit = _ParseString($FileContentSplit) ; Inclusion des fichiers... For $i = 1 To $FileContentSplit[0] Step 2 If StringLeft($FileContentSplit[$i],8) == "#include" Then If StringInStr($FileContentSplit[$i],"<") Then $FileTemp = _StringBetween($FileContentSplit[$i],"<",">") If UBound($FileTemp) Then $FileToInclude = $FileTemp[0] Else SplashOff() MsgBox(16,"Fsp2Exe : Erreur","Erreur !"&@CRLF&@CRLF&'Directive "#include" incorrecte à la ligne '&Ceiling($i/2)&" !") FileDelete($File);Supprime le fichier. Exit EndIf If Not FileExists(@ScriptDir&"\Includes\"&$FileToInclude) Then SplashOff() MsgBox(16,"Fsp2Exe : Erreur","Erreur !"&@CRLF&@CRLF&'Directive "#include" incorrecte à la ligne '&Ceiling($i/2)&" !"&@CRLF&"Le fichier désigné n'existe pas !") FileDelete($File);Supprime le fichier. Exit EndIf $FileContentTemp = FileRead(@ScriptDir&"\Includes\"&$FileToInclude) $FileContentSplitTemp = StringSplit($FileContentTemp,@CRLF) $FileContentSplitTemp = _ParseString($FileContentSplitTemp) $Temp = "" For $j = 1 To $FileContentSplitTemp[0] Step 2 If $FileContentSplitTemp[$j] <> "" Then $Temp &= $FileContentSplitTemp[$j]&@CRLF Next $FileContentSplit[$i] = $Temp ElseIf StringInStr($FileContentSplit[$i],'"') Then $FileTemp = _StringBetween($FileContentSplit[$i],'"','"') If UBound($FileTemp) Then $FileToInclude = $FileTemp[0] Else SplashOff() MsgBox(16,"Fsp2Exe : Erreur","Erreur !"&@CRLF&@CRLF&'Directive "#include" incorrecte à la ligne '&Ceiling($i/2)&" !") FileDelete($File);Supprime le fichier. Exit EndIf If Not FileExists(ParseFile($FileToInclude,$File)) Then SplashOff() MsgBox(16,"Fsp2Exe : Erreur","Erreur !"&@CRLF&@CRLF&'Directive "#include" incorrecte à la ligne '&Ceiling($i/2)&" !"&@CRLF&"Le fichier désigné n'existe pas !") FileDelete($File);Supprime le fichier. Exit EndIf $FileContentTemp = FileRead(ParseFile($FileToInclude,$File)) $FileContentSplitTemp = StringSplit($FileContentTemp,@CRLF) $FileContentSplitTemp = _ParseString($FileContentSplitTemp) $Temp = "" For $j = 1 To $FileContentSplitTemp[0] Step 2 If $FileContentSplitTemp[$j] <> "" Then $Temp &= $FileContentSplitTemp[$j]&@CRLF Next $FileContentSplit[$i] = $Temp EndIf EndIf Next FileDelete($File) For $i = 1 To $FileContentSplit[0] Step 2 If $FileContentSplit[$i] <> "" Then FileWriteLine($File,$FileContentSplit[$i]) EndIf Next $FullFilePath = GetFilePath($File)&GetFileName($File)&".exe" If Not FileCopy(@ScriptDir&"\Fsp2Exe\FSProg.bin",$FullFilePath,9) Then;Copie les sources... SplashOff() MsgBox(16,"Fsp2Exe : Erreur","Erreur !"&@CRLF&@CRLF&"Impossible de copier les sources de FSProg !") FileDelete($File);Supprime le fichier. Exit EndIf _RunDOS('"'&@ScriptDir&'\Fsp2Exe\ResHacker.exe" -modify '&$FullFilePath&', '&$FullFilePath&', '&$File&', RCData, 10,') FileDelete($File);Supprime le fichier. SplashOff() MsgBox(64,"Fsp2Exe : Info","La conversion est terminée !"&@CRLF&"L'exécutable se trouve dans le ici :"&@CRLF&$FullFilePath);Indique la fin de conversion et le fichier résultat. Func ParseFile($String,$File) If StringInStr($String,":") Then Return $String Else $Split = StringSplit($File,"\") $Path = "" For $i = 1 To UBound($Split)-2 Step 1 $Path&=$Split[$i]&"\" Next $Return=$Path&$String Return $Return EndIf EndFunc Func GetFilePath($File) $Split = StringSplit($File,"\") $Path = "" For $i = 1 To UBound($Split)-2 Step 1 $Path&=$Split[$i]&"\" Next Return $Path EndFunc Func GetFileName($File) $Split = StringSplit($File,"\") $Return = $Split[UBound($Split)-1] $Return = StringTrimRight($Return,12) Return $Return EndFunc Func _ParseString($FileContentSplit) For $i = 1 To $FileContentSplit[0] Step 2 While (StringLeft($FileContentSplit[$i],1) = " " Or StringLeft($FileContentSplit[$i],1) = " ") $FileContentSplit[$i] = StringTrimLeft($FileContentSplit[$i],1) WEnd If StringLeft($FileContentSplit[$i],2) = "//" And StringLeft($FileContentSplit[$i],3) <> "//\" Then $FileContentSplit[$i] = "" EndIf Next Return $FileContentSplit EndFunc