Запрашивает изменение состояния элемента на значение, указанное параметром RequestedState. После изменения значения EnabledState ...

Запрашивает изменение состояния элемента на значение, указанное параметром RequestedState. После изменения значения EnabledState и RequestedState элемента будут одинаковыми. При вызове метода RequestStateChange несколько раз предыдущие запросы будут перезаписаны или утеряны. 
Код возврата 0 указывает, что изменение состояния успешно начато. 
Код возврата 3 означает, что невозможно завершить изменение состояния в течение указанного параметром TimeoutPeriod интервала времени. 
Код возврата 4096 (0x1000) указывает, что изменение состояния успешно начато, создан экземпляр ConcreteJob и ссылка на него возвращена в выходном параметре Job. Все остальные значения кода возврата указывают на ошибку.
Запрашивает смену состояния элемента на значение, заданное параметром RequestedState. После смены состояния значения EnabledState и RequestedState будут совпадать. При повторном вызове метода RequestStateChange предыдущие результаты могут быть потеряны или перезаписаны. 
Если возвращается 0, изменение состояния было инициировано успешно. 
Код возврата 3 означает, что не удалось изменить состояние в течение интервала, заданного параметром TimeoutPeriod. 
Код 4096 (0x1000) указывает на то, что успешно инициировано изменение состояния, создано задание ConcreteJob, а ссылка на него возвращена в параметре вывода Job. Любой другой код возврата указывает на ошибку.