bilakos26 Δημοσ. 21 Ιανουαρίου 2021 Δημοσ. 21 Ιανουαρίου 2021 (επεξεργασμένο) Καλησπέρα παιδιά! Έχω φτιάξει ένα script το οποίο σε VScode και στην Γραμμή Εντολών (cmd) τρέχει μια χαρά και είναι λειτουργικό. Ωστόσο, όταν χρησιμοποιώ το Pyinstaller για να το μετατρέψω σε εκτελέσιμο αρχείο .exe, ενώ το αρχείο δημιουργείται κανονικά, όταν πάω να το τρέξω μου βγάζει το error της φωτογραφίας. Έχω βρεί κάποια posts στο Stack overflow με το συγκεκριμένο θέμα, τα οποια όμως δεν με βοηθησαν αρκετα στο να καταλαβω ποιο είναι το πρόβλημα μου. Παραθέτω και τα Links τα όποια έχω δει μέχρι στιγμής: https://stackoverflow.com/questions/59190771/pyinstaller-oserror-cannot-load-autoitx-from-path https://stackoverflow.com/questions/59788795/autoit-pyinstaller-oserror-cannot-load-autoitx-from-path-c-users-appdata-loca Και εδώ είναι η δική μου ερώτηση στο stack overflow: https://stackoverflow.com/questions/65819195/pyinstaller-oserror-cannot-load-autoitx Όποιος γνωρίζει ή έστω έχει κάποια ιδέα θα του ήμουν ευγνώμων! Επεξ/σία 21 Ιανουαρίου 2021 από bilakos26
n3a Δημοσ. 25 Ιανουαρίου 2021 Δημοσ. 25 Ιανουαρίου 2021 Ακολουθησες τις λύσεις που προτείνουν σε αυτες απαντήσεις στο stack overflow? Για παράδειγμα στη μία γράφει: "OSError: Cannot load AutoItX from path:": Change '.' to 'autoit\lib' – stovfl 31 mins ago From my understanding the MEI... folder is a temporary folder and I was putting the .dll file into it by '.' when it should have been in the autoit\lib subfolder. So all I had to do was what stovfl said to do above. Thanks for the help.
bilakos26 Δημοσ. 25 Ιανουαρίου 2021 Μέλος Δημοσ. 25 Ιανουαρίου 2021 1 ώρα πριν, n3a είπε Ακολουθησες τις λύσεις που προτείνουν σε αυτες απαντήσεις στο stack overflow? Για παράδειγμα στη μία γράφει: "OSError: Cannot load AutoItX from path:": Change '.' to 'autoit\lib' – stovfl 31 mins ago From my understanding the MEI... folder is a temporary folder and I was putting the .dll file into it by '.' when it should have been in the autoit\lib subfolder. So all I had to do was what stovfl said to do above. Thanks for the help. Αυτό το σχόλιο το είχα δει. Πρόσπαθησα να το κάνω αλλά ή δεν το έκανα σωστά ή το έκανα σωστά και δεν δούλεψε. Βέβαια δεν κατάλαβα και πολλά από όσα λέγανε.
n3a Δημοσ. 25 Ιανουαρίου 2021 Δημοσ. 25 Ιανουαρίου 2021 Αν καταλαβαίνω σωστά, θα πρέπει να τροποποιήσεις το .spec αρχείο που δημιουργεί το Pyinstaller, για να δείχνει τη σωστή τοποθεσία που βρίσκεται η βιβλιοθήκη autoitx που θες να χρησιμοποιήσεις. Μπορείς να κάνεις copy εδώ τα περιεχόμενα του αρχείου .spec? Λογικά θα βρίσκεται στο φάκελο που έχεις ορίσει για το αρχείο .exe που θα δημιουργηθεί.
bilakos26 Δημοσ. 25 Ιανουαρίου 2021 Μέλος Δημοσ. 25 Ιανουαρίου 2021 (επεξεργασμένο) 1 ώρα πριν, n3a είπε Αν καταλαβαίνω σωστά, θα πρέπει να τροποποιήσεις το .spec αρχείο που δημιουργεί το Pyinstaller, για να δείχνει τη σωστή τοποθεσία που βρίσκεται η βιβλιοθήκη autoitx που θες να χρησιμοποιήσεις. Μπορείς να κάνεις copy εδώ τα περιεχόμενα του αρχείου .spec? Λογικά θα βρίσκεται στο φάκελο που έχεις ορίσει για το αρχείο .exe που θα δημιουργηθεί. Σου παραθέτω το αρχείο παρακάτω: Bot.spec Καθώς και το περιεχόμενο του αρχείου: # -*- mode: python ; coding: utf-8 -*- block_cipher = None a = Analysis(['Bot.py'], pathex=['C:\\Users\\bilakos\\Desktop\\PYTHON_PROJECTS'], binaries=[], datas=[], hiddenimports=['autoit'], hookspath=[], runtime_hooks=[], excludes=[], win_no_prefer_redirects=False, win_private_assemblies=False, cipher=block_cipher, noarchive=False) pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) exe = EXE(pyz, a.scripts, a.binaries, a.zipfiles, a.datas, [], name='Bot', debug=False, bootloader_ignore_signals=False, strip=False, upx=True, upx_exclude=[], runtime_tmpdir=None, console=True ) Επεξ/σία 25 Ιανουαρίου 2021 από bilakos26
n3a Δημοσ. 27 Ιανουαρίου 2021 Δημοσ. 27 Ιανουαρίου 2021 Αν καταλαβαίνω σωστά φίλε μου πρέπει να ορίσεις που θα βρίσκει ο Pyinstaller το dll αρχείο της βιβλιοθήκης που χρησιμοποιείς. Κάτι σε "AutoItX3_x64.dll" πρέπει να είναι. Στο αρχείο που ανέβασες η ένδειξη datas είναι κενή, το τελικό σου εκτελέσιμο .exe δεν βλέπει τη βιβλιοθήκη και σου βγάζει μήνυμα λάθους. Δες στο documentation του pyinstaller πως μπορείς να την προσθέσεις. 1
bilakos26 Δημοσ. 27 Ιανουαρίου 2021 Μέλος Δημοσ. 27 Ιανουαρίου 2021 (επεξεργασμένο) 4 ώρες πριν, n3a είπε Αν καταλαβαίνω σωστά φίλε μου πρέπει να ορίσεις που θα βρίσκει ο Pyinstaller το dll αρχείο της βιβλιοθήκης που χρησιμοποιείς. Κάτι σε "AutoItX3_x64.dll" πρέπει να είναι. Στο αρχείο που ανέβασες η ένδειξη datas είναι κενή, το τελικό σου εκτελέσιμο .exe δεν βλέπει τη βιβλιοθήκη και σου βγάζει μήνυμα λάθους. Δες στο documentation του pyinstaller πως μπορείς να την προσθέσεις. Φίλε πραγματικά με έκανες να το ψάξω αλλιώς και βρήκα την λύση. Λοιπόν στην αρχή μέσο του cmd όρισα το PATH, γράφοντας: cd C:\Users\bilakos\Desktop\PYTHON_PROJECTS\BOT Έπειτα έδωσα την εξής εντολή: pyinstaller --onefile --add-data C:\Users\bilakos\AppData\Local\Programs\Python\Python39\Lib\site-packages\autoit\lib\AutoItX3_x64.dll;autoit\lib Bot.py Το Bot.py είναι το αρχείο Python το οποίο θέλω να μετατρεψω σε executable (.exe). Το αναφέρω για κάποιον ο οποίος ίσως να μην το γνώριζει. Με αυτές τις εντολές λειτούργησε με επιτυχία. Σε ευχαριστώ πολύ φίλε που μου άνοιξες τα ματια. Να είσαι πάντα καλα! Επεξ/σία 27 Ιανουαρίου 2021 από bilakos26
n3a Δημοσ. 27 Ιανουαρίου 2021 Δημοσ. 27 Ιανουαρίου 2021 Χαίρομαι που βοήθησα! Ευχαριστούμε που περιέγραψες τη λύση του προβλήματος, έτσι ώστε να την βρει κάποιος άλλος φίλος που ψάχνει το ίδιο θέμα. 1
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα