先上SO 原問題(本人提出的):__main__.pyinstallerimporterror-failed-to-load-dynlib-dll-shcore.,博客寫的有點晚。
本人做了一個tkinter GUI的程序,爲了解決縮放和鼠標座標的問題,使用了
import ctypes
ctypes.windll.shcore.SetProcessDpiAwareness(2)
是可以在我的電腦上正常工作的(Windows 10)。
然後換了Windows 7,出現瞭如題中出現的問題。出現問題的原因是(個人理解):
Win10和Win7設置縮放的DLL文件不同(WINAPI的接口不同),所以當放入win7的機器會出現找不到DLL文件的情況。
正如答案所表示以及MSDN的官方文檔,代碼應該爲:
import ctypes
try: # >= win 8.1
ctypes.windll.shcore.SetProcessDpiAwareness(2)
except: # win 8.0 or less
ctypes.windll.user32.SetProcessDPIAware()