Bonjour et merci à tous pour vos réponses et votre réactivité.
Je pense que ce message va clore le sujet puisque le problème est résolu!
Pour aller au bout des choses, je vais tout de même répondre au cas par cas, comme ça, si quelqu'un comme moi passe par ce forum à cause d'un même soucis, il ou elle aura toutes les clés en main.
mikell a écrit :Est-il vraiment indispensable de passer par le bloc-notes pour copier le texte du fichier source vers le fichier cible ?
Zapper le bloc-notes serait teeeeellement plus fiable (et plus simple)

Oui, dans mon cas c'est indispensable de passer par le bloc-notes, car en réalité mes scripts AutoIt ne sont que des fichiers temporaires créés par un script .jsx en JavaScript pour After Effects qui va les exécuter selon les contrôles de mon UI dans After.
Hors, je suis obligé de stoker temporairement les informations qui viennent d'After Effects dans un fichier notepad pour que mes scripts AutoIt ne communiquent qu'avec lui.
De ce fait, j'ai également besoin que le fichier texte cible soit ouvert puisqu'il représente la clé de voute de mon script principale et il faut
que je puisse y travailler "en temps réel", du coup, je n'ai pas testé, mais...
walkson a écrit :Et comme ça, c'est pas plus simple ?
$data = FileRead(@ScriptDir & "\Doc Text\xcopy.txt")
$open = FileOpen(@ScriptDir & "\texte.txt",1)
FileRead($open)
FileWrite($open,@CRLF & $data)
FileClose($open)
Je rajoute une petite explication pour NowisV:
J'ouvre le txt cible en lecture écriture ($open)
je lis le contenu, ce qui me situe à la fin du texte
j'écrits les données sources ($data)
... si la fonction FileWrite() fonctionne sur le même principe que le file.write() du JavaScript, alors elle ne permet pas d'écrire en interagissant directement avec la fenêtre du fichier texte. J'ai donc exclu cette solution.
Bref, venons en aux faits, ceux de la résolution du problème!
( Et la médaille va à orax! )
En effet, que j'utilise la méthode ClipPut() et Send("^v") ou la méthode ControlSetText(), cela fonctionne parfaitement en plus de respecter tous
les caractères spéciaux!
Ce qui était primordial dans mon cas!
Donc, mon code corrigé:
#include <AutoItConstants.au3>Func Lire
()Local Const $filePath = 'J:\Temp\dossierTemporaire\MonFichierTemp.txt' ;chemin du fichier temporaire renvoyé par le script After EffectsLocal $tempFile = FileOpen($filePath,$FO_READ) ;j'ouvre le fichier en mode lectureIf $tempFile = -1 ThenExit ; si le fichier n'existe pas, j’interromps le script pour ne pas avoir d'erreurEndIfLocal $fileRead = FileRead($tempFile); je stock le contenu de mon fichier temporaire dans une variable*FileClose($tempFile) ;je ferme mon fichier temporaireReturn $fileRead ;j'indique à ma fonction de renvoyer cette variable* lorsque j'appelle cette fonctionEndFunc ;fin de ma fonction Lire()$file = "monFichierCible"&Chr(0xA0)&"- Bloc-notes" ;le fichier qui va récupérer le contenu de mon fichier temp$Texte = Lire
() ;j'appelle ma fonction en la déclarant dans une variable pour attribuer à celle ci la valeur que renvoie la fonctionIf WinExists($file) Then ;si la fenêtre de mon fichier cible existe...WinActivate($file) ;... je l'active...ControlSetText($file,"","Edit1", $Texte) ;... et je lui envoie le contenu de mon fichier tempElse ;si non (si la fenêtre de mon fichier cible n'existe pas)...Exit ;... j’interromps le scriptEndIf
Voilà !
Donc tout fonctionne bien avec tout ça, dommage seulement que le ControlSetText() ne déplace pas le curseur d’édition à la fin du texte
comme le fait le Send(), mais bon... là je titille la baleine avec un hameçon
Encore merci à tous!