Ich versuche, Python 2.6 in .NET 4.0 einzubetten.Python für .NET: ImportError: Kein Modul namens Warnungen
die sehr minimale Dokumentation Nach in „Python for .NET“, schrieb ich einen ziemlich einfachen Code wie folge:
const string pythonModulePath = @"C:\Projects\PythonImport\PythonImport\test.py";
Environment.SetEnvironmentVariable("PYTHONHOME", Path.GetDirectoryName(python
ModulePath));
PythonEngine.Initialize();
var oldWorkingDirectory = Directory.GetCurrentDirectory();
var currWorkingDirectory = Path.GetDirectoryName(pythonModulePath);
Directory.SetCurrentDirectory(currWorkingDirectory);
var pyPlugin = PythonEngine.ImportModule(Path.GetFileNameWithoutExtension(python
ModulePath));
if (pyPlugin == null)
{
throw new PythonException();
}
Directory.SetCurrentDirectory(oldWorkingDirectory);
Auch wenn test.py leer ich einen Importfehler erhalten sagen: „Kein Modul mit dem Namen Warnungen ".
'import site' failed; use -v for traceback
Unhandled Exception: Python.Runtime.PythonException: ImportError : No module nam
ed warnings
Der Grund wird deutlich, wenn man test.py mit "Python -v" (ausführlicher Modus) ausgeführt werden. Beachten Sie, dass Python #cleanup [2] Warnungen aufruft.
Warum kann Python .NET Warnungen nicht auflösen? Das Modul ist im Lib-Verzeichnis vorhanden.
Irgendwelche Ideen?