oageng Posted May 8, 2009 Share Posted May 8, 2009 I have two executable files: one I called it sysdps.exe and the other is called Test Engine.exe. These files are supposed work together. I'm a technician for a school. Students take the exams/tests on computers. Test Engine.exe is the one that runs the exam, and sysdps.exe is the one I created to block taking of screen shots of the exam (I problem we faced for a long time). I created sysdps.exe with your help, thanks a lot.I want to make the programs run at the same time and exit at the same time, something like that. May be make one the child of another process - I dont know if this will stop killing of one process leaving the other behing?I want a behaviour such that when you try to exit each process they both go. May be it could also pop up a message like "Are you sure you want to close the exam?" . How do I do this?I need you help---------------------------MCSE--MCSA--N+--A+ Link to comment Share on other sites More sharing options...
oMBRa Posted May 8, 2009 Share Posted May 8, 2009 check if the other process exists, if not then exit Link to comment Share on other sites More sharing options...
PsaltyDS Posted May 8, 2009 Share Posted May 8, 2009 I have two executable files: one I called it sysdps.exe and the other is called Test Engine.exe. These files are supposed work together. I'm a technician for a school. Students take the exams/tests on computers. Test Engine.exe is the one that runs the exam, and sysdps.exe is the one I created to block taking of screen shots of the exam (I problem we faced for a long time). I created sysdps.exe with your help, thanks a lot.I want to make the programs run at the same time and exit at the same time, something like that. May be make one the child of another process - I dont know if this will stop killing of one process leaving the other behing?I want a behaviour such that when you try to exit each process they both go. May be it could also pop up a message like "Are you sure you want to close the exam?" . How do I do this?I need you help---------------------------MCSE--MCSA--N+--A+What method does sysdps.exe use to block printscreen? Any reason it can't be in the same executable with Test Engine.exe? If the code in Test Engine.exe doesn't have any blocking points (i.e. no MsgBox(), GUIs run in event mode, etc.). If they still need to be separate, an AdLibEnable() function in can periodically test that sysdps.exe is running and if not react as appropriate. But blocking points can still break this method too.If it's a classroom machine you have firm control over, then sysdps.exe can be a Service or scheduled task run so that the test-taker wouldn't have rights to stop it. Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law Link to comment Share on other sites More sharing options...
oageng Posted May 8, 2009 Author Share Posted May 8, 2009 check if the other process exists, if not then exitPlease help with the coding Link to comment Share on other sites More sharing options...
weaponx Posted May 8, 2009 Share Posted May 8, 2009 check if the other process exists, if not then exitThis would require a 3rd process. The real answer here is to run the blocking program as a service. Link to comment Share on other sites More sharing options...
oageng Posted May 8, 2009 Author Share Posted May 8, 2009 (edited) What method does sysdps.exe use to block printscreen? Any reason it can't be in the same executable with Test Engine.exe? If the code in Test Engine.exe doesn't have any blocking points (i.e. no MsgBox(), GUIs run in event mode, etc.). If they still need to be separate, an AdLibEnable() function in can periodically test that sysdps.exe is running and if not react as appropriate. But blocking points can still break this method too.If it's a classroom machine you have firm control over, then sysdps.exe can be a Service or scheduled task run so that the test-taker wouldn't have rights to stop it. No, these are not desired effects. Right now sysdps.exe and test engine.exe run nicely as separate processes. I do not want (actually I cannot) to embed sysdps.exe into Test Engine.exe. I dont know how Test Engine.exe was programmed, and I'm not interested in knowing now. I do not want to decompile it; I'm also still learning how to program.I created 2 batch files, one that calls sysdps.exe and Test Engine.exe and waits for Test Engine.exe to complete and finally kills sysdps.exe. The other batch actually calls the other file batch file, hides the files and does a clean up by deleting files after the exam. Everything is cool about these batch files. But I want to get rid of them as well for security reasons.I want to produce an executable that can call these 2 programs (sysdps.exe and Test Engine.exe) and make sure that they are not exited individually through a tool that kills processes like task manager.One more thing I do not want to schedule. I want these to run only when somebody clicks the Test Engine shortcut on the start menu. Its smooth with these batch files (but I do not want them).Help? Edited May 8, 2009 by oageng Link to comment Share on other sites More sharing options...
Yashied Posted May 8, 2009 Share Posted May 8, 2009 But you can kill the first this 3rd program, and then engine.exe. I think weaponx rights, you need to start engine.exe as a service. My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More... Link to comment Share on other sites More sharing options...
weaponx Posted May 8, 2009 Share Posted May 8, 2009 The first problem, the batch files cannot force sysdps.exe to run, smart kids will know how to open the batch file and run Test Engine.exe 1. Modify sysdps.exe to check every few seconds for the existence of Test Engine.exe, if it exists begin blocking. Continue checking for Test Engine.exe every few seconds, if it doesn't exist then stop blocking. 2. Run sysdps.exe as a service with admin permissions so it can't be closed by a student. Link to comment Share on other sites More sharing options...
Richard Robertson Posted May 8, 2009 Share Posted May 8, 2009 You could have a third process that will watch the sysdps program, and make sysdps watch the third program. Then if one closes, you still have code running and you can report the student somehow. Link to comment Share on other sites More sharing options...
oageng Posted May 9, 2009 Author Share Posted May 9, 2009 Hey fellas, I think lordicast gave me a perfect answer on my first post when I started this project. I didnt know he had replied. I revisited the topic.here is the link:http://www.autoitscript.com/forum/index.php?showtopic=93947He talked about collecting processes in safe mode and creating a list of these processes. Like he said I can edit my sysdps.exe code so it can monitor processes as well. Then in this case I wouldnt need batch files. I do agree with you as well on the idea of putting a 3rd process.Here is my logic:1) modify sysdps.exe to monitor processes and compare against the process list collected in safe mode, according to lordicast.2) create a 3rd process that can call sysdps.exe and Test Engine.exe, wait for Test Engine.exe to complete and close sysdps.exe and itself.3) make the start menu shortcut to point on the 3rd process program, so that the process only launches when the program is started.I'm absolutely ok with 3) . I have a problem with 1) and 2), collecting processes and creating a list. No 2) doesnt seem to be that hard, may be I could use Run, but the questing is how do I make it to wait and close itself. RunWait?How do I code 2) and weave together 1) ? I'll go back and ask lordicast as well?Thanx guys Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now