Well i'm using WC_LISTVIEW to create a box, then using a small function i'm setting it's background image to an INTERNET source.

So the listview acts as a placeholder for the JPG file. Eventually though, i found out it was causing a CPU leak... (i don't know if that exists), but what happens is, when i press "X" at the top of my program to close the program. In task manager, the process is still there, in fact, it increases the CPU output to 50% RAPIDLY even though i just closed the program and the window dissappears.

Here's a snippet of my code: (Remember to #define WC_IMAGEBOX WC_LISTVIEW)

Code:
m_hImage = CreateWindowEx(0, WC_IMAGEBOX, TEXT(""), WS_CHILD | WS_VISIBLE,
	                         10, 105, 200, 234,
	                         hAppWnd, NULL, hInst, NULL);
       ImageBox_SetImage(m_hImage, TEXT("http://www.mysite.com/image/mylogo.jpg"));
       m_hLogo = CreateWindowEx(0, WC_IMAGEBOX, TEXT(""), WS_CHILD | WS_VISIBLE,
	                         30, 55, 200, 33,
	                         hAppWnd, NULL, hInst, NULL);
       ImageBox_SetImage(m_hLogo, TEXT("http://www.mysite.com/image/mysite.jpg"));
That's how i create it in the WM_CREATE....

If i comment out the ImageBox_SetImage functions... my program doesn't leak like this. Here's the imagebox function:

Code:
BOOL CppWnd::ImageBox_SetImage(HWND hwndImageBox, LPTSTR szImagePath)
{
    LVBKIMAGE lv = { 0 };

	lv.ulFlags =  LVBKIF_STYLE_NORMAL | LVBKIF_SOURCE_URL;
	lv.pszImage = szImagePath; // full path required
	ListView_SetBkImage(hwndImageBox, &lv);
  memset(&lv,0,sizeof(lv));
	return true; 
}
I added the memset later, incase it was some sort of leak there...
I mean the function works fine, but once it's used, this CPU-leakage occurs.