독립 개발자 네트워크 포럼 메인 :: 자유게시판 | 질문과 답변 | 개발 노하우 | 개발 팁 | Win8
여기는 포럼입니다. 오래된 글에 댓글 다는걸 주저하지 마세요.

All times are UTC + 9 hours




Post new topic Reply to topic  [ 1 post ] 
Author Message
 Post subject: 새로 생성한 파일이 탐색기에 보이지 않고 리프레시를 해야만 보이는 문제 해결
PostPosted: 30 Mar 2012, 14:10 
Offline
User avatar

Joined: 19 Nov 2010, 15:37
Posts: 462
CreateFile 등으로 파일을 생성할 경우, 탐색기에서는 해당 폴더의 파일이 생성되었음을

자동으로 감지해서 파일 목록을 갱신을 해주도록 되어 있습니다만...

(보통 이 기능을 직접 구현할때는 SHChangeNotifyRegister() 를 사용하죠.)


어찌된 일인지 종종 새로 생성한 파일이 탐색기에 보이지 않고 F5를 눌러야만 그제서야 보이는 경우가 있습니다.


관련 문제가 재현이 안되어서 해결을 못하고 있었는데, 갑자기 제 PC 가 그 증상이 나타나기

시작하더군요. ^^

리부팅하면 문제가 사라질지도 모르기 때문에 PC상태를 최대한 그대로 둔채 관련 문제를 찾아보았습니다.


구글링해서 찾은곳은 http://stackoverflow.com/questions/6473 ... s-explorer 에 달린 답글인데,

tortoisesvn 의 ShellUpdater.cpp 에 답이 있더군요 ( http://tortoisesvn.tigris.org/svn/torto ... pdater.cpp (username: "guest", password: "") )


어쨌거나 결론은 파일을 생성한 폴더에 대해서 다음과 같이 처리를 해주면 됩니다.


Code:
SHChangeNotify(SHCNE_UPDATEITEM, SHCNF_PATH | SHCNF_FLUSHNOWAIT, path2refresh, NULL);


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 



cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group