Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Программа master
- #define _CRT_SECURE_NO_WARNINGS
- #include <windows.h>
- #include <iostream>
- #include <stdio.h>
- #include <string.h>
- using namespace std;
- LPWSTR winApiFormat(char text[], wchar_t wtext2[128]) {
- mbstowcs(wtext2, text, strlen(text) + 1);//Plus null
- LPWSTR ptr = wtext2;
- return ptr;
- }
- void titleSet(char a[]) {
- wchar_t wtext2[128];
- LPWSTR ptr2 = winApiFormat(a, wtext2);
- SetConsoleTitle(ptr2);
- }
- void setIntArg(char* cmd,int pid) {
- sprintf(cmd + strlen(cmd), " %d", pid);
- }
- void setCharArg(char* cmd, char* arg) {
- sprintf(cmd + strlen(cmd), " %s", arg);
- }
- // master.exe
- int main(int argc, char* argv[]) {
- char cmd[128];
- if (argc != 1) strcpy(cmd, argv[1]);
- else strcpy(cmd, "slave.exe");
- char title[128] = "master";
- titleSet(title);
- int pid = GetCurrentProcessId();////////////////////////////////////
- char Process[128] = "Process1";
- char Prioritet[128] = "Prioritet1";
- setIntArg(cmd, pid);
- setCharArg(cmd, Process);
- setCharArg(cmd, Prioritet);
- cout <<"Master: Start ___ " <<cmd << " ___" << "\n";
- //createProcess(cmd);
- wchar_t wtext[128];
- LPWSTR ptr = winApiFormat(cmd, wtext);
- //mbstowcs(wtext, cmd, strlen(cmd) + 1);//Plus null
- //LPWSTR ptr = wtext;
- STARTUPINFO info;
- memset(&info, 0, sizeof(info));
- info.cb = sizeof(info);
- PROCESS_INFORMATION pinfo;
- cin.get();
- if (!CreateProcess(NULL, ptr, NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS,
- NULL, NULL, &info, &pinfo)) {
- cout << "Master: Slave protsess ne zapushchen!!!!!!!!!!!!!\n";
- cout << "Master: проверьте правильность указания имени процесса в коммандной строке";
- }
- cout << "Master: Sleeping\n";
- Sleep(10000);
- exit(0);
- cout << "Master: EXIT\n";
- cin.get();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement