
19.05.2006, 13:04
|
|
Статус пользователя:
Регистрация: 26.07.2005
Сообщений: 568
Провел на форуме: 1290766
Репутация:
1236
|
|
2 равновесных варианта: 1) посмотри на конфиге своего прожекта. статически ли он компилирует библиотеки времени исполнения и стандартные багажи. если нет то траблов может быть бесконечное число. 2) привилегии. начиная от уровня пользователя залогиненного в системе и кончая исполняемым кодом. вот например если ты вызовешь ExitWindowsEx на NT машине (даже под админом) без предварительного подключения shutdown-привелегии, то эффекта от этого будет ноль.
например код подключения данной привелегии на си ( дельфю незнаю, извиняй  ) будет выглядеть так:
Код:
HANDLE tok;
if(OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&tok)) {
LUID luid;
TOKEN_PRIVILEGES tp;
LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&luid);
tp.PrivilegeCount=1;
tp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
tp.Privileges[0].Luid=luid;
AdjustTokenPrivileges(tok,FALSE,&tp,NULL,NULL,NULL);
LookupPrivilegeValue(NULL,SE_SECURITY_NAME,&luid);
tp.PrivilegeCount=1;
tp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
tp.Privileges[0].Luid=luid;
AdjustTokenPrivileges(tok,FALSE,&tp,NULL,NULL,NULL);
CloseHandle(tok);
}
__________________
 
snow white world wide
Последний раз редактировалось sn0w; 19.05.2006 в 13:27..
|
|
|