Re: смена аттрибутов

From
Oleg Moroz (2:5020/701.22)
To
Anton Kolomeitsev ()
Date
1998-03-05T22:20:09Z
Area
SU.WINDOWS.NT.PROG
Привет Anton!

01 Mar 98 22:06, Anton Kolomeitsev wrote to All:

 AK> почему не pаботает такая вот вещь

 AK>     ULONG   IoResult,
 AK>             Counter,
 AK>             Processor = 1;

 AK>     for ( Counter = 0; Counter < 0xFFFFFFFF; Counter++ )
 AK>     {
 AK>         IoResult =
 AK>             SetThreadIdealProcessor(
 AK>                 (HANDLE)Counter,
 AK>                 (ULONG)Processor
 AK>                 );

 AK>         if ( IoResult == (ULONG)(-1) )
 AK>         {
 AK>                 printf(
 AK>                     "failed with error code 0x%08X\n",
 AK>                     GetLastError()
 AK>                     );
 AK>         }
 AK>     }

 AK>     вот на все эта штука возвpащает ошибку 6 - INVALID_HANDLE - почему?

Потому что ни одно из данных тобою чисел не является валидным хэндлом thread'а. Для того, чтобы получить хэндл на thread, процесс, файл, любой другой кернельный объект, надо его сначала открыть. Ты же не ожидаешь, что перебрав числа от 0 до 0xFFFFFFFF в качестве файлового хэндла, ты переберешь в процессе этого все файлы у себя на диске ;)

Олег

---
 * Origin: got enough guilt to start my own religion (FIDO 2:5020/701.22)