By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
440,551 Members | 1,127 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 440,551 IT Pros & Developers. It's quick & easy.

embeded python progam into visual C++ application crash

P: n/a
hello,
The C++ application uses a python module which wraps commands set for CVS
management:
checkout, checkin and tag.
We used python2.5.1 and Visual C++ 6.0

The problem we get is:
After a good import and definition of python functions we have a random
unhandled exception (from python25.dll) when calling python interface
function several times.
All the python module has been tested using the python IDLE.
This the C++ sequence code we used:

Py_initialize()
Py_Import("moduleName")
cvs_init() // cvs view initialisation handled by
python script init()
cvs_set_tag() // cvs commit and tag handled by python
script settag()
// the exception occured here
This is the python script part:

def init(pathBench=None):
global CVSROOT
global BENCH_DIR
ret = 0
str = 'CVS initialization: init() OK'

if os.path.isdir(pathBench):
try :
cvsapi.checkout(CVSROOT, 'bench', destination=pathBench, recursive=False)
except cvsapi.CheckoutError, error:
ret = -1
str = "CVS initialisation %s: %s, init() KO" % (pathBench,error)
else:
ret = -1
str = "CVS initialization: pathBench %s is not a directory, init() KO" %
pathBench

return ret,str
def settag(tagName, pathBench):
ret = 0
str = 'CVS commit and tag: Warning no bench, settag()'

try:
pathBench = pathBench.rstrip('\\')
pathTest = pathTest.rstrip('\\')
pathStorage = pathStorage.rstrip('\\')

if not os.path.isdir(pathBench) :
ret = -1
return ret, str

ret, str = SettagView(tagName, pathBench)

except cvsapi.PathError,error:
ret = -1
str = "settag(): path error %s" % error
except cvsapi.AddError,error:
ret = -1
str = "settag(): cvs add error %s" % error
except:
ret = -1
str = "settag() unknown error"

return ret,str

Any information will be welcome as the scripts are running under IDLE and
not in embeded C++

thanks for your help

Fabien LYON

Service Informatique ISIS
* fa*********@isismpp.fr
* (+33) 05-61-43-59-04
* (poste interne) 5904
Fax (+33) 05-61-43-58-60
* 6 rue des Frères Boude
ZI Thibaud, BP 70439
31104 Toulouse Cedex 1

May 29 '07 #1
Share this question for a faster answer!
Share on Google+

This discussion thread is closed

Replies have been disabled for this discussion.