1. Пользуйтесь тегами кода. - [code] ... [/code] 2. Точно указывайте язык, название и версию компилятора (интерпретатора). 3. Название темы должно быть информативным. В описании темы указываем язык!!!
Требуется получить идентификатор текущего процесса...Использую функцию GetCurrentProcessId(void); В результате - вылет приложения...Объясните пожалуйста, в чём дело?
volvo попробую объяснить. мы с 18192123 учимся вместе, и проблема это наша общая) лабораторная работа, в первой части которой мы создавали процессы, объединяли их в задание.. а здесь требуется:
Цитата
Разработать программу, которая · Определит идентификатор текущего процесса, используя функцию GetCurrentProcessID() · Определит псевдодескриптор текущего процесса, используя функцию GetCurrentProcess() · Определит дескриптор текущего процесса, используя функцию DuplicateHandle() и значение псевдодескриптора · Определит копию дескриптора текущего процесса, используя функцию OpenProcess()
то есть извращения с duplicatehandle производятся из чисто спортивного интереса. а в продолжение вопроса: имело место такое:
if (CreateProcess(NULL,ofn.lpstrFile, NULL,NULL,FALSE,CREATE_DEFAULT_ERROR_MODE,NULL,NULL,&si,&pi)) { hProcess=pi.hProcess; AssignProcessToJobObject(hJob,hProcess); }
процесс lab2 запускает другой процесс, имя которого получаю из OpenDialog. пользуясь твоей терминологией: можем ли мы считать созданный процесс чужим по отношению к lab2? то есть так: запущен процесс lab2 и процесс processID, и требуется с помощью функции duplicatehandle создать описатель для processID,корректный в контексте lab2... я правильно вас поняла? если правильно,то по моему processID это hProcess?