PyRun_SimpleFile()崩溃问题
生活随笔
收集整理的這篇文章主要介紹了
PyRun_SimpleFile()崩溃问题
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
From: http://blog.csdn.net/jq0123/article/details/1504406
例程如下:
#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;
}
原來研究過這個(gè)問題,見:
PyRun_SimpleString的無窮怨念
現(xiàn)在又見到一篇文章:
在VC6.0中調(diào)用python
覺得自己的研究成果要在自己博客上記錄一下,免得下次再搜索一番才能找到。
這個(gè)問題主要是由于FILE定義不一致。
可以用更簡(jiǎn)單的調(diào)用方法替代:
PyRun_SimpleString("execfile('test.py')");
如果不使用PyRun_SimpleFile(),好象沒必要重編python.lib.
不過因?yàn)闆]有python_d.lib,DEBUG版本的程序也只能用Multithreaded DLL CRT, 而不是Debug版的CRT。
如果有其它庫(kù)鏈的是Debug Multithreaded DLL,那就必須自己編個(gè)python_d.lib了。
庫(kù)鏈接的問題還真是麻煩!
參考:
Python Windows FAQ
1.15 PyRun_SimpleFile() crashes on Windows but not on Unix; why?
總結(jié)
以上是生活随笔為你收集整理的PyRun_SimpleFile()崩溃问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VC跨进程数据(结构体)传递-WM_CO
- 下一篇: 线程管理(九)使用本地线程变量