2017-12-14 6 views
1

Ich muss eine DLL UND eine Textdatei in einem pyinstaller "Onefile" ausführbare enthalten. Ich kann nur die DLL hinzufügen, aber wenn ich versuche, beide Dateien anzugeben, beschwert sich pyinstaller. Ich würde lieber die Befehlszeilenoptionen (anstatt der Spezifikationsdatei) verwenden - was ist das richtige Format für mehrere Dateien?Include mehrere Dateien mit pyinstaller

http://pyinstaller.readthedocs.io/en/stable/spec-files.html#adding-data-files

http://pyinstaller.readthedocs.io/en/stable/usage.html#options-group-what-to-bundle-where-to-search

ein paar Dinge ausprobiert, zum Beispiel pyinstaller: Fehler: Argument --add-data: ungültig add_data_or_binary Wert: '/C/path1/my.dll;/c/path2/my.txt;'

Antwort

1

Ich weiß nicht, welche Syntax für die Befehlszeile erforderlich ist, aber Sie können die generierte Spezifikation bearbeiten, um den Pfad zu den Daten aufzunehmen, wobei eine Liste von Tupeln ist.

datas = [('/path/to/file', '/path/in/bundle'). 
      (...) ] 

So die Spezifikation könnte wie folgt aussehen:

a = Analysis(['Frequency_Analysis_DataInput_Animation_cge.py'], 
      pathex=['C:\\Users\\mousavin\\Documents\\Analysis'], 
      binaries=[], 
      datas=[('/path/file1', '.'), (/path/file2, '.')], 
... 

und dann wieder bauen mit

pyinstaller script.spec