I need a Shell hook/extention, i.e ShellExecuteEx wrapper, and Job object creation/assignment class to proxy the native win32 process creation method and either assign the process to a newly created JobObject, assign it to an existing job or process it in the normal manner; I have some sample code and a bit of sparce documentation if ya’ want a few quick leads on these technologies. Though neither ShellExecute hooks nor JobObject management methods are particularly challenging in and of themselves, there is some testing and additional handling necessary that may prove this little project provocative. The essence of what is needed…
• **ShellExecuteEx Hook/Extension**
Hook all ShellExecuteEx Win32 Calls so you can do a bit of testing then pass process creation on to either a custom Job Object creation/assignment class or continue the process creation typical to the native API; this decision will be based on the existence of a user context ( in the form of a hash ) set by an environment handler class.
• **JobObject Manager Class
[CreateJobObject() AssignProcessToJobObject()] As an alternative to the ShellExecute process creation mechanism, allowing us to create a job with some basic security descriptors and then assign hooked ShellExecuteEx processes to this job when requested; The security descriptors needed will be forthcoming…
• **Authentication Services**
Use a simple flat file to determine user:password authentication. The format would be UID:user_name:passwd.
• **Environment Handler Class**
Manage the creation and destruction of a user context hash containing a UID key and volume path ( drive letter ) key for any authenticated users; additionally, mount and un-mount a volume when environment creation/destruction is requested ( this will need to test for an available drive letter too ).
I leave town on the 7th of October, and I want to implement this solution on my home computers before leaving them at the mercy of my little sister an her friends internet transgressions.
**Note:** *I have created simple high Level pseudo code and flow control charts for the project, additionally, I have sample code for most modules -available upon request...
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bid request. **Note, must run as a service w/ task icon.**
3) Complete ownership and distribution copyrights to all work purchased.
Windows XP*, Windows 2000*