====== Process [En cours de Traduction Wismerheal][WSL] ====== Cet objet vous permet de lancer et manager un processus. (programme) ===== Fonctions ===== ==== Process ==== Fonction de construction. === Syntaxe === var myObject = new Process(); var myObject = new Process(parameters); === Arguments === - parameters - (object) les paramètres * workingDirectory - (string) le dossier de travail * processChannelMode - ([[#processchannelmode|ProcessChannelMode]]) le mode du "channel" du processus * readChannel - ([[#processchannel|ProcessChannel]]) le "channel" du processus à lire * onError - ([[#onError|onError]]) appelé quand une erreur survient * onFinished - ([[#onFinished|onFinished]]) appelé quand le processus est terminé * onReadyReadStandardError - ([[#onReadyReadStandardError|onReadyReadStandardError]]) appelé quand le processus dispose de données sur le "channel" d'erreur standard * onReadyReadStandardOutput - ([[#onReadyReadStandardOutput|onReadyReadStandardOutput]]) appelé quand le processus dispose de données sur le "channel" standard de sortie * onStarted - ([[#onStarted|onStarted]]) appellé quand le processus a commencé * onStateChanged - ([[#onStateChanged|onStateChanged]]) appelé quand l'état du processus a changé === Example === var myObject = new Process(); var myObject = new Process({ workingDirectory: "/home/user", onStarted: function() { Console.print("Started!"); }, onFinished: function() { Console.print("Finished!"); } }); ==== list ==== Renvoie un tableau de [[en:code:core:processhandle|ProcessHandle]] lié à tous les processus en cours d’exécution. === Syntaxe === Process.list(); === Renvoie === * (array) un tableau de [[en:code:core:processhandle|ProcessHandle]] lié à tous les processus en cours d’exécution ==== thisProcess ==== Renvoi un [[en:code:core:processhandle|ProcessHandle]] lié au processus d'Actionaz. === Syntaxe === Process.thisProcess(); === Renvoie === * (array) un [[en:code:core:processhandle|ProcessHandle]] lié au processus d'Actionaz ==== startDetached ==== Lance le processus en mode détaché et renvoie un [[en:code:core:processhandle|ProcessHandle]] qui lui est lié. Vous aurez moins de contrôle sur le processus qu'en mode attaché, cependant il sera indépendant de l'actuelle exécution. === Syntaxe === Process.startDetached(filename); Process.startDetached(filename, parameters); Process.startDetached(filename, parameters, workingDirectory); === Arguments === - filename - (string) le nom de fichier/commande du processus à lancer - parameters - (array) un tableau de paramètres - workingDirectory - (string) le dossier de travail === Renvoie === * (array) un [[en:code:core:processhandle|ProcessHandle]] lié au processus lancé === Exceptions === * (FilenameError) nom de fichier non valide * (StartProcessError) ne parvient pas à lancer le processus ===== Méthodes ===== ==== handle ==== Renvoie un [[en:code:core:processhandle|ProcessHandle]] lié au processus lancé. === Syntaxe === myObject.handle(); === Renvoie === * ([[en:code:core:processhandle|ProcessHandle]]) un [[en:code:core:processhandle|ProcessHandle]] lié au processus lancé ==== id ==== Renvoie l'identifiant (id) du processus lancé. === Syntaxe === myObject.id(); === REnvoie === * (integer) l'identifiant (id) du processus lancé ==== start ==== Lance le processus. === Syntaxe === myObject.start(filename); myObject.start(filename, parameters); myObject.start(filename, parameters, openMode); === Arguments === - filename - (string) le nom de fichier/commande du processus à lancer - parameters - (array) un tableau de paramètres - openMode - ([[#openmode|OpenMode]]) le mode d'ouverture à utiliser (défaut: lecture & écriture) === Renvoie === * (Process) ce Processus === Exceptions === * (FilenameError) nom de fichier non valide ==== state ==== Renvoie l'état du processus lancé. === Syntaxe === myObject.state(); === Renvoie=== * ([[#processstate|ProcessState]]) l'état du processus lancé ==== error ==== Renvoie l'état de l'erreur du processus lancé. === Syntaxe === myObject.error(); === Renvoie === * ([[#processerror|ProcessError]]) l'état de l'erreur du processus lancé ==== exitCode ==== Renvoie le code de sortie du processus. === Syntaxe === myObject.exitCode(); === Renvoie === * (integer) le code de sortie du processus ==== exitStatus ==== Renvoie le statut du processus de sortie. === Syntaxe === myObject.exitStatus(); === Renvoie === * ([[#exitstatus|ExitStatus]]) le statut du processus de sortie ==== readError ==== Renvoie le contenu de l’erreur de sortie standard en un [[en:code:core:rawdata|RawData]] . === Syntaxe === myObject.readError(); === Renvoie === * ([[en:code:core:rawdata|RawData]]) le contenu de l’erreur de sortie standard en un [[en:code:core:rawdata|RawData]] ==== read ==== Renvoie le contenu de la sortie standard en un [[en:code:core:rawdata|RawData]] . === Syntaxe === myObject.read(); === Renvoie === * ([[en:code:core:rawdata|RawData]]) le contenu de la sortie standard en un [[en:code:core:rawdata|RawData]] ==== readErrorText ==== Renvoie le contenu d'erreur de sotie standard sous forme de texte. === Syntaxe === myObject.readErrorText(); myObject.readErrorText(encoding); === Arguments === - encoding - ([[en:code:core:global#encoding|Encoding]]) l'encodage à utiliser === Renvoie === * (string) le contenu d'erreur de sotie standard sous forme de texte ==== readText ==== Renvoie le contenu standard de sortie sous forme de texte. === Syntaxe === myObject.readText(); myObject.readText(encoding); === Arguments === - encoding - ([[en:code:core:global#encoding|Encoding]]) l'encodage à utiliser === Renvoie === * (string) le contenu de sortie standard sous forme de texte ==== atEnd ==== Renvoie vrai si le processus n'est pas en cours d'exécution et si aucune donnée ne peut être lue. === Syntaxe === myObject.atEnd(); === Returns === * (boolean) vrai si le processus n'est pas en cours d'exécution et si aucune donnée ne peut être lue ==== bytesAvailable ==== Renvoi le nombre de bytes qui peuvent être lus. === Syntaxe === myObject.bytesAvailable(); === Renvoie === * (integer) le nombre de bytes qui peuvent être lus ==== bytesToWrite ==== Renvoie le nombre de bytes qui doivent toujours être écrit. === Syntaxe === myObject.bytesToWrite(); === Renvoie === * (integer) le nombre de bytes qui doivent toujours être écrit ==== canReadLine ==== Renvoie vrai si une ligne peut être lue. === Syntaxe === myObject.canReadLine(); === Renvoie === * (boolean) vrai si une ligne peut être lue ==== write ==== Écrit des données sur le processus. === Syntaxe === myObject.write(data); === Arguments === - data - (mixed) les données à écrire === Renvoie === * (Process) ce Processus ==== writeText ==== Écrit du texte sur le processus. === Syntaxe === myObject.writeText(text, encoding); === Arguments === - text - (string) le texte à écrire - encoding - ([[en:code:core:global#encoding|Encoding]]) l'encodage à utiliser === Renvoie === * (Process) ce Processus ==== setWorkingDirectory ==== Définit le dossier de travail. Cela ne fonctionne que sur les processus qui ne sont pas encore lancés. === Syntaxe === myObject.setWorkingDirectory(workingDirectory); === Arguments === - workingDirectory - (string) le texte à écrire === Renvoie === * (Process) ce Processus ==== setProcessChannelMode ==== Définit le mode du "channel" du processus. Cela ne fonctionne que sur les processus qui ne sont pas encore lancés. === Syntaxe === myObject.setProcessChannelMode(channelMode); === Arguments === - channelMode - ([[#processchannelmode|ProcessChannelMode]]) le mode du "channel" du processus === Renvoie === * (Process) ce Processus ==== setEnvironment ==== Définit les variables d'environnement du processus. Cela ne fonctionne que sur les processus qui ne sont pas encore lancés. === Syntaxe === myObject.setEnvironment(environment); === Arguments === - environment - (object) les variables d'environnement du processus === Renvoie === * (Process) ce Processus === Example === myObject.setEnvironment({ PATH: "c:\\;c:\\path", MYVAR: "hello" }); ==== updateEnvironment ==== Met à jour les variables d'environnement du processus. Cela ne fonctionne que sur les processus qui ne sont pas encore lancés. === Syntaxe === myObject.updateEnvironment(environment); === Arguments === - environment - (object) les variables d'environnement du processus === Returns === * (Process) ce Processus === Example === myObject.updateEnvironment({ PATH: "c:\\;c:\\path", MYVAR: "hello" }); ==== setReadChannel ==== Définit le "channel" du processus à lire. === Syntaxe === myObject.setReadChannel(channel); === Arguments === - channel - ([[#processchannel|ProcessChannel]]) le "channel" du processus à lire === Renvoie === * (Process) ce Processus ==== setStandardErrorFile ==== Définit le fichier d'erreur standard. === Syntaxe === myObject.setStandardErrorFile(fileName); myObject.setStandardErrorFile(fileName, openMode); === Arguments === - fileName - (string) le nom du fichier - channel - ([[#openmode|OpenMode]]) le mode d'ouverture du fichier (défaut: tronqué) === Renvoie === * (Process) ce Processus ==== setStandardInputFile ==== Définit le fichier d'entrée standard. === Syntaxe === myObject.setStandardInputFile(fileName); === Arguments === - fileName - (string) le nom du fichier === Renvoie === * (Process) ce Processus ==== setStandardOutputFile ==== Définit le fichier de sortie standard. === Syntaxe === myObject.setStandardOutputFile(fileName); myObject.setStandardOutputFile(fileName, openMode); === Arguments === - fileName - (string) le nom du fichier - channel - ([[#openmode|OpenMode]]) le mode d'ouverture du fichier (défaut: tronqué) === Renvoie === * (Process) ce Processus ==== setStandardOutputProcess ==== Définit la sortie standard du processus. === Syntaxe === myObject.setStandardOutputFile(process); === Arguments === - process - (Process) la sortie du processus === Renvoie === * (Process) ce Processus === Exceptions === * (InvalidProcessError) processus non valide ==== waitForFinished ==== Gèle l'exécution jusqu'à ce que le processus soit terminé. === Syntaxe === myObject.waitForFinished(waitTime); myObject.waitForFinished(); === Arguments === - waitTime - (integer) le temps d'attente (en millisecondes, défaut: 30000) === Renvoie === * (Process) ce Processus === Exceptions === * (WaitForFinishedError) l'attente de la fin d'exécution à échouée ==== waitForStarted ==== Gèle l'exécution jusqu'à ce que le processus soit lancé. === Syntaxe === myObject.waitForStarted(waitTime); myObject.waitForStarted(); === Arguments === - waitTime - (integer) le temps d'attente (en millisecondes, défaut: 30000) === Renvoie === * (Process) ce Processus === Exceptions === * (WaitForStartedError) l'attente du lancement de l'exécution à échouée ==== waitForBytesWritten ==== Gèle l'exécution jusqu'à ce que les données soient écrites. === Syntaxe === myObject.waitForBytesWritten(waitTime); myObject.waitForBytesWritten(); === Arguments === - waitTime - (integer) le temps d'attente (en millisecondes, défaut: 30000) === Renvoie === * (Process) ce Processus === Exceptions === * (WaitForBytesWrittenError) l'attente de l'écriture des bytes a échoué ==== waitForReadyRead ==== Gèle l'exécution jusqu'à ce que les données soient disponibles. === Syntaxe === myObject.waitForReadyRead(waitTime); myObject.waitForReadyRead(); === Arguments === - waitTime - (integer) le temps d'attente (en millisecondes, défaut: 30000) === Renvoie === * (Process) ce Processus === Exceptions === * (WaitForReadyReadError) l'attente pour le "prêt" en lecture a échoué ==== close ==== Tente de fermer le processus de manière élégante. === Syntaxe === myObject.close(); === Renvoie === * (Process) ce Processus ==== kill ==== Kill (me baby!) le processus. === Syntaxe === myObject.kill(); === Renvoie === * (Process) ce Processus ==== terminate ==== Met fin au processus. === Syntaxe === myObject.terminate(); === Renvoie === * (Process) ce Processus ===== Évènements ===== ==== onError ==== Appelé quand une erreur survient. === Syntaxe === myObject.onError = function(processError) {}; === Arguments === - processError - ([[#processerror|ProcessError]]) le processus a rencontré une erreur === Example === myObject.onError = function(processError) { //Event action }; ==== onFinished ==== Appelé quand le processus s'est terminé. === Syntaxe === myObject.onFinished = function(exitCode, exitStatus) {}; === Arguments === - exitCode - (integer) le code de sortie du processus - exitStatus - ([[#exitstatus|ExitStatus]]) le statut de sortie du processus === Example === myObject.onFinished = function(exitCode, exitStatus) { //Event action }; ==== onReadyReadStandardError ==== (au scrabble ça fait un carton :) ) Appelé quand il n'y a pas de données disponibles sur l'erreur de sortie standard. === Syntaxe === myObject.onReadyReadStandardError = function() {}; === Example === myObject.onReadyReadStandardError = function() { //Event action }; ==== onReadyReadStandardOutput ==== Appelé quand il n'y a pas de données disponible sur la sortie standard. === Syntaxe === myObject.onReadyReadStandardOutput = function() {}; === Example === myObject.onReadyReadStandardOutput = function() { //Event action }; ==== onStarted ==== Appelé quand le processus a commencé sont exécution. === Syntaxe === myObject.onStarted = function() {}; === Example === myObject.onStarted = function() { //Event action }; ==== onStateChanged ==== Appelé quans le statut du processus a changé. === Syntaxe === myObject.onStateChanged = function(newState) {}; === Arguments === - newState - ([[#processstate|ProcessState]]) le ratio du processus === Example === myObject.onStateChanged = function(newState) { //Event action }; ===== Enumerations ===== ==== ProcessError ==== Une erreur de processus. === Valeurs === - FailedToStart: le fichier ne peut pas être trouvé ou vous ne disposez pas des autorisations suffisantes - Crashed: le processus a crashé après un lancement effectué avec succès (Ariane, quand tu nous tient...) - Timedout: la dernière attente pour la méthode ... a échoué - WriteError: le processus n'est pas en cours d’exécution ou a possiblement fermé son "channel" d'entrée - ReadError: le processus n'est pas en cours d'exécution - UnknownError: une erreur inconnue est apparue ==== ExitStatus ==== Le statut de sortie. === Valeurs === - NormalExit: le processus s'est terminé normalement - CrashExit: le processus a crashé ==== ProcessState ==== Le statut du processus. === Valeurs === - NotRunning: le processus n'est pas en cours d'exécution - Starting: le processus est en cours de lancement - Running: le processus est en cours d'exécution ==== ProcessChannel ==== Un "channel" de processus. === Valeurss === - StandardOutput: le "channel" de sortie standard - StandardError: le channel d'erreur de sortie standard ==== ProcessChannelMode ==== Un mode de "channel" de processus. === Valeurs === - SeparateChannels: l'erreur standard et les "channels" de sortie sont séparés - MergedChannels: le "channel" d'erreur standard est redirigé vers le "channel" de sortie standard - ForwardedChannels: la sortie de l'ensemble des "channels" est redirigée vers le processus parent ==== OpenMode ==== Un mode d'ouverture de "channel" de processus. === Valeurs === - ReadOnly: "channel" de processus ouvert en lecture seule - WriteOnly: "channel" de processus ouvert en écriture seule - ReadWrite: "channel" de processus ouvert en lecture et écriture - Truncate: "channel" de processus ouvert pour écrire, et effacer tout précédent contenu - Text: "channel" de processus ouvert en mode texte - Unbuffered: "channel" de processus ouvert en mode sans-tampon