実行ファイル単体を作って実行した場合と
同じソースをdllにして、Javaから呼び出し->実行を行った場合で
実行結果があまりに異なる現象が起きてます(ノД`)

dll内でスレッドを分けているわけでもなく、
メモリリークが発生しているわけでもなさそう(STL酷使でポインタは皆無)
なんですが、他にどういったケースが考えられるでしょうか?
コンパイラはVC7.0,7.1,MinGWで、実行ファイルでの結果はどれも期待通り得ています。

また、Javaは相方が作ったもので、私自身は詳しくありませんので、
なんとなく構文理解ぐらいしかできません。

エスパー待ちになりそうな質問で申し訳ありませんが、
経験談などでも構いませんので、何かヒントになりそうなもの、ご教授ください
よろしくお願いします。