I don't know about MS, but in Borland a common source of DLL interface problems is not using a common (shared) memory manager. You might also check up on byte alignment.(4,8,16, or32 ?) Other possibilities arise from other argument passed, which might be structs with >different< definitions in the main and dll modules, e.g., std::ostream in multithread and non-multithread modes. Craig Hicks lognez wrote:
Hi all,
I am trying to pass a smart pointer (boost::shared_ptr<T>) as an argument to a function that is implemented by a dll and called by an executable, but whenever I execute the application, it goes into a loop, no matter what the type of T is. When the function is implemented in the exe or when the function is called from inside the dll it works fine. Does anybody have a clue what could be happening? BTW, I'm not implicating a bug in boost, I know that it could as well be a MS VC++ bug but I would just like to know how this comes and how I can solve it.
Corno
PS I've tried to post this message directly to the newsgroup but that did not work. Is that news group perhaps read only?
Info: http://www.boost.org Wiki: http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl Unsubscribe: mailto:boost-users-unsubscribe@yahoogroups.com
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/