25 May 12:55
Re: Error after calling quantlib-c++-dll viaswig-c#-interface
From: Frank Hövermann <fhoevermann <at> gmx.de>
Subject: Re: Error after calling quantlib-c++-dll viaswig-c#-interface
Newsgroups: gmane.comp.finance.quantlib.devel
Date: 2008-05-25 10:55:44 GMT
Subject: Re: Error after calling quantlib-c++-dll viaswig-c#-interface
Newsgroups: gmane.comp.finance.quantlib.devel
Date: 2008-05-25 10:55:44 GMT
Hi Luigi, the solution was quite easy, since the c++-dlls are native ones, and the call into any one such is by DllImport within the SWIG wrapper, you do not have to include them as a reference in a c#-project, which I did. The only one thing one has to do is to place the dll where the c# code is able to find it. Then it works properly, fast, and without any load/unload errors as described below. Regards Frank > -----Ursprüngliche Nachricht----- > Von: Luigi Ballabio [mailto:luigi.ballabio <at> gmail.com] > Gesendet: Freitag, 16. Mai 2008 17:30 > An: fhoevermann <at> gmx.de > Cc: quantlib-dev <at> lists.sourceforge.net > Betreff: Re: [Quantlib-dev] Error after calling > quantlib-c++-dll viaswig-c#-interface > > > On Mon, 2008-05-05 at 21:09 +0200, Frank Hövermann wrote: > > I think this is a matter of unproper garbage collection or > something > > similar but I need some guru advice: A properly coded function (in > > C++, some double* serve as input, and a .txt or .csv file is the > > output but the function call is like "void func_name(double *input, > > char *path)" so nothing is actually > > returned) which does some calculations using some QuantLib > objects somehow > > changes its behaviour under /clr compiler option. This I > need to be able to > > use it via SWIG under C#. Calculations are done as supposed > to, but upon C# > > program termination an "unknown software exception" (0xc0020001) at > > 0x7c81eb33 pops up. I googled a bit and indications point > to a too quick > > (unmanaged) object disposal where the program terminates > before the C++ > > object does. Does this sound familiar to one of you? Are > there any hints to > > prevent this? > > Hi Frank, > unfortunately, I'm not an expert at all in managed > C++/C#---my only exposure to C# has been to compile the SWIG > wrappers before release to check that they work... Did you > try asking on the SWIG mailing list? It doesn't seem a SWIG > problem (since all you're exporting is a function taking some > basic types---no class instances are passing through the > wrapping layer) but there might be people there with more expertise. > > Luigi > > > > -- > > Dealing with failure is easy: work hard to improve. Success is also > easy to handle: you've solved the wrong problem. Work hard to > improve. > -- Alan Perlis > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
RSS Feed