Re[7]: Непонятный ключ HKEY_PERFORMANCE_DATA
От: Pavel Dvorkin Россия  
Дата: 08.05.14 04:40
Оценка:
Здравствуйте, NNN7, Вы писали:

NNN> if(LOWORD(wpar)==SELECT)

NNN> {
NNN> GetDlgItemText(hwnd,COMBO,(LPSTR)str,51);
NNN> if(lstrcmp((LPCSTR)str,"% Privileged Time") == 0)
NNN> { sprintf_s(buf, TEXT("%lf"), DisplayValue.doubleValue);
NNN> SendMessage(LB, LB_ADDSTRING, 1, ( LPARAM)buf);
NNN> }

NNN> if(lstrcmp((LPCSTR)str,"% User time") == 0)

NNN> {
NNN> sprintf_s(buf2, TEXT("%lf"), DisplayValue2.doubleValue);
NNN> SendMessage(LB, LB_ADDSTRING, 1, ( LPARAM)buf2);
NNN> }
NNN> }
NNN> break;

NNN> case WM_TIMER:

NNN> func(hwnd);
NNN> break;

NNN>Уже немного похоже на правду , хоть новые значения появляются , но смущает , что при выборе счётчика сначала заносятся 2 одинаковых значения ( а должно одно) , потом они меняются на другое и так далее (переключаются каждую секунду) и если выбрать какой-то другой счётчик , то результат 1-го счётчика стирается. А нужно- чтобы он сохранялся на своём месте и дальше продолжал меняться.


NNN>Что не так написал ?


Код выше на if(LOWORD(wpar)==SELECT) заносит что-то, а код в func тоже заносит. В итоге 2 раза.

Одно из двух :

Либо изменение должно делаться по нажатию Select. Тогда таймеровский код должен лишь изменять DisplayValue1-2, но не заносить. Изменеие произойдет только при нажатии Select
Либо таймеровский код как есть, но тогда Select не нужна. Изменения будут производиться автоматически

Либо что-то третье, но тогда продумай, что именно.

P.S. Код на WM_INITDIALOG фактически тот же, что и в func. Имеет смысл убрать дублирование. Просто вызови на WM_INITDIALOG эту func.
With best regards
Pavel Dvorkin
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.