Mark Mikofski added the comment:
Snippets of "proprietary" code
`setup.py`
----------
# run clean or build libraries if they don't exist
if 'clean' in sys.argv:
try:
os.remove(os.path.join(LIB_DIR, SOLPOSAM_LIB_FILE))
os.remove(os.path.join(LIB_DIR, SPECTRL2_LIB_FILE))
except OSError as err:
sys.stderr.write('%s\n' % err)
`core.py`
---------
# load the DLL
solposAM_dll = ctypes.cdll.LoadLibrary(SOLPOSAMDLL)
_solposAM = solposAM_dll.solposAM
After deleting files, setup.py tries to build, then runs test_cdlls.py a
unittest that contains test_solposAM() that calls solposAM() and imports
core.py that contains solposAM.
Case 1:
-------
I put the load library calls inside the function solposAM().
Function calls works as expected.
I am able to delete dlls after interpreter exits and restarts using os.remove()
Case 2:
-------
I put the load library calls at the module level.
Function calls works as expected.
If I try to delete dlls after interpreter exits and restarts using os.remove()
I get access denied, but I can delete them from windows explorer.
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue14597>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com