Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

В каком модуле объявлена функция CallNtPowerInformation?

465
06 ноября 2013 года
QWERYTY
595 / / 25.03.2012
Я конечно могу её импортировать из powrprof.dll, но нужно будет вызвать ещё несколько функций из этой длл.
Справка не помогает, там копипаста с MSDN.

Если бы только импортом функций всё обошлось то фиг бы с ним, но ещё структуры придётся описывать в ручную.
8
07 ноября 2013 года
mfender
3.5K / / 15.06.2005
Ни в каком. Подключай библиотеку и зазывай через RTTI.
465
07 ноября 2013 года
QWERYTY
595 / / 25.03.2012
Да, похоже на то. Ладно, не проблема.
8
08 ноября 2013 года
mfender
3.5K / / 15.06.2005
Если мне что-то не изменяет, эта функция, - в смысле библиотека, - характерна для Win7. То есть для WinXP твоя программулина будет вообще не актуально.
465
08 ноября 2013 года
QWERYTY
595 / / 25.03.2012
Вот тут заверяют что всё будет норм..
Например IsPwrHibernateAllowed из той же длл уже проверена в ХР, и пашет как часы.

Я теперь смотрю первым делом прежде чем читать какая клёвая функция. Да ещё прохожусь прогой которая даёт подробную информацию из РЕ заголовков.
465
08 ноября 2013 года
QWERYTY
595 / / 25.03.2012
Справка меня ужасно разочаровала. Там она как будто под буилдер. Как и что делать в делфи вообще ни слова.
Я всегда не ставил справку, и у меня есть ощущение что я правильно делал.
В крайнем на эмбаркадеро залезть можно, хотя бывало крайне редко. В основном MSDN помогает, ну и наш любимый форум :)
8
08 ноября 2013 года
mfender
3.5K / / 15.06.2005
Справка последняя была хорошая только во времена Borland'а. Во времена Embarcadero они совсем распоясались, и гонят только продукты, в смысле IDE всех размеров, сортов и качеств.
326
08 ноября 2013 года
sadovoya
757 / / 19.11.2005
В Borland Delphi 2006 в справке по API тоже в основном копипаст MSDL. Т.е. азы си знать надо. Похоже поддержка Win API в Дельфи не супер. Учитывая, что и заголовочники не полные.
8
09 ноября 2013 года
mfender
3.5K / / 15.06.2005
А чья же ещё справка по API Windows должна быть, как не от Microsoft? Никто в Borland не обязывался велосипед изобретать и придумывать мануалы по их библиотекам.
326
09 ноября 2013 года
sadovoya
757 / / 19.11.2005
Универсальному языку программирования для Windows не мешало бы иметь полный порт заголовочников системных Windows библиотек и хелпа по ним в свой синтаксис. В Delphi это сделано лишь частично. Так было по крайней мере до версии 2006, сейчас как - не знаю.

Справедливости ради: неполнотой страдают и C/С++ средства. Например, в MinGW много недочетов в заголовочниках для Win API.

Последнее время все чаще использую "ручной" импорт ф-ций API из системных dll с обращением для справки в MSDN. Так надежней.
8
10 ноября 2013 года
mfender
3.5K / / 15.06.2005
я бы сказал что так правильнее. Не боги горшки отжигают. Там такие же программисты как я и ты. Поэтому можно посидеть и самому мордочку написать на чью-то библиотеку, которая будет тебе одному понятна, без написания подробной документации.
465
11 ноября 2013 года
QWERYTY
595 / / 25.03.2012
Цитата: mfender
А чья же ещё справка по API Windows должна быть, как не от Microsoft? Никто в Borland не обязывался велосипед изобретать и придумывать мануалы по их библиотекам.



Никто не обязывался, верно. Обязывался только денежки получать.
От них не требовалось ничекго сложного. Просто нужно было посидеть и поработать раскидать все функции по разным модулям, и в справке написать какая в каком.

Справка громоздская но бестолковая. В следующий раз ставить не буду, место на винте только жрёт да реестр засерает.

8
11 ноября 2013 года
mfender
3.5K / / 15.06.2005
В D7 толковая справка есть по API Win32, понятно что уже немного устаревшая, но всё ещё актуальная.
465
11 ноября 2013 года
QWERYTY
595 / / 25.03.2012
Цитата: mfender
... Не боги горшки отжигают.
....


И тут ключевое слово - ОТЖИГАЮТ

Со справкой они реально отожгли )))

7
11 ноября 2013 года
@pixo $oft
3.4K / / 20.09.2006
Если очень надобно, могу написать библиотеку-переходник на VC++, там-то эта функция есть в хедерах и либах. Жаль, что борландовские творения не умеют в этот тип библиотек.
326
11 ноября 2013 года
sadovoya
757 / / 19.11.2005
Попробуй так:

 
Код:
function CallNtPowerInformation(InformationLevel: Integer;
          lpInputBuffer: Pointer;
          nInputBufferSize: Cardinal;
          lpOutputBuffer: Pointer;
          nOutputBufferSize: Cardinal): Cardinal; stdcall;
external 'PowrProf.dll' name 'CallNtPowerInformation';
У меня заработало. Пробовал с первым параметром = 11 для буфера из структур:


 
Код:
type

PROCESSOR_POWER_INFORMATION = record
  Number,
  MaxMhz,
  CurrentMhz,
  MhzLimit,
  MaxIdleState,
  CurrentIdleState : Cardinal;
end;
Частоту CurrentMhz правильно определила. Но большего не смотрел.
326
12 ноября 2013 года
sadovoya
757 / / 19.11.2005
Вот продвинулся, взгляни на проект, может пригодится.
Прикрепленные файлы:
7 Кб
Загрузок: 566
465
12 ноября 2013 года
QWERYTY
595 / / 25.03.2012
Спасибо. Скачал, скомпилил. Частота определилась верно.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог