Utilizzo di RunProgram per avviare cmd.exe ed eseguire i comandiVoglio usare RunProgram per eseguire un eseguibile come notepad.exe tramite cmd.exe.
Quanto segue restituirà la directory corretta ma quando aggiungo un altro comando all'elenco delle opzioni "notepad.exe" ottengo un errore che il sistema non riesce a trovare il percorso specificato.
cmd1 = "/k cd /d " || "C:\Windows\System32";
RP = RunProgram(
Executable( "CMD.EXE"),
Options( {cmd1} ),
ReadFunction("text")
);Ho anche visto questo errore alcune volte e non capisco appieno cosa sta dicendo. Come si può rimediare?
The external program was producing output when the RunProgram object was destroyed.
Use a JSL variable to hold the RunProgram object.
Optionally, send messages to the variable to manage the object's lifetime.
Ri: Utilizzo di RunProgram per avviare cmd.exe ed eseguire comandiperfetto grazie.Non posso credere di non aver mai notato l'elenco a discesa di più esempi.
Ri: Utilizzo di RunProgram per avviare cmd.exe ed eseguire comandiDovresti guardare l'esempio 3 in Guida> Indice di scripting> Funzioni> Esegui programma.
In allegato è una sceneggiatura scritta per il capitolo 9 di JSL Companion, Applicazioni del linguaggio di scripting JMP, seconda edizione .Include più metodi per leggere più comandi; più comandi a un programma o più comandi DOS.Vedi l'esempio n. 5 in questo script per più comandi dos (cd, dir, ecc.) Le note di discussione iniziano alla riga 199 e il JSL è dalla riga 253 alla 287.
Se vuoi solo prendere appunti, durante la tua sessione, ecco un semplice script che non richiede Esegui programma.
Names Default to Here(1);
noteslst ={};
InsertInto(noteslst, char(AsDate(Today()))|| " Notes");
InsertInto(noteslst, "Hello, World!");
InsertInto(noteslst,"It's hot here, 99 degrees");
InsertInto(noteslst,"Time to cool off");
InsertInto(noteslst,"Good Bye");
xtxt = Concat Items(noteslst,"\!N");
Save Text File( "c:\temp\July23Notes.txt" , xtxt);