SetSecurityInfo: необъявленный идентификатор - PullRequest
0 голосов
/ 27 февраля 2012

Я пытаюсь установить разрешения безопасности для объекта.Это код:

    PROCESS_INFORMATION pi = {0};
    STARTUPINFO si = {0};
    si.cb = sizeof(STARTUPINFO);

    CreateProcess("C:\\AP\\DataBase\\dbntsrv.exe", NULL, NULL, NULL, FALSE, CREATE_NO_WINDOW, NULL, "C:\\ADP\\SQLBase", &si, &pi);      


    result = SetSecurityInfo(pi.hProcess, SE_WINDOW_OBJECT, PROCESS_TERMINATE, NULL, NULL, NULL, NULL);

Но это дает мне ошибку времени компиляции 'SetSecurityInfo' : undeclared identifier .. и 'SE_WINDOW_OBJECT' : undeclared identifier .. Любая идея, почему это происходит?Спасибо

Ответы [ 2 ]

5 голосов
/ 27 февраля 2012

В документации Windows говорится, что вам нужно включить Aclapi.h.Вы?

1 голос
/ 27 февраля 2012

Перед началом процесса вы должны установить атрибуты безопасности, а не после него. Или запустите процесс, приостановив, а затем возобновите его.

SE_WINDOW_OBJECT не подходит для безопасности процесса. Используйте SE_KERNEL_OBJECT.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...