C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[62388] Re:Re:Re:Re:Re:Re:임시 인터넷 파일 지우는게 애매하네요..
locke [syiware] 1202 읽음    2010-09-09 20:42
정말 산너머 산이네요.. 이 소스가 xp에서는 잘 돌아가는데

비스타나 윈7에서 돌리면 wininet.dll 특정 번지에서 access violation이 난다는..

결국 xp에서만 가능한 소스.. 윈7이나 비스타에서도 가능하게 소스를 수정할 수 있을까 심히 염려스럽습니다. ㅠㅠ

-locke

locke 님이 쓰신 글 :
: 제가 갖고있는 소스랑 아주 약간 다른데..이건 원한대로 동작하는거 같습니다.
:
: 인터넷 캐시도 잡고있는건 삭제가 안되는군요. 파일 하나만 남기고 다 지워지네요.
:
: kylix님 감사합니다.
:
: -locke
:
: kylix 님이 쓰신 글 :
: : usage:
: : procedure TForm1.Button1Click(Sender: TObject) ;
: : begin
: :    DeleteIECache;
: : end;
: : }
: :
: : uses
: :    WinInet;
: : procedure DeleteIECache;
: : var
: :    lpEntryInfo: PInternetCacheEntryInfo;
: :    hCacheDir: LongWord;
: :    dwEntrySize: LongWord;
: : begin
: :    dwEntrySize := 0;
: :    FindFirstUrlCacheEntry(nil, TInternetCacheEntryInfo(nil^), dwEntrySize) ;
: :    GetMem(lpEntryInfo, dwEntrySize) ;
: :    if dwEntrySize > 0 then lpEntryInfo^.dwStructSize := dwEntrySize;
: :    hCacheDir := FindFirstUrlCacheEntry(nil, lpEntryInfo^, dwEntrySize) ;
: :    if hCacheDir <> 0 then
: :    begin
: :      repeat
: :        DeleteUrlCacheEntry(lpEntryInfo^.lpszSourceUrlName) ;
: :        FreeMem(lpEntryInfo, dwEntrySize) ;
: :        dwEntrySize := 0;
: :        FindNextUrlCacheEntry(hCacheDir, TInternetCacheEntryInfo(nil^), dwEntrySize) ;
: :        GetMem(lpEntryInfo, dwEntrySize) ;
: :        if dwEntrySize > 0 then lpEntryInfo^.dwStructSize := dwEntrySize;
: :      until not FindNextUrlCacheEntry(hCacheDir, lpEntryInfo^, dwEntrySize) ;
: :    end;
: :    FreeMem(lpEntryInfo, dwEntrySize) ;
: :    FindCloseUrlCache(hCacheDir) ;
: : end;
: :
: : 출처: delphi.about.com
: :
: : locke 님이 쓰신 글 :
: : : 제 글을 잘 이해를 못하신거 같네요..
: : :
: : : 저런식으로 해서 해당 폴더를 찾아 FindFirst/FindNext로 검색을 하면 실제 탐색기에 보이는 파일들이 안보이고
: : :
: : :  .
: : :  ..
: : :  Content.IE5
: : :  Content.MSO
: : :  Content.Word
: : :  desktop.ini
: : :  FrontPageTempDir
: : :  SKBGM.cfg
: : :  SKBGM0.che
: : :  SKBGM1.che
: : :  SKBGM2.che
: : :  SKBGM3.che
: : :  SKBGM4.che
: : :  SKBGM5.che
: : :  SKBGM6.che
: : :  SKBGM7.che
: : :  SKBGM8.che
: : :  SKBGM9.che
: : :  SQM
: : :
: : : 이런 애들이 나온다는거죠.. 그러니 어떻게 지우냐 이 질문인데..
: : : 이 파일들은 그냥 DeleteFile로 날려도 여전히 탐색기로 들어가보면
: : : 예전과 변함이 없습니다. ㅠㅠ
: : :
: : : -locke
: : :
: : : 000 님이 쓰신 글 :
: : : : String GetSpecialFolderPath(int nFolder)
: : : : {
: : : :  LPITEMIDLIST piidl;
: : : :  char path[MAX_PATH];
: : : :  if(SHGetSpecialFolderLocation(NULL,nFolder,&piidl)!=NOERROR) return "";
: : : :  SHGetPathFromIDList(piidl,path);
: : : :  GlobalFree(piidl);
: : : :  if(path[0]) return String(path);
: : : :  else return "";
: : : : }
: : : :
: : : : 임시인터넷파일들삭제()
: : : : {
: : : :  String path = GetSpecialFolderPath(CSIDL_INTERNET_CACHE);
: : : :  파일삭제(path);
: : : : }
: : : :
: : : : 디렉터리 안의 모든 파일삭제 방법에는
: : : : FindFirst / FindNext 등의 함수로 일일이 찾아서 삭제하는 방법도 있고
: : : : SHFileOperation 함수를 호출해서 일거에 삭제하는 방법도 있습니다.
: : : :
: : : :
: : : : locke 님이 쓰신 글 :
: : : : : 탐색기로 보면 쿠키파일, 이미지, js파일, php파일등등 나오는데 FindFirst/Next로 검색하면 아래처럼 나옵니다.
: : : : :
: : : : : .
: : : : : ..
: : : : : Content.IE5
: : : : : Content.MSO
: : : : : Content.Word
: : : : : desktop.ini
: : : : : FrontPageTempDir
: : : : : SKBGM.cfg
: : : : : SKBGM0.che
: : : : : SKBGM1.che
: : : : : SKBGM2.che
: : : : : SKBGM3.che
: : : : : SKBGM4.che
: : : : : SKBGM5.che
: : : : : SKBGM6.che
: : : : : SKBGM7.che
: : : : : SKBGM8.che
: : : : : SKBGM9.che
: : : : : SQM
: : : : :
: : : : : 이거 그냥 날리면 될까요? 캐시파일을 개별로 갖고있는게 아니라 저장소에 넣고 인덱싱 작업을 하는거 같은데..
: : : : :
: : : : : -locke
: : : : :
: : : : :
: : : : : locke 님이 쓰신 글 :
: : : : : : 임시 인터넷 파일 폴더(Temporary Internet Files)의 파일들을 지우고 싶습니다.
: : : : : :
: : : : : : 탐색기로 보면 파일들이 많이 나오는데 FindFirst/Next로 가져오면
: : : : : :
: : : : : : 전혀 다른 인덱스 파일 10여개만 읽어지네요.
: : : : : :
: : : : : : 아마도 다른 인덱스 방식을 뜨는거 같습니다.
: : : : : :
: : : : : : 깨끗하게 지우는 방법이 없나요?

+ -

관련 글 리스트
62341 임시 인터넷 파일 지우는게 애매하네요.. locke 1259 2010/09/06
62342     Re:임시 인터넷 파일 지우는게 애매하네요.. locke 1144 2010/09/06
62353         Re:Re:임시 인터넷 파일 지우는게 애매하네요.. 000 1204 2010/09/07
62358             Re:Re:Re:임시 인터넷 파일 지우는게 애매하네요.. locke 2470 2010/09/07
62361                 Re:Re:Re:Re:임시 인터넷 파일 지우는게 애매하네요.. kylix 1185 2010/09/07
62364                     Re:Re:Re:Re:Re:임시 인터넷 파일 지우는게 애매하네요.. locke 1227 2010/09/07
62388                         Re:Re:Re:Re:Re:Re:임시 인터넷 파일 지우는게 애매하네요.. locke 1202 2010/09/09
62363                     Re:Re:Re:Re:Re:임시 인터넷 파일 지우는게 애매하네요.. locke 1244 2010/09/07
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.