Installation testen (Problem mit 2.7.3 unter Win7Prof64bit)

Probleme bei der Installation?
Antworten
micmen
User
Beiträge: 5
Registriert: Donnerstag 3. Januar 2013, 14:19

Hallo,
ich vermute, daß meine Python-Installation generell fehlerhaft ist. Gibt es irgendwelche Test-Scripts, mit denen man seine Installation testen und "typische" Probleme "Laien-kompatibel" lokalisieren kann?

Ich habe Probleme mit Python 2.7.3 unter Win7Prof Sp1, 64bit. Installiert habe ich mir das wegen Problemen unter Adobe Digital Editions mit einer normal gekauften ePub-Datei, so daß ich den Schutz entfernen möchte in der Hoffnung, sie dann mit irgendeinem Programm meiner Wahl besser anzeigen lassen zu können.
In den dafür erstellten Scripts ineptkey.pyw und ineptepub.pyw heißt es zwar, man soll Python 2.6 und PyCrypto für Python 2.6 installieren, aber diese Scripts sind von 2010 und ich habe das so interpretiert, daß man keine 3er Version verwenden soll und die 2.6 damals die neueste Version war. Daß 2.6 und 2.7.x inkompatibel sind, will ich ja nicht hoffen...?

Ich habe hier beim Download die Version gewählt WinX86, 64bit, MSI, "normal" (nicht die mit "sig" gekennzeichnete asc-Version).
Ich habe dann eine python-2.7.3.amd64.msi bekommen, habe meines Wissens aber eine Intel-CPU (oder steht das amd dort für etwas anderes?).
Für PyCrypto habe ich hier 2.6 for Python 2.7 64bit gewählt, ebenfalls "normal" und nicht die mit "asc signature" gekennzeichnete Version. Datei pycrypto-2.6.win-amd64-py2.7.exe

Wenn ich dann die ineptkey.pyw ausführen lassen wollte, bekam ich diese Fehlermeldung:
ValueError: IV must be 16 bytes long
Dabei finde ich darin gar keine Variable IV...

An anderer Stelle habe ich dann eine Info gefunden, daß man für diese Scripts noch eine dritte Sache installieren müsse, "Python for Windows extensions". Habe ich runtergeladen (Datei pywin32-218.win-amd64-py2.7.exe) und installiert, aber dessen Post Install Script brachte folgende 3 Zeilen im Installationsprotokoll:
close failed in file object destructor:
sys.excepthook is missing
lost sys.stderr
Dann habe ich mal das testall.py ausführen lassen, das bei irgendeinem der drei Setups mit in das Programmverzeichnis installiert worden sein muß, und bekam diese Ausgabe:
PythonWin 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win32.
Portions Copyright 1994-2008 Mark Hammond - see 'Help/About PythonWin' for further copyright information.
>>> C:\Program Files\Python 2\Lib\site-packages\win32\test\testall.py
Der Befehl "C:\Program" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
****** C:\Program Files\Python 2\Lib\site-packages\win32\test\testall.py failed: 1
C:\Program Files\Python 2\Lib\site-packages\win32com\test\testall.py
Der Befehl "C:\Program" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
****** C:\Program Files\Python 2\Lib\site-packages\win32com\test\testall.py failed: 1
C:\Program Files\Python 2\Lib\site-packages\adodbapi\tests\adodbapitest.py
Der Befehl "C:\Program" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
****** C:\Program Files\Python 2\Lib\site-packages\adodbapi\tests\adodbapitest.py failed: 1
C:\Program Files\Python 2\Lib\site-packages\win32\test\testall.py
Der Befehl "C:\Program" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
****** C:\Program Files\Python 2\Lib\site-packages\win32\test\testall.py failed: 1
C:\Program Files\Python 2\Lib\site-packages\win32com\test\testall.py
Der Befehl "C:\Program" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
****** C:\Program Files\Python 2\Lib\site-packages\win32com\test\testall.py failed: 1
C:\Program Files\Python 2\Lib\site-packages\adodbapi\tests\adodbapitest.py
Der Befehl "C:\Program" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
****** C:\Program Files\Python 2\Lib\site-packages\adodbapi\tests\adodbapitest.py failed: 1

Hat jemand einen Tipp?

danke
BlackJack

@micmen: Das sieht so aus als wenn testall.py keine Leerzeichen im Pfad der Python-Installation mag.
micmen
User
Beiträge: 5
Registriert: Donnerstag 3. Januar 2013, 14:19

ja, testall.py und evtl. auch die anderen genannten...
Aber was hilft mir das...

Das wurde so installiert und ich bin wohl weder der einzige, bei dem der Ordner Program Files heißt, noch der einzige, der diese Version bei sich installiert hat...

Wenn ich jetzt Probleme mit eigenen Scripts hätte, wäre das noch was anderes, dann hätte ich da evtl. Fehler drin. Aber das, was ich benutze, sollten doch wohl sehr viele leute identisch im Einsatz haben, und die haben doch wohl nicht alle das gleiche Problem?

danke
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

micmen hat geschrieben:ja, testall.py und evtl. auch die anderen genannten...
Aber was hilft mir das...

Das wurde so installiert und ich bin wohl weder der einzige, bei dem der Ordner Program Files heißt, noch der einzige, der diese Version bei sich installiert hat...

Wenn ich jetzt Probleme mit eigenen Scripts hätte, wäre das noch was anderes, dann hätte ich da evtl. Fehler drin. Aber das, was ich benutze, sollten doch wohl sehr viele leute identisch im Einsatz haben, und die haben doch wohl nicht alle das gleiche Problem?

danke
Der einzige bist du wohl nicht, der Standard Pythonpfad ist jedoch C:\PythonXX.

Python installiere ich immer nach C:\Dev\PythonXX, weil das die Pfade einfacher hält beim Skripten.

Du musst dir überlegen ob du lieber 32bit installierst, auch 64bit macht je nach Bibliothek mehr arbeit als es nutzt.
Zuletzt geändert von Sr4l am Freitag 4. Januar 2013, 22:56, insgesamt 1-mal geändert.
BlackJack

Ich habe noch nie ein Python gesehen was unter Windows dorthin installiert wurde. Darum glaube ich auch nicht, dass das viele Leute so im Einsatz haben werden.
micmen
User
Beiträge: 5
Registriert: Donnerstag 3. Januar 2013, 14:19

Also ich habe sogar noch hinten das "Python 2.7" oder wie genau das hieß in "Python2" geändert, um dort das Blank zu eliminieren. Aber die Standard-Programmverzeichnisse von Windows wollte ich schon nutzen...

Also was empfehlt Ihr? Deinstallieren und dann eine 32bit-Version in ein Verzeichnis installieren, das parallel zu den Standard-Programmverzeichnissen von Windows liegt?

danke
Benutzeravatar
sparrow
User
Beiträge: 4193
Registriert: Freitag 17. April 2009, 10:28

micmen hat geschrieben:Aber die Standard-Programmverzeichnisse von Windows wollte ich schon nutzen...
Wenn du ein Script verwendest, das nicht mit Leerzeichen in Verzeichnisnamen umgehen kann, und du trotzdem Leerzeichen verwenden möchtest gibt es eine langfristige und eine kurzfristige Lösung:

Langfristig: Schreib einen Bugreport für die die Entwickler
Kurzfristig: Korrigiere das Script und schick den Entwicklern einen Patch.


Edit:
Warte mal... du hast da oben gar kein Script ausgeführt, sondern - wenn ich das richtig sehe - einfach einen Pfad zu einer Datei in den Python-Interpreter kopiert. Du weißt schon, dass man so keine Scripts ausführt? Scripte führt man aus, indem man auf der Kommadozeile den Interpreter aufruft und den Pfad zum Script übergibt.

Code: Alles auswählen

python c:\pfad\zur\test.py
Da du da bereits Probleme hast, ist es sehr schwierig einzuschätzen wie viel Erfahrung du hast, und entsprechend wo der Fehler her kommt, dass die Programm nicht laufen.
Testen kann ich das nicht, die verlinkten Scripte sind ja Windows only, und damit kann ich nicht dienen. Allerdings verwenden die viel ctypes, und das lässt sich nur schwer debuggen.
micmen
User
Beiträge: 5
Registriert: Donnerstag 3. Januar 2013, 14:19

sparrow hat geschrieben:Warte mal... du hast da oben gar kein Script ausgeführt, sondern - wenn ich das richtig sehe - einfach einen Pfad zu einer Datei in den Python-Interpreter kopiert. Du weißt schon, dass man so keine Scripts ausführt? Scripte führt man aus, indem man auf der Kommadozeile den Interpreter aufruft und den Pfad zum Script übergibt.
Also was ich alles installiert habe, steht ha hier im Thread. Und ich benutze eine Version mit GUI und führe ein Script aus über "Datei > öffnen"... :D oder Doppelklick auf eine Datei, das war irgendwo so in der Anleitung beschrieben.

sparrow hat geschrieben:Da du da bereits Probleme hast, ist es sehr schwierig einzuschätzen wie viel Erfahrung du hast, und entsprechend wo der Fehler her kommt, dass die Programm nicht laufen.
Ja nun, ich wollte "einfach" ein Script ausführen, das "für jedermann" im Internet angeboten wird. Da stand nirgendwo dabei, daß man Python-Erfahrung braucht oder Anpassungen vornehmen muß oder etwas derartiges. Da stand ganz simpel, man soll sich die Scripts herunterladen und Python installieren, von daher ist den Anbietern klar, daß das von Laien benutzt wird...

sparrow hat geschrieben:Testen kann ich das nicht, die verlinkten Scripte sind ja Windows only, und damit kann ich nicht dienen.
Ist das echt wahr, daß die Scripts an das Betriebssystem angepaßt werden müssen??


Aber eigentlich war meine aktuelle Frage ja:
micmen hat geschrieben:Also was empfehlt Ihr? Deinstallieren und dann eine 32bit-Version in ein Verzeichnis installieren, das parallel zu den Standard-Programmverzeichnissen von Windows liegt?

danke
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

micmen hat geschrieben:Aber eigentlich war meine aktuelle Frage ja:
micmen hat geschrieben:Also was empfehlt Ihr? Deinstallieren und dann eine 32bit-Version in ein Verzeichnis installieren, das parallel zu den Standard-Programmverzeichnissen von Windows liegt?
danke
Nein, nicht deinstallieren, nicht Pfad ändern, zumindest noch nicht.
sparrow hat geschrieben:Edit:
Warte mal... du hast da oben gar kein Script ausgeführt, sondern - wenn ich das richtig sehe - einfach einen Pfad zu einer Datei in den Python-Interpreter kopiert. Du weißt schon, dass man so keine Scripts ausführt? Scripte führt man aus, indem man auf der Kommadozeile den Interpreter aufruft und den Pfad zum Script übergibt.
Code:
python c:\pfad\zur\test.py

Da du da bereits Probleme hast, ist es sehr schwierig einzuschätzen wie viel Erfahrung du hast, und entsprechend wo der Fehler her kommt, dass die Programm nicht laufen.
Testen kann ich das nicht, die verlinkten Scripte sind ja Windows only, und damit kann ich nicht dienen. Allerdings verwenden die viel ctypes, und das lässt sich nur schwer debuggen.
Wie sparrow schon bemerkt hat, was mir leider total entgangen ist, du fürhrst eine Datei Pfad in der Python Shell bzw. IDLE oder pyWin aus. Das geht garnicht.
Entweder öfnerst du Windows "CMD" und fügst dort einen Dateipfad ein den du ausführst oder du öffnest eine Datei mit Doppelklick.

In der Python Shell kannst du interaktiv Python Befehle ausführen. Also so Dinge wie print "hello" oder import time; print time.time()

*edit* Anzumerken ist noch: Doppelklick einer Python Datei führt unter Umständen dazu das du die Ausgabe nicht lesen kannst, also am besten immer über die CMD gehen.

*edit2* Ich habe mir das Ausgangsscript nochmal genau angeschaut.
micmen hat geschrieben:Wenn ich dann die ineptkey.pyw ausführen lassen wollte, bekam ich diese Fehlermeldung:
ValueError: IV must be 16 bytes long
Dabei finde ich darin gar keine Variable IV...
Das hat was mit PyCrypto zutun, es beschwert sich über nen Key der genau 16bytes lang sein muss.

micmen hat geschrieben:An anderer Stelle habe ich dann eine Info gefunden, daß man für diese Scripts noch eine dritte Sache installieren müsse, "Python for Windows extensions". Habe ich runtergeladen (Datei pywin32-218.win-amd64-py2.7.exe) und installiert, aber dessen Post Install Script brachte folgende 3 Zeilen im Installationsprotokoll:
close failed in file object destructor:
sys.excepthook is missing
lost sys.stderr
Mit der Meldung wurde bei mirt pywin32 auch unter 64bit installiert. Hat trotzdem funktioniert, damals.

Das Retrieve Adobe ADEPT user key-Script bekomme ich zum Laufen, auch das andere Script startet beschwert sich jedoch das ich keine Lizens von Adobe Digital besitze.
Zuletzt geändert von Sr4l am Montag 7. Januar 2013, 21:35, insgesamt 1-mal geändert.
micmen
User
Beiträge: 5
Registriert: Donnerstag 3. Januar 2013, 14:19

Sr4l hat geschrieben:du fürhrst eine Datei Pfad in der Python Shell bzw. IDLE oder pyWin aus. Das geht garnicht.
"eine Datei Pfad ausführen", was bedeutet denn diese Formulierung?
Also in der GUI habe ich ein Dateimenü, das mir anbietet, Dateien vom Typ .py, .pyw oder .pys zu öffnen (default), oder alternativ auch Dateien vom Typ .grep oder .pychecker, wofür ist denn dieser Dialog gedacht?

Und das zweite Script, das Probleme machte (siehe oben), war ein Post Install Script, das von ganz alleine anlief im Rahmen des Setups, da konnte ich also gar nichts falsch machen.

Habe das erste der drei Scripts (ineptkey.pyw) jetzt mal per Doppelklick gestartet, nach wie vor der Fehler siehe Eröffnungspost "ValueError: IV must be 16 bytes long".


dann doch deinstallieren?
oder für was ist denn dieses "testall.py"?


danke
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

micmen hat geschrieben:
Sr4l hat geschrieben:du fürhrst eine Datei Pfad in der Python Shell bzw. IDLE oder pyWin aus. Das geht garnicht.
"eine Datei Pfad ausführen", was bedeutet denn diese Formulierung?
Ich gebe zu die Formulierung ist doof, mir fällt aber auch nichts besseres ein.
Stark vereinfacht: Wenn die Zeile mit ">>>" beginnt werden Python Befehle erwartet und keine Dateipfade zu Pythondateien
micmen hat geschrieben:Also in der GUI habe ich ein Dateimenü, das mir anbietet, Dateien vom Typ .py, .pyw oder .pys zu öffnen (default), oder alternativ auch Dateien vom Typ .grep oder .pychecker, wofür ist denn dieser Dialog gedacht?
Das ist der "Datei öffnen"-Dialog von dem Programm PythonWin. Das Programm ist zum Bearbeiten und Editieren von Python Skripten gedacht. Wenn du etwas dort geöffnet hast kannst du es mit "F5" ausführen.
micmen hat geschrieben:Und das zweite Script, das Probleme machte (siehe oben), war ein Post Install Script, das von ganz alleine anlief im Rahmen des Setups, da konnte ich also gar nichts falsch machen. Habe das erste der drei Scripts (ineptkey.pyw) jetzt mal per Doppelklick gestartet, nach wie vor der Fehler siehe Eröffnungspost "ValueError: IV must be 16 bytes long".

dann doch deinstallieren?
danke
Wann kommt der Fehler ValueError? Direkt nach dem öffnen der Datei oder wenn du dem Programm Daten übergibst?

Ich kann beide Scripte ausführen, wie ich im letzen Post editiert habe. Ich habe allerdings keine Ahnung was das Programm an Input erwartet.
Kann es sein das dein .DER-Key File nicht stimmt oder kommst du gar nicht soweit?
Antworten