IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Создание и уничтожение процессов, C/C++
сообщение
Сообщение #1


Знаток
****

Группа: Пользователи
Сообщений: 306
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Скажите пожалуйста, как создать и уничтожить процесс в ОС семейства Microsoft Windows? Знаю о существовании системного вызова CreateProcess(…), допускающего использование множества дополнительных параметров. Если возможно, то напишите пожалуйста текстовый пример использования CreateProcess(…).
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Тебя что, на MSDN забанили? smile.gif
MSDN: FindFirstFile Function, там же в списке "See Also" есть и FindNextFile, и FindClose
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Знаток
****

Группа: Пользователи
Сообщений: 306
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Цитата(volvo @ 14.11.2008 17:12) *

Тебя что, на MSDN забанили? smile.gif
MSDN: FindFirstFile Function, там же в списке "See Also" есть и FindNextFile, и FindClose

Да тут чёрт голову сломит smile.gif
Вот что у меня получилось...конечно по большей части скорей не получилось, но всё же :

#include <iostream>
#include <io.h>
#include <windows.h>
#include <string.h>
#include <conio.h>
using namespace std;
void strdel(char *st)
{
for(int i=strlen(st)-1;st[i]!='\\';i--)
st[i]='\0';
}

int main()
{
_finddata_t data;
int x=-1,y;
char maska[]="E:\\abra\\*.exe";
char path[]="E:\\abra\\";


STARTUPINFO si={sizeof(si)};
PROCESS_INFORMATION pi;

ZeroMemory(&si, sizeof(si));

while(x==-1)
x=_findfirst(maska,&data);

y=x;
strcat(path,data.name);
cout <<"path: " <<path <<endl;
if(CreateProcess(path,NULL,NULL,NULL,false,0,NULL,NULL,&si,&pi))
{
Sleep(1000);

TerminateProcess(pi.hProcess,NO_ERROR);
cout <<endl;
DeleteFile(maska);
}
strdel(path);
cout <<"path: " <<path <<endl;

while(true)
{

x=_findnext(y,&data);
if(x==0)
{
strcat(path,data.name);

if(CreateProcess(path,NULL,NULL,NULL,false,0,NULL,NULL,&si,&pi))
{
Sleep(1000);
TerminateProcess(pi.hProcess,NO_ERROR);
DeleteFile(maska);
strdel(path);
}
}

}

return 0;
}

То есть я нахожу exe-шники, создаю процесс, но удалить не получается... В задании ещё что-то про командную строку сказано... Помогите пожалуйста довести программу до ума!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Rocket   Создание и уничтожение процессов   9.11.2008 21:23
volvo   Вот простейший пример: Шаг 131 - CreateProcess   9.11.2008 21:28
Rocket   Вот простейший пример: [url=http://www.firststeps…   9.11.2008 21:37
volvo   Что значит "не создается"? Не появляется…   9.11.2008 21:43
Rocket   Что значит "не создается"? Не появляетс…   9.11.2008 21:59
volvo   Ну так сначала исправь ошибки а потом будешь говор…   9.11.2008 22:18
Rocket   Ну так сначала исправь ошибки а потом будешь гово…   11.11.2008 4:27
volvo   Искать в папке файлы с необходимыми расширениями (…   11.11.2008 5:35
Rocket   Искать в папке файлы с необходимыми расширениями …   14.11.2008 21:03
volvo   Тебя что, на MSDN забанили? :) MSDN: FindFirstFile…   14.11.2008 21:12
Rocket   Тебя что, на MSDN забанили? :) [url=http://msdn.m…   15.11.2008 2:14
volvo   - это не диагностика... Почему не получается? Что…   15.11.2008 2:59
Rocket   - это не диагностика... Почему не получается? Что…   15.11.2008 3:22
volvo   То же самое (проверку на 0 и печать в этом случае …   15.11.2008 3:30
Rocket   То же самое (проверку на 0 и печать в этом случае…   15.11.2008 3:39
Rocket   Только учти, что при удалении файла есть особые …   15.11.2008 4:34
volvo   Эти операции здесь ни при чем. Ошибка №2 - это ERR…   15.11.2008 5:46
Rocket   Эти операции здесь ни при чем. Ошибка №2 - это ER…   18.11.2008 22:45


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 4.05.2024 3:11
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name