ちょっと行き詰まってるので相談させて下さい。
自分のPC2台(両方XP)で動かすと問題なく動き、知人AのPC(Windows7)でも問題なく動くのですが
知人BのPC2台(両方Windows7)だと必ず「プログラムを停止します」とでて終了するという
謎の現象に悩まされています。

落ちる場所は毎回同じようなので、プログラムの要所要所に、テキストファイルに
メッセージを吐き出す命令を加えてみたところ、ある if文 のところで落ちてると判りました。

そこで今度はその if文 で使ってる変数6つをテキストに吐き出すようにしたところ、
その4つめの変数吐き出す部分で終わるようになってしまいました。
(つまり落ちる場所がずれた)
この if文 はループになっており、特定のループ時にのみ落ちる事が判明していますが
この変数自体はループにおいて全く変更されておらず、この変数が原因とは考えにくいです。

次に、このif文は無くてもこの場合たいした支障のでない部分だったので
まるごと消去してみたのですが、それでもやっぱり落ちました。

ここにきて行き詰まってしまって、どう調べていいのかわからなくなりました。

・実はこの部分以外に原因があってそれを見逃してる?
・この関数のこの部分が何らかの影響で破壊されているのか?
・なぜ知人BのPCでだけ発生する?(しかも2台とも)

何か考えられる原因とかありますでしょうか?