Process::Open should really just use "PROCESS_ALL_ACCESS" on Windows
Unless the user is explicitly allowed to set access parameters directly (which apply to Windows only), the value used should just be PROCESS_ALL_ACCESS, instead of the current values.
With #53 and #77 being considered, it might be worth implementing functionality to allow users to select the type of access rights they want to open a process with. However, there are several problems, for one, not granting enough access rights will prevent certain functionality from working (such as memory manipulation). On the other hand, giving too much access will prevent the process from opening. And what about functions that select processes on your behalf, such as Process::GetList, what would the default access rights of that Process::Open function be.
One solution would be to have a static function which specifies the "default" access rights to use, that way a user can customize the value prior to calling Process::GetList but that's a clunky solution at best. Another option is to use PROCESS_ALL_ACCESS for everything but allow users to override the access rights in the Process::Open function. Since #53 would likely introduce a new function, this might be a good enough solution to the problem.