strontic / xcyclopedia

Encyclopedia for Executables

Home Page:https://strontic.github.io/xcyclopedia

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Improving "How is this done?"

jzabroski opened this issue · comments

Hi - I am curious how you just arbitrarily run EXE's on a machine. Do you use a VM? Windows Docker containers dont support GUI apps, so there is definitely a limitation there.

https://github.com/strontic/xcyclopedia#how-is-this-done

Good question. That section of the ‘README’ definitely needs some improvements.

For running the script yourself, it's definitely recommended to execute it in a virtual test environment with a full OS installation (haven’t tested it in docker or even Server Core).

For the JSON/CSV dataset provided in the ‘output’ directory, it was gathered within VMs to keep the dataset clean/trusted. Though, for the original test runs, it was executed on a bare metal laptop ☺️.

The PowerShell method used to start and stop the executables is the Diagnostics.Process class (See script/Start-ProcessGetOutput.psm1). That method was chosen because it somehow provides more consistent stdout/stderr output, among other things.

Does that answer your question?

Happy New Year. 🎉

A little bit. I was curious if you automated any of this. To be honest, I last used Windows Hyper-V for VMs in 2015, and was not impressed compared to VMWare on Linux, so I stopped using it, so I don't know all the details around how to automate extracting executable information. But my thought is you could run choco install -y <packagename> you could really increase the xcyclopedia size really fast.

In terms of basic automation, the bundled PowerShell scripts can be scheduled. However, for more advanced automation like the stand-up and teardown of a VM and associated scripts, that hasn't been tested; nor has a package manager such as Choco been used.

I made improvements to the README section, "How is this down". Thanks for the feedback.