Use subprocess to convert txt in another programm?

Hi all,

i write a g code generator and need to convert .txt to .pgm
There is a converter called Winxiso and i try to automate this process of.

  1. open converter
  2. paste .txt filpath
  3. click compile
  4. close converter

The first two steps working already with subprocess.

import subprocess
path_programm = "C:\\Program Files (x86)\winxiso\\Winxiso.exe"
path_file = "C:\\Users\\Florian\\Desktop\\G_code\\New Text Document.txt"

subprocess.call([path_programm,path_file])

But i dont know to click a button (is this a dll file which is executed with a bool(Button)?) from python.

Any help is welcome

Hi there,
Is it possible to run winxiso at the command prompt rather than in interactive mode? if you type “winxiso -h” do you get any command line options?

Thanks for your help…

after a lot of tries and error i found some commands.

Es werden einige Parameter zur Eingabe des Programmbetriebs bereitgestellt. Die Parameter sind Codes, denen das Symbol “-“ vorangestellt ist. Sie können nach dem Programmnamen in das Command-Feld eingegeben werden.

-o <Dateiname>
Wandelt ein Programm in ASCII-Format (mit Extension .XXL) in ein Programm in PGM-Format um und weist ihm den Namen <Dateiname> (zwingend) zu.
-x <Dateiname>
Wandelt ein Programm in PGM-Format in ein Programm in ASCII-Format (mit Extension .XXL) um.
Diese Option schließt die Optionen -o und –l aus.
-i <Dateiname>
Erstellt eine Datei im ASCII-Format (mit Extension .INF) mit den Resultaten der Übersetzung:

  • [LINES]=<Anzahl der umgewandelten Anweisungen>
  • [ERRORS]=<Anzahl der erfassten Fehler>
    -l <Dateiname>
    Erzeugt das Programmprotokoll im ASCII-Format (mit Extension .LST).
    -s
    Verhindert das Öffnen von Fenstern auf dem Bildschirm.
    -v
    Kompiliert/Dekompiliert in Kombination mit der Option –x den EPL-Abschnitt eines Programms. Zum Dekompilieren die Datei .PGM auswählen: es werden eine Datei .XXL und eine separate Datei .EPL erzeugt. Zum Kompilieren eine Datei .XXL auswählen und nach der Option –v den Namen der Datei .EPL eingeben: es wird eine Datei .PGM erzeugt, die den EPL-Abschnitt enthält.
    -t
    Fügt in Kombination mit der Option –1 die Tabelle der Symbole in das Programmprotokoll ein.
    -f <bitmap>
    Fügt das spezifizierte Bitmap-Bild in das Programm ein.

·WinXiso versucht immer, eine ASCII-Datei in PGM umzuwandeln, außer es wird die Option -x spezifiziert.
·<Dateiname> kann ein beliebiger Dateiname, bestehend aus max. 8 Zeichen plus den 3 Erweiterungszeichen, sein, dem eventuell eine Pfadangabe vorangestellt wird. Für die Option -o muss der Dateiname zwingend angegeben werden; für die anderen Optionen ist diese Angabe fakultativ (falls der Dateiname nicht spezifiziert wird, wird der Name der ausgewählten Datei mit Änderung der Extension wiederverwendet).

It wasnt able for me to choose another file output name only the input works for the output.
So this code in the cmd open the winxiso.exe get the filepath and convert it -s means not open the program.

C:\Program Files (x86)\winxiso>winxiso C:\Users\Florian\Desktop\G_code\New.txt -s

Now i need to export the generated .txt to a folder take that file and convert it from python inside rhino.
Thanks again for your hint with the command prompt.
I didnt knew that most programms can be perform some commands from the cmd.

Great!
To rename the file:

import os

os.rename('a.txt', 'b.kml')

Thanks man for your help
everything works

import subprocess
import os


path_programm = "C:\\Program Files (x86)\winxiso\\Winxiso.exe"
path_file = "C:\\Users\\Florian\\Desktop\\G_code\\New.txt"
subprocess.call([path_programm ,path_file ,'-s'])
os.rename("C:\\Users\\Florian\\Desktop\\G_code\\New.pgm","C:\\Users\\Florian\\Desktop\\G_code\\New_TEST.pgm")
1 Like