Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/setuptools/windows_support.py: 44%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

16 statements  

1import platform 

2import ctypes 

3 

4 

5def windows_only(func): 

6 if platform.system() != 'Windows': 

7 return lambda *args, **kwargs: None 

8 return func 

9 

10 

11@windows_only 

12def hide_file(path): 

13 """ 

14 Set the hidden attribute on a file or directory. 

15 

16 From http://stackoverflow.com/questions/19622133/ 

17 

18 `path` must be text. 

19 """ 

20 __import__('ctypes.wintypes') 

21 SetFileAttributes = ctypes.windll.kernel32.SetFileAttributesW 

22 SetFileAttributes.argtypes = ctypes.wintypes.LPWSTR, ctypes.wintypes.DWORD 

23 SetFileAttributes.restype = ctypes.wintypes.BOOL 

24 

25 FILE_ATTRIBUTE_HIDDEN = 0x02 

26 

27 ret = SetFileAttributes(path, FILE_ATTRIBUTE_HIDDEN) 

28 if not ret: 

29 raise ctypes.WinError()