----- Original Message ----- From: "Sisyphus"

C:\sisyphusion\Inline-pegex\C>perl -Mblib xt/pegex.t
1..2
Useless use of \E at C:/MinGW/perl516/site/lib/IO/All.pm line 76.
Useless use of \E at C:/MinGW/perl516/site/lib/IO/All.pm line 84.
Useless use of \E at C:/MinGW/perl516/site/lib/IO/All.pm line 85.
ok 1
ok 2 - parse worked
rm: cannot remove `_Inline/lib/auto/pegex_t_c4f8/pegex_t_c4f8.dll': Permission denied
# Looks like your test exited with 256 just after 2.

Why can't it remove that file ? (It can do it in the BEGIN block, but not the END block.)

No need to worry - that's just the way MS Windows works.
Having loaded the dll, it then can't be removed until *after* the script (process) has exited.

Well .... if we really do need to clean everything up in the END block it would first have to unload the dll. This could be done using a Win32::FreeLibrary(HANDLE) call.
Assuming we can get a hold of the HANDLE, that would work.
Hopefully, in the finished product, there'll be no need to perform this clean up.

Cheers,
Rob


Reply via email to