我正在开发一个python系统,其中一些核心dll通过ctypes访问。我已将问题减少到这种情况:执行一个加载(无需调用)两个dll的模块,其中一个调用printf - 退出时会出现此错误。
此应用程序已请求运行时将其终止 不寻常的方式请联系应用程序的支持团队获取更多信息 信息。
我的环境:
- Windows 7,SP1
- Python 2.7.8
- MinGW v 3.20
此测试用例改编自使用MinGW编写dll的教程:
/* add_core.c */
__declspec(dllexport) int sum(int a, int b) {
return a + b;
}
/* sub_core.c */
#include <stdio.h>
__declspec(dllexport) int sum(int a, int b) {
printf("Hello from sub_core.c");
return a - b;
}
prog.py
import ctypes
add_core_dll = ctypes.cdll.LoadLibrary('add_core.dll')
add_core_dll = ctypes.cdll.LoadLibrary('sub_core.dll')
> make
gcc -Wall -O3 -g -ansi -c add_core.c -o add_core.o
gcc -g -L. -ansi -shared add_core.o -o add_core.dll
gcc -Wall -O3 -g -ansi -c sub_core.c -o sub_core.o
gcc -g -L. -ansi -shared sub_core.o -o sub_core.dll
>python prog.py
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
并弹出一个消息对话框,效果相同:“python.exe已停止工作......”。
请注意,程序按预期执行并产生正常输出。终止时的这个错误只是我想摆脱的一大麻烦。
答案 0 :(得分:0)
同样的情况发生在: Windows 7企业版,SP1 Python 2.7.11 mingw32-g ++。exe 5.3.0