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);