关于几句代码的程序运行后内存使用不段增大的有关问题

关于几句代码的程序运行后内存使用不段增大的问题
#include "stdafx.h"
#include <afxinet.h>
#include <ShellApi.h>

void reset()
{
ShellExecute(NULL,"open","b.bat",NULL,NULL,SW_RESTORE);
}
int main()
{
while(1)
{
reset();
}
return 0;
}


如上几句代码,编译出来后,内存使用会不断增加,本来是想写一个监控IIS的小东西,网站打不开的时候就让他重启IIS,但是发现内存使用会不断变大,用不了一个晚上内存就给我耗尽了!

麻烦各位高手给我解答一下怎么回事,如何来处理这样一个问题!小弟是个新手!

------解决方案--------------------
ShellExecute?

这个你得贴出来

你没必要这样监控啊。。
先取进程名,判断有没这个进程名,没有再运行。
------解决方案--------------------
b.bat程序都干了些啥?能够正确退出?
------解决方案--------------------
while(1)
{
//你这里添加一个判断进程在不在.
reset();


这样while 1下去 估计一晚上的批处理也得有几十万次了
------解决方案--------------------
恩.是的!是下载网页.可能半小时挂一次!这些不都在一个函数体内吗?我好像记得在函数体内的变量.函数结束后就没了吧!而且myHttpFile用了close 了呀!
-----------------------------------------------------
这跟你的内存分配有关系啊,如果是在堆上分配的内存,是需要程序员管理的。
myHttpFile=(CHttpFile*)mySession.OpenURL(myUrl); 
怀疑这个函数里在堆上分配了内存,而你没有去释放它。