Advertisement
albaSANDROS

1st

Mar 15th, 2020
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.08 KB | None | 0 0
  1. #include <windows.h>
  2. #include <iostream>
  3. #include <conio.h>
  4. #include <vector>
  5. #include <string>
  6.  
  7. using namespace std;
  8.  
  9. int main()
  10. {
  11.     char path[] = "C:\\Users\\ALBA\\Documents\\Visual Studio 2013\\Projects\\SPOVM_lab2-2\\Debug\\SPOVM_lab2-2.exe";
  12.     char a;
  13.     int f = 1;
  14.  
  15.     STARTUPINFOA si;
  16.     ZeroMemory(&si, sizeof(si));
  17.     si.cb = sizeof(si);
  18.  
  19.     PROCESS_INFORMATION pi;
  20.     ZeroMemory(&pi, sizeof(pi));
  21.  
  22.     if (!CreateProcessA(path,
  23.         NULL,
  24.         NULL,
  25.         NULL,
  26.         FALSE,
  27.         NULL,
  28.         NULL,
  29.         NULL,
  30.         &si,
  31.         &pi)) {
  32.         cout << "CreateProcess failed\n";
  33.         return 0;
  34.     }
  35.  
  36.     HANDLE add = CreateEventA(NULL, TRUE, FALSE, "addProc");
  37.     HANDLE del = CreateEventA(NULL, TRUE, FALSE, "delProc");
  38.     HANDLE exit = CreateEventA(NULL, TRUE, FALSE, "exit");
  39.  
  40.     do {
  41.         a = _getch();
  42.  
  43.         switch (a)
  44.         {
  45.  
  46.         case('+') :
  47.             SetEvent(add);
  48.             break;
  49.  
  50.  
  51.         case('-') :
  52.             SetEvent(del);
  53.             break;
  54.  
  55.  
  56.         case('q') :
  57.             f = 0;
  58.             break;
  59.         }
  60.  
  61.     } while (f);
  62.  
  63.     SetEvent(exit);
  64.  
  65.     CloseHandle(add);
  66.     CloseHandle(del);
  67.     CloseHandle(exit);
  68.  
  69.     WaitForSingleObject(pi.hProcess, INFINITE);
  70.  
  71.     return 0;
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement