Seite 1 von 1
Keine DLL wenn from pylab import *
Verfasst: Samstag 8. August 2009, 12:32
von sevelen
ich habe das Problem das sobald ich
lade meine dll mittels
nicht mehr gefunden werden kann.
Mein code
Code: Alles auswählen
import numpy as np
import ctypes as ct
from pylab import *
from numpy import *
from ctypes import *
mydll = windll.LoadLibrary('mydll.dll')
DEBUGER
Traceback (most recent call last):
File "C:\testdll\Torpy\lcMainProg.py", line 19, in <module>
mydll = cdll.mydll
File "C:\Python25\lib\ctypes\__init__.py", line 423, in __getattr__
dll = self._dlltype(name)
File "C:\Python25\lib\ctypes\__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
WindowsError: [Error 127] Die angegebene Prozedur wurde nicht gefunden
Kann mir jemand erklären wieso das so ist?
Verfasst: Samstag 8. August 2009, 12:40
von Hyperion
Und wenn Du es anders machst, wird sie gefunden? (Sorry, aber das "sobald" suggeriert das irgend wie!)
Sternchen-Importe sind böse und sollte man nicht verwenden.
Evtl. löst das ja schon das Problem

Verfasst: Samstag 8. August 2009, 12:42
von sevelen
Bin zzt dabei zwei code teile zusammenzufügen. Daher resultieren meine Probleme.
Wenn ich die eine zeile auskommentiere klappt es wunderbar. Nur sobald sie drin ist scheint sie meinen DLL import irgentwie zu beeinflussen. Komisch finde ich selbst wenn ich speziell Ctype über CT anspreche es nicht klappt.
Verfasst: Samstag 8. August 2009, 12:44
von cofi
``pylab`` und ``numpy`` sind so grosse Projekte, dass man sich unter Garantie etwas zerschiesst, wenn man deren Namensraum komplett uebernimmt - und dann auch noch gleichzeitig.
Warum importierst du numpy und ctypes eigentlich zweimal? Und warum missbrauchst du das ``as`` um sowieso schon kurze Namen zu kuerzen und komplett ausdruckslos zu machen?
Verfasst: Samstag 8. August 2009, 12:58
von sevelen
Da ich erst gerade beginne mit Python kann ich noch nicht sagen ob es vergewaltigung ist

danke für den hinweiß
Von wegen ich importe die zweimal, heißt das wenn ich etwas mit import hinzugefügt habe ist es komplett drin und ich brauche kein from mehr? Bissher dachte ich müsste beides tun.
So ich habe jetzt den
durch
Ich hab aber das komplett gleiche Problem gleiches DLL import problem
Verfasst: Samstag 8. August 2009, 13:40
von jbs
Code: Alles auswählen
import modulA
modulA.functionA()
modulA.functionB()
from modulA import functionA
functionA()
#functionB ist nicht bekannt
Re: Keine DLL wenn from pylab import *
Verfasst: Samstag 8. August 2009, 14:02
von Darii
sevelen hat geschrieben:
[...]
DEBUGER
Traceback (most recent call last):
File "C:\testdll\Torpy\lcMainProg.py", line 19, in <module>
mydll = cdll.mydll
File "C:\Python25\lib\ctypes\__init__.py", line 423, in __getattr__
dll = self._dlltype(name)
File "C:\Python25\lib\ctypes\__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
WindowsError: [Error 127] Die angegebene Prozedur wurde nicht gefunden[/code]
Kann mir jemand erklären wieso das so ist?
Wäre ganz nett, wenn du auch wirklich den Code posten würdest, der den Fehler verursacht. In der Fehlermeldung steht „ mydll = cdll.mydll“, das ist in deinem Codebeispiel nicht zu finden.
Verfasst: Samstag 8. August 2009, 14:24
von sevelen
ich habe es mit cdll sowie mit windll probiert und wohl das alte kopiert. Spielt aber auch keine rolle der fehler ist der gleiche...
der ordnung zu liebe
Code: Alles auswählen
Traceback (most recent call last):
File "C:\testdll\Torpy\lcMainProg.py", line 17, in <module>
mydll = windll.LoadLibrary('mydll.dll')
File "C:\Python25\lib\ctypes\__init__.py", line 431, in LoadLibrary
return self._dlltype(name)
File "C:\Python25\lib\ctypes\__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
WindowsError: [Error 127] Die angegebene Prozedur wurde nicht gefunden
Also ich hab keine ahnung was ich falsch machen. Mein Aktueller code vieleicht kann mir ja jemand sagen wo das Problem liegt.
Code: Alles auswählen
from ctypes import windll
from matplotlib.pylab import figure
mydll = windll.LoadLibrary('mydll.dll')
figure()
Traceback (most recent call last):
File "C:\testdll\Torpy\lcMainProg.py", line 15, in <module>
mydll = windll.LoadLibrary('mydll.dll')
File "C:\Python25\lib\ctypes\__init__.py", line 431, in LoadLibrary
return self._dlltype(name)
File "C:\Python25\lib\ctypes\__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
WindowsError: [Error 127] Die angegebene Prozedur wurde nicht gefunden
...ohne pylab eintrag klappt der dll import problemlos.
Verfasst: Sonntag 9. August 2009, 14:10
von CM
a) pylab und matplotlib unterscheiden sich insofern, als das pylab die matplotlib plotting Funktionen und numpys und matplotlib.mlab-Funktionen bereitstellt (siehe
http://matplotlib.sourceforge.net/ ). Besser ist es bei pylab-Importen nicht die numpy-namespaces zu nutzen, sondern diese durch separate numpy-Importe zu erhalten, denn so ist es bei größeren Projekten leichter Überblick zu erhalten.
b) Der Traceback fängt bei Zeile 15 bzw. 19 an. Was war sonst so alles davor? Und: Kannst Du das Problem lösen, indem " mydll = windll.LoadLibrary('mydll.dll') " vor " from matplotlib.pylab import figure " kommt? In welchem Verzeichnis läuft Dein Skript? In welchem (relativ) dazu liegt die dll? Gibt es in dem Verzeichnis eine __init__.py? Du machst all das nicht zufällig über IDLE? Heißt "mydll.dll" wirklich so? Fragen über Fragen, die helfen können den Fehler einzugrenzen.
Gruß,
Christian