tim golden cggctimgoldenmeuk rickey kyle w wrote im trying get file version executable file network times network quite slow prevent blocking main application decided put code separate thread depending network speed take 30 seconds return vpn connection etc put separate thread block entire application function returns take following code example import threading time os win32api file rnetwork_sharefileexe def get_version_number ospathexistsfile info win32apigetfileversioninfofile ms infofileversionms ls infofileversionls return win32apihiwordms win32apilowordms win32apihiwordls win32apilowordls def test print joinstri get_version_number print aa threadingthreadtargetteststart 1 print aa timesleep05 output looks like aa aa 20015 aa problem 1st aas got printed printed version number came back ideas happening ive got python 25 pywin32210 works setup stuck timesleep test function simulate slowness network might make difference suppose couple tangential points 1 youre slow connection anyway dont doublewhammy checking files existence fetching version info go version info catch exception caveat exception seems identical nonexistent file file version info 2 may selfcontained sample code youre generally going better using queue something suitably locked sharing mechanism get info thread cant see anything else obvious see behaviour local drive faked delay eg timesleep 5 might various levels network setup conspiring block process really sure prove showstopper might consider processing module plugcompatible threading uses processes instead bit sledgehammer crack nut maybe tjg _______________________________________________ pythonwin32 mailing list kpitckaew45pythonorg httpmailpythonorgmailmanlistinfopythonwin32 thu 07 aug 2008 213824 0100 pythonwin32 getfileversioninfo blocks main thread