
나는 다운로드했다PicoScope SDK, DLL 중 하나의 이름을 바꾸려고 합니다(그들의 이름에 따라).프로그래머 가이드 5페이지). 그러나 Windows 10에서는 이 작업을 수행할 수 없습니다.
ps3000a.dll
파일명을 에서 으로 변경하려고 합니다 PS3000a.dll
.
파일은 FAT32 USB 드라이브에 있습니다.
이것이 작동하지 않는 이유가 있습니까?
명령줄을 통해서도 작동하지 않는 것 같습니다. 힘내 배쉬:
MINGW64 /f/SDK/lib
$ ls | grep 3000a.dll
ps3000a.dll*
MINGW64 /f/SDK/lib
$ mv ps3000a.dll PS3000a.dll
MINGW64 /f/SDK/lib
$ ls | grep 3000a.dll
ps3000a.dll*
파워셸:
PS F:\SDK\lib> dir | findstr 3000a.dll
-a---- 7/11/2017 3:05 PM 2803016 ps3000a.dll
PS F:\SDK\lib> mv ps3000a.dll PS3000a.dll
PS F:\SDK\lib> dir | findstr 3000a.dll
-a---- 7/11/2017 3:05 PM 2803016 ps3000a.dll
답변1
FAT32는대소문자를 구분하지 않는 파일 시스템. 따라서 대소문자만 다른 동일한 이름을 가진 두 파일은 허용되지 않습니다. 예를 들어, 동일한 폴더에 이름 PS3000a.dll
이 동일한 두 개의 파일이 있을 수 없습니다 .ps3000a.dll
따라서 Windows 10이 알고 있기 때문에 파일 이름을 바꾸려는 시도가 실패하는 것 같습니다 PS3000a.dll
.ps3000a.dll
실제로 파일 이름을 변경하는 것이 아닙니다.. 그러나 먼저 파일 이름을 고유한 이름으로 바꾸면그 다음에원하는 대소문자를 사용하기 위해 두 번째로 이름을 바꾸면 작동합니다.
흥미롭게도 Windows 7에서는 그렇지 않습니다. 프로세스 모니터의 파일 이름 바꾸기 작업은 다음과 같습니다. 작업은 Windows 10 및 7에서 모든 측면에서 동일합니다. 플래그 ReplaceIfExists
는 False이고 결과는 둘 다 SUCCESS입니다.
그러나 Windows 7 상자에서만 전체 추적을 비교하면 다음 SetRenameInformationFile
과 같은 작업이 수행됩니다 WriteFile
.
Windows 10은 업데이트된 정보를 파일 시스템에 쓰지 않습니다!
답변2
새 이름이 이전 이름과 대문자만 다른 경우 Windows 탐색기에는 원래 대문자가 표시됩니다. Explorer 인스턴스를 종료하고 다시 시작하면 폴더로 돌아가면 새 대문자가 표시됩니다.