WinDev调用Python函数报错:Python API未加载问题求助
WinDev调用Python函数报错"The Python API has not been loaded"的解决方法及运行结果分析
错误排查与解决步骤
- 补全Python环境配置
仅指定python312.dll路径不够,WinDev需要识别Python核心库目录。把Python安装根目录(比如C:\Users\Farouq MOUSMI\AppData\Local\Programs\Python\Python312-32)添加到系统或WinDev项目的PYTHONPATH环境变量中。 - 提升权限加载DLL
右键以管理员身份启动WinDev,避免因权限不足无法读取python312.dll,同时检查杀毒软件是否将该dll列为可疑文件拦截。 - 确保Python脚本正确导入
不能直接调用函数,需先加载calcul.py:- 将
calcul.py添加到WinDev项目的外部资源列表 - 在调用
calcul(1,2)前,执行PythonLoad("calcul.py")语句,保证脚本加载成功
- 将
- 更换兼容的Python版本
虽同为32位,但WinDev 28 EXPRESS版对Python3.12的适配可能存在问题,换成Python3.10或3.11的32位版本,兼容性更稳定。
info(calcul(1,2))的三种运行结果
- 情况1:正常执行(错误解决后)
弹出信息窗口,显示内容为3,这是1+2的正常计算结果。 - 情况2:参数类型错误
若误传字符串类型参数(比如calcul("1","2")),会弹出错误提示:Python执行错误:TypeError: unsupported operand type(s) for +: 'str' and 'str'
- 情况3:函数未找到
若calcul.py未加载成功,或函数名拼写错误(比如写成calc(1,2)),会弹出错误:The Python function 'calc' has not been found.
内容的提问来源于stack exchange,提问作者lunched
相关产品推荐
相关产品推荐

