TWebbrowser 메모리증가 처리
어플하고 웹페이지를 연결할 일이 있어서 TWebbrowser를 올리고 동적으로 폼을 생성했더니
이 폼을 없애도 메모리는 계속 남아있고 폼을 열때마다 메모리가 계속 쭈욱쭈욱~ 증가를 하더군요.
Garbage Collection의 방식 때문이라고 하는데 여튼 결론은.
폼의 OnClose 이벤트에 다음과 같이 코드를 추가해 주면 됩니다.
TWebbrowser 뿐만 아니라 다른 곳에도 적용이 되는듯 하군요.
( elphi7, Delphi2009 에서 해봤는데 둘다 정상적으로 동작을 합니다 / XP기준-Vista는 안해봤어용 )
if Win32Platform = VER_PLATFORM_WIN32_NT then
SetProcessWorkingSetSize(GetCurrentProcess, $FFFFFFFF, $FFFFFFFF);
추가 : speednic님이 다음과 같이 보완 해 주셨네요.. 감사 드립니니다.
'프로그래밍 > Delphi' 카테고리의 다른 글
StretchBitBlt를 이용한 이미지 확대 축소 (0) | 2009.11.06 |
---|---|
URLEncoding 함수 사용하기 (1) | 2009.11.04 |
TIdHTTP.Post로 질의 및 결과 받기 (0) | 2009.11.04 |
"coreide70.bpl" Access violation 오류 대처법 - 통합IDE 환경에서 디버깅 오류 (2) | 2009.10.06 |
GR32에서 투명한 PNG파일 버퍼로 읽어오기 (0) | 2009.09.16 |
[TIP] TWebBrowser 메모리 증가 방지 처리 (4) | 2009.05.12 |
사람은 모두 자신이 잊혀지는것을 두려워하고. 이 세상에 단 한명뿐일지라도 자신의 이름을 불러주는 사람이 존재하는건만으로도 만족하고있습니다
만금을 주고도 살 수 없는 행복감에 가슴이 부풀었다.
좋으면 좋고 싫으면 싫은 거지, 뭐가 이렇게 어렵고 복잡하냐구
SetProcessWorkingSetSize(GetCurrentProcess,dword(-1),dword(-1)); 이렇게 하시면 x86,x64시스템 전부 족용됨