Microsoft MVP성태의 닷넷 이야기
c# 인터넷 임시 파일 삭제 문의 [링크 복사], [링크+제목 복사],
조회: 23429
글쓴 사람
아로스 (isrule at gmail.com)
홈페이지
첨부 파일
(연관된 글이 1개 있습니다.)

안녕하세요.

c#으로 인터넷 임시 파일을 삭제할려고 하는데 진행이 되지 않아서 질문을 드립니다.

개발환경: windows8.1, visual 2013

먼저, 익스플로러상단 메뉴 도구 > 인터넷옵션 > 설정 > 파일보기 클릭해서 보이는 파일 리스트와 직접 탐색기로 찾아 들어갔을 때 파일 리스트가 틀립니다.
왜 틀릴까요?^^

c# 프로그램으로 접근했을때 인터넷옵션에서 나오는 리스트가 나오는게 아니라 탐색기로 찾아 들어갔을때 리스트가 보입니다.

탐색기로 확인되는 파일은 파일로 첨부했습니다.

제가 삭제하고 싶은건 인터넷 옵션으로 찾아 들어갔을 때 보이는 파일 리스트만 삭제를 하면됩니다.

어떻게 삭제를 하면 되는지 조언 좀 부탁드립니다.


아래 개발 소스입니다.


    class cache
    {
        static void Main(string[] args)
        {
            new cache().clearIECache();
        }

        public void clearIECache()
        {
            ClearFolder(new DirectoryInfo(Environment.GetFolderPath(System.Environment.SpecialFolder.InternetCache)));
        }

        public void ClearFolder(DirectoryInfo folder)
        {
            foreach(FileInfo file in folder.GetFiles())
            {
                try
                {
                    file.Delete();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message.ToString());
                }
                finally
                { }
    
            }
                         
            foreach(DirectoryInfo subfilder in folder.GetDirectories())
            {
                ClearFolder(subfilder);
            }

        }
    }


[연관 글]






[최초 등록일: ]
[최종 수정일: 7/28/2014]


비밀번호

댓글 작성자
 



2014-07-28 12시01분
"Tools" / "Internet Options" 메뉴를 실행해 "General" 탭의 "Settings" 버튼을 눌러 나오는 "Current location:"의 위치가 제 경우에 다음과 같습니다.

c:\users\[사용자 계정]\AppData\Local\Microsoft\Windows\INetCache

그런데, Environment.GetFolderPath(Environment.SpecialFolder.InternetCache) 코드로 얻은 경로도 그와 동일합니다. 어떻게 다른지 혹시 더 설명을 해주실 수 있을까요?
정성태
2014-07-29 01시30분
[아로스] 답변 감사합니다.

화면 캡쳐해서 올렸습니다.

http://aroskr.tistory.com/123

2가지 이미지 모두 c:\users\[사용자 계정]\AppData\Local\Microsoft\Windows\INetCache 경로인데
확인되는 파일 리스트는 틀립니다.

접근 방법이 틀린 차이점이 있지만 접근 방법이 틀리다고 파일 리스트가 다르게 보이는건 이해가 안가는 부분입니다.

프로그램으로 해당 디렉토리로 접근해서 파일리스트를 확인하면 탐색기로 접근했을 때 파일 리스트가 확인됩니다.

저는 익스플로러상단 메뉴 도구 > 인터넷옵션 > 설정 > 파일보기 클릭해서 보이는 파일 모두 삭제하고 싶거든요.

답변 부탁드립니다.^^
[guest]
2014-07-29 02시07분
[ryujh] 안녕하세요. 홈페이지에 가서 캡쳐화면을 보니까
탐색기로 직접접근시 Virtualized 폴더가 보이네요. 이 폴더가 아마도 IE에서 옵션으로 접근시 뜨는 폴더와 관련이 있을 것으로 봅니다.


이것과는 다른 예이지만

C:\users\<사용자 계정>\AppData\Local\VirtualStore\ 가 있는데 이것이 탐색기에서는 C:\ 로 인식하는 경우가 있습니다.

즉 C:\Program Files\... 이렇게 프로그램이나 설정파일이 존재한다면 C:\users\<사용자 계정>\AppData\Local\VirtualStore\Program Files\... 이렇다는 것입니다.

C# 프로그램을 실행한 계정과 IE를 실행한 계정이 폴더 접근이 다르다고 생각할 수 있을 것입니다.

http: //www.symantec.com/connect/articles/folder-virtualization-concepts-windows-vista

관련된 글 링크입니다. 읽지는 않았지만 이런 것도 있다는 것을 알려드립니다.

감사합니다.


[guest]
2014-07-29 02시22분
[ryujh] 안녕하세요. 추가로 알려드리자면 화면 캡쳐에서 IE 통해서 본것과 직접 탐색기에서 본것이 있는데

직접 탐색기에서 본것에서 Content.IE5 하위폴더가 여러개 있으며 그곳에 IE 통해서 본 파일들이 분산되어있습니다.

실제 C#에서 삭제하려면 Content.IE5 하위폴더를 삭제해보십시오.



[guest]
2014-07-29 03시59분
INetCache는 이런 경우 특수한 뷰를 가지고 있습니다. 이 뷰는 desktop.ini 파일 덕분인데요. 아마도 위의 닷넷 코드를 실행하면서 desktop.ini 파일이 INetCache에서 삭제되었기 때문에 탐색기에서 그런 식으로 보이는 것 같습니다. 근데 이상하군요. 제가 테스트 해보니까 IE의 "Internet Options" 메뉴를 통해 보게 되면 다시 자동으로 desktop.ini가 생성되기 때문에 그 이후로는 문제가 없습니다.

어쨌든, 일단 cmd.exe 창을 띄워서 c:\users\[사용자 계정]\AppData\Local\Microsoft\Windows\INetCache 경로로 이동한 다음 "dir /a" 명령을 통해 desktop.ini 파일이 해당 폴더에 있는지 검삭해 보세요.

그리고, 만약 있다면 그 파일의 내용을 복사해서 덧글에 좀 올려주세요. 확인이 필요할 것 같습니다.
정성태
2014-07-30 01시07분
[아로스] 답변 감사합니다.

Virtualized, Content.IE5 두개 폴더를 직접 삭제하고 확인해보았지만 파일이 삭제되지 않았습니다.

c:\users\[사용자 계정]\AppData\Local\Microsoft\Windows\INetCache 경로에 있는 desktop.ini 파일 내용입니다.

[.ShellClassInfo]
ConfirmFileOp=0
UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}






[guest]
2014-07-30 01시50분
특이한 경우군요. desktop.ini가 있는데도 INetCache가 원본 상태 그대로 탐색기에서 보여진다고 하시니. 해당 사항이 제 컴퓨터 및 테스트 컴퓨터에서는 재현이 안되는데다 웹 검색을 해봐도 딱히 그와 유사한 이야기가 없어서 더 이상 답변이 불가능합니다. 어쩔 수 없이 재현이 가능한 아로스님이 그 원인을 밝혀서 공개해 주셔야 할 것 같습니다. ^^;
정성태
2014-07-31 01시32분
[아로스]

그렇군요ㅜㅜ

해결하면 답변 올리도록 하겠습니다.^^

무더위 건강 유의하세요^^

[guest]
2014-08-13 02시55분
일단 제가 말씀드릴 수 있는 것은 이게 전부입니다. ^^

INetCache 폴더가 다르게 보이는 이유
; http://www.sysnet.pe.kr/2/0/1732

@아로스님의 결과가 기대되는 군요. ^^
정성태
2014-08-25 06시17분
[아로스]
아래 코드 실행하면 InetCache 폴더에 파일이 삭제되었습니다.

static void Main(string[] args)
{
    System.Diagnostics.Process.Start("rundll32.exe", "InetCpl.cpl,ClearMyTracksByProcess 8");
}

이 방법이 옮은지 확인 좀 부탁드립니다.^^



[guest]
2014-08-25 01시12분
아래의 URL에 잘 정리된 거 보니까,

IE-ClearingCachePermalink
; https://gist.github.com/AdilHindistan/6e48a27a1c4e9b3d813d

쓸만한 방법일 것 같습니다. ^^
정성태
2014-08-27 12시01분
[아로스] 내용 확인했습니다.

많은 도움 되었습니다.

감사합니다.^^
[guest]

... 46  47  [48]  49  50  51  52  53  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
3634Hyun...11/2/201510909c# 에서 webkit browser에서 webgl을 이용하는 사이트에 접속이 안됩니다. [1]
3633힘찬도약10/31/201511562mysql insert where not exists [6]
3632힘찬도약10/27/201512212C# Lock 관련해서 질문드립니다. [6]
3655iwc11/30/201510345    답변글 [답변]: C# Lock 관련해서 질문드립니다.
3631강준10/26/201513185iis 8.5 preload 기능에 대해 질문이 있습니다. [9]
3630김정훈10/25/201511590몬티홀 게임 관련 질문 [1]
3629pooq10/23/201512102리플렉션 관련해서 질문 입니다. [3]
3628최영민10/22/201511063스마트 클라이언트 로딩속도 문의입니다. [3]
3627양주호10/22/201510861C#으로 컨버팅 하려고 하는데요... [1]
3626조성진10/21/201512014책보고 첫번째 예제부터 문제가 생기네요 ^^; [4]파일 다운로드1
3623Bere...10/19/201512037질문이라기 보단... [2]
3625Bere...10/20/201511545    답변글 [답변]: 질문이라기 보단... [2]파일 다운로드1
3621힘찬도약10/18/201511642[C# 6.0]multi threading과 ui control [9]
3624힘찬도약10/19/201511532    답변글 [답변]: [C# 6.0]multi threading과 ui control [6]파일 다운로드1
3620popo10/13/201510484WPF의 datagrid, listview 컨트롤 관련 질문 입니다. [1]
3619링크의 ...10/12/201514996OCX 로드 관련 질문입니다. [5]파일 다운로드1
3616수요일밥...10/7/201515356몇 가지 오류 (2) [6]
3615김응규10/7/201510726다시한번 질문 드립니다. (이번엔 자세하게 기술했습니다.) [1]
3614김응규10/6/20159593안녕하세요. wcf net.tcp 관련 질문 하나만 올려요~~ [4]
3613강준10/5/201514401IIS Application Pool 시작/중단 에 대한 이벤트 로그는 어디에 남나요??? [2]
3612심심한일...10/4/201516360몇 가지 오류 [4]
3611나그네9/30/201510725안녕하세요 답글을 이제 보았습니다. [3]
3608기차니9/21/201511509컬럼이 많은 데이터그리드에서 정렬 할 때 속도가 느립니다. [3]
3609기차니9/22/201511615    답변글 [답변]: 컬럼이 많은 데이터그리드에서 정렬 할 때 속도가 느립니다. [1]파일 다운로드1
3610기차니9/23/201512478        답변글 [답변]: [답변]: 컬럼이 많은 데이터그리드에서 정렬 할 때 속도가 느립니다. [5]파일 다운로드1
3606guest9/20/201511069확장 클래스 네이밍 규칙은 어떻게 하시나요? [1]
... 46  47  [48]  49  50  51  52  53  54  55  56  57  58  59  60  ...