2010-04-30 5 views
10

잠시 동안 검색했지만 아무 도움이되지 않습니다. 드라이브 문자가 공유 드라이브/네트워크 드라이브 또는 파이썬에서 로컬 디스크를 나타내는 지 여부를 확인하는 방법이 있습니까? 내 정보를 제공하는 일부 Windows API 함수가있는 것 같지만 찾을 수 없습니다. 아마도 이미 파이썬에 통합 된 메소드가 있을까요? 내가 무엇을 찾고드라이브 문자가 공유/네트워크 드라이브인지 여부를 프로그래밍 방식으로 확인하십시오.

이 또는 유사한 행동 뭔가 :

someMagicMethod2() #outputs list of shared drive letters 

덕분에 많은 사전에 :뿐만 아니라 나에게 도움이 될

someMagicMethod("C:\\") #outputs True 'is a local drive' 
someMagicMethod("Z:\\") #outputs False 'is a shared drive' 

!

답변

11

모듈의 GetDriveType 기능이 도움이 될 수 있습니다. GetDriveType WINAPI 기능의 래퍼입니다.

import win32file 
isNetworkDrive = win32file.GetDriveType("Z:\\") == win32file.DRIVE_REMOTE 

당신은 다음의 win32api 모듈의 GetLogicalDriveStrings() 기능을 모두 열거에만 네트워크 드라이브를 선택하는 루프를 사용할 수있을 것입니다.

+0

내가 검색 한 내용이 훌륭합니다! 고마워요! –

관련 문제