m8sec/enumdb

Compiling issue [workaround]

spicyjuice opened this issue · 1 comments

I tried to compile the py to be portable with the following command:

pyinstaller -D -F -n main -c "enumdb.py"

But when i run it i get the following error:

Starting enumdb v2.0.4
-------------------------
Traceback (most recent call last):
  File "enumdb.py", line 446, in <module>
  File "enumdb.py", line 395, in main
TypeError: __init__() got an unexpected keyword argument 'daemon'
[10146] Failed to execute script enumdb

In order to fix it i removed the daemon parameter in the Thread function

Thread(target=enum_db().db_main, args=(args, t,)).start()

It would be great to have a standard procedure (change param in pyinstaller? change source?), in the meantime here is my workaround (and it's working).

P.s. awsome project :)

m8sec commented

Hi @spicyjuice,

Thanks for the feedback, glad your finding the tool useful! I was just looking into compiling enumdb as well and hope I can add that soon.

As for the error, I accidentally received the same one when using enumdb with Python2.7. Although the tool is written in Python3, a simple work around keeping the daemon parameter, would be changing line 395 to:

x = Thread(target=enum_db().db_main, args=(args, t,))
x.daemon = True
x.start()

I would look into the version of pyinstaller being used. However, with that said, I should have a few changes/improvements on the way and will add this to enable backwards compatibility.

- m8r0wn

Edit: Decided to go ahead and make those changes :) Should be fixed but keep me posted if there are any other issues. In the mean time, I will look into providing compiled executables or a standard method like you mentioned.