PyRun_SimpleFile()崩溃问题

转载 2012年03月26日 13:53:13

From: http://blog.csdn.net/jq0123/article/details/1504406


PyRun_SimpleFile()造成程序崩溃.

例程如下:

#include "python.h"
int main()
{       
    Py_Initialize();       
    FILE * fp = fopen("test.py", "r");       
    if (fp == NULL)
        return 1;       
    PyRun_SimpleFile(fp, "test.py");       
    Py_Finalize();       
    return 0;
}

原来研究过这个问题,见:
PyRun_SimpleString的无穷怨念

现在又见到一篇文章:
在VC6.0中调用python

觉得自己的研究成果要在自己博客上记录一下,免得下次再搜索一番才能找到。

这个问题主要是由于FILE定义不一致。
可以用更简单的调用方法替代:
PyRun_SimpleString("execfile('test.py')");

如果不使用PyRun_SimpleFile(),好象没必要重编python.lib.
不过因为没有python_d.lib,DEBUG版本的程序也只能用Multithreaded DLL CRT, 而不是Debug版的CRT。
如果有其它库链的是Debug Multithreaded DLL,那就必须自己编个python_d.lib了。

库链接的问题还真是麻烦!

参考:
Python Windows FAQ
1.15 PyRun_SimpleFile() crashes on Windows but not on Unix; why?

相关文章推荐

PyRun_SimpleFile()崩溃问题

PyRun_SimpleFile()造成程序崩溃.例程如下:#include "python.h"int main(){            Py_Initialize();            ...
  • jq0123
  • jq0123
  • 2007年02月07日 16:02
  • 3988

奇怪的PyRun_SimpleFile崩溃问题

使用VS2010写C语言程序,其中需要调用python脚本,写了如下代码: Py_Initialize(); pFile = fopen(filename, "r"); PyRun_Simple...

PyRun_SimpleString的无穷怨念

From: http://blog.csdn.net/ccat/article/details/544491 好吧,我承认我是个菜鸟,所以今天我勇敢的站出来接受大家的鄙视…… 话说早上同事喊我...

决解vc++6.0打开文件的崩溃问题

  • 2014年09月14日 18:42
  • 132KB
  • 下载

通过崩溃trace来查找问题原因

这里我们以UMeng捕获的错误信息举例: 从友盟中, 我们可能会得到如下信息: Application received signal SIGSEGV (null) ( 0 CoreFound...
  • smking
  • smking
  • 2013年07月16日 14:59
  • 27211

解决app崩溃问题

  • 2017年09月28日 17:54
  • 9.01MB
  • 下载

null移动端崩溃问题

  • 2015年11月20日 10:19
  • 2KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PyRun_SimpleFile()崩溃问题
举报原因:
原因补充:

(最多只允许输入30个字)