Win7下出现了一个奇怪的有关问题!小弟我郁闷了。

Win7下出现了一个奇怪的问题!我郁闷了。。
CWebBlower2 m_ie;
 m_ie.Navigate("http://www.123456.net/receive_mac.php?name="+name+"&str="+str,0,0,0,0);

首先,XP环境下,vc6成功编译,
编译后程序能正常访问网页, 可是在win7下运行提示一个红叉,我很郁闷,拿到win7下调试,更加怪了,
 m_ie.Navigate("http://www.123456.net/",0,0,0,0);在win7下没问题,可是
 m_ie.Navigate("http://www.123456.net/receive_mac.php?name="+name+"&str="+str,0,0,0,0);
就出问题了,而xp下为什么又可以呢?
然后改了一下,
char url[512];
sprintf(url,"http://www.rh123.net/service/receive_mac.php?name=%s&str=%s",name,str);
 m_ie.Navigate(url,0,0,0,0);
编译,然后就是兼容性问题,提示 xxx已经停止工作,windows正在查找解决方案。。
把sprintf注释掉了就没问题,
这是什么回事啊? 哪里出问题了?

------解决方案--------------------
你的网址+name+str是不是超过512大小了?把空间设大一点试试看
------解决方案--------------------
统一用CString.